Add CV extraction review surfaces
This commit is contained in:
@@ -81,6 +81,7 @@ public sealed class ProfileCvControllerTests
|
||||
Assert.IsType<OkObjectResult>(result);
|
||||
var artifact = await db.CvUploadArtifacts.SingleAsync();
|
||||
var run = await db.CvExtractionRuns.SingleAsync();
|
||||
var parsed = StructuredCvProfileJson.Deserialize(user.ProfileCvStructureJson);
|
||||
Assert.Equal("user-1", artifact.OwnerUserId);
|
||||
Assert.Equal("resume.md", artifact.OriginalFileName);
|
||||
Assert.True(System.IO.File.Exists(artifact.StoragePath));
|
||||
@@ -90,6 +91,42 @@ public sealed class ProfileCvControllerTests
|
||||
Assert.Equal(run.Id, user.CurrentCvExtractionRunId);
|
||||
Assert.Equal(artifact.Id, user.CurrentCvUploadArtifactId);
|
||||
Assert.Equal(1, user.CurrentCvProfileVersion);
|
||||
Assert.Equal(run.Id, parsed.Metadata.AppliedExtractionRunId);
|
||||
Assert.True(parsed.Metadata.ProfileVersion >= 1);
|
||||
Assert.Contains(parsed.Metadata.Fields.Keys, key => key == "contact.fullName" || key == "summary");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetRuns_returns_latest_extraction_runs()
|
||||
{
|
||||
var user = new ApplicationUser { Id = "user-1" };
|
||||
var userManager = CreateUserManager();
|
||||
userManager.Setup(x => x.GetUserAsync(It.IsAny<ClaimsPrincipal>())).ReturnsAsync(user);
|
||||
var aiService = new Mock<ISummarizerService>();
|
||||
|
||||
await using var db = CreateDb();
|
||||
db.CvExtractionRuns.Add(new CvExtractionRun
|
||||
{
|
||||
OwnerUserId = "user-1",
|
||||
Trigger = "upload",
|
||||
ParserVersion = "m005-s01",
|
||||
NormalizerVersion = "m005-s01",
|
||||
LlmPromptVersion = "m005-s01",
|
||||
Status = "applied",
|
||||
StartedAtUtc = DateTimeOffset.UtcNow,
|
||||
AppliedAtUtc = DateTimeOffset.UtcNow,
|
||||
});
|
||||
await db.SaveChangesAsync();
|
||||
|
||||
var paths = CreatePaths();
|
||||
var controller = CreateController(userManager.Object, aiService.Object, db, paths);
|
||||
var result = await controller.GetRuns();
|
||||
|
||||
var ok = Assert.IsType<OkObjectResult>(result.Result);
|
||||
var runs = Assert.IsAssignableFrom<IEnumerable<ProfileCvController.CvExtractionRunListItem>>(ok.Value);
|
||||
var single = Assert.Single(runs);
|
||||
Assert.Equal("upload", single.Trigger);
|
||||
Assert.Equal("applied", single.Status);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
||||
Reference in New Issue
Block a user