feat: enrich gmail correspondence metadata
This commit is contained in:
@@ -258,7 +258,9 @@ public sealed class GmailControllerTests
|
||||
DateTimeOffset.UtcNow.AddDays(-1),
|
||||
"Snippet",
|
||||
"Body text",
|
||||
null));
|
||||
null,
|
||||
new[] { "INBOX", "IMPORTANT" },
|
||||
new[] { new GmailMessageAttachment("cv.pdf", "application/pdf", 2048, "att-1", false) }));
|
||||
|
||||
var controller = CreateController(db, gmail.Object, "user-1");
|
||||
|
||||
@@ -272,6 +274,10 @@ public sealed class GmailControllerTests
|
||||
Assert.Equal("thread-1", firstPayload.Message!.ExternalThreadId);
|
||||
Assert.Equal("Maria Recruiter <maria@acme.test>", firstPayload.Message.ExternalFrom);
|
||||
Assert.Equal("user@example.test", firstPayload.Message.ExternalTo);
|
||||
Assert.Equal("inbound", firstPayload.Message.Direction);
|
||||
Assert.Contains("IMPORTANT", firstPayload.Message.ExternalLabels);
|
||||
Assert.Single(firstPayload.Message.AttachmentMetadata);
|
||||
Assert.Equal("cv.pdf", firstPayload.Message.AttachmentMetadata[0].FileName);
|
||||
|
||||
var second = await controller.Import(new GmailController.ImportGmailMessageRequest(job.Id, "msg-1"), CancellationToken.None);
|
||||
var secondOk = Assert.IsType<OkObjectResult>(second.Result);
|
||||
@@ -315,7 +321,9 @@ public sealed class GmailControllerTests
|
||||
DateTimeOffset.UtcNow.AddDays(-1),
|
||||
"Snippet 1",
|
||||
"Body text 1",
|
||||
null));
|
||||
null,
|
||||
Array.Empty<string>(),
|
||||
Array.Empty<GmailMessageAttachment>()));
|
||||
gmail.Setup(service => service.GetMessageAsync("user-1", "msg-2", It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(new GmailMessageDetail(
|
||||
"msg-2",
|
||||
@@ -326,7 +334,9 @@ public sealed class GmailControllerTests
|
||||
DateTimeOffset.UtcNow,
|
||||
"Snippet 2",
|
||||
"Body text 2",
|
||||
null));
|
||||
null,
|
||||
Array.Empty<string>(),
|
||||
Array.Empty<GmailMessageAttachment>()));
|
||||
|
||||
var controller = CreateController(db, gmail.Object, "user-1");
|
||||
var request = new GmailController.ImportGmailThreadRequest(job.Id, "thread-1", new[] { "msg-1", "msg-2" });
|
||||
@@ -398,7 +408,9 @@ public sealed class GmailControllerTests
|
||||
DateTimeOffset.UtcNow,
|
||||
"New reply",
|
||||
"Reply body",
|
||||
null));
|
||||
null,
|
||||
Array.Empty<string>(),
|
||||
Array.Empty<GmailMessageAttachment>()));
|
||||
|
||||
var controller = CreateController(db, gmail.Object, "user-1");
|
||||
var result = await controller.RefreshLinkedThreads(new GmailController.RefreshLinkedThreadsRequest(job.Id), CancellationToken.None);
|
||||
|
||||
Reference in New Issue
Block a user