fix(i18n): localize application workflows
Use stable checklist and interview keys for system copy while preserving user-authored content. Localize creation-tab errors, language selectors, match bands, dates, and selected-CV context.
This commit is contained in:
@@ -420,4 +420,27 @@ public sealed class ApplicationIntelligenceTests
|
||||
Assert.Contains("C#", match.MatchedSkills);
|
||||
Assert.DoesNotContain(match.MissingSkills, value => value.Equals("utvikler", StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Match_reports_language_mismatch_when_no_translation_is_available()
|
||||
{
|
||||
var (db, intelligence, _) = New("user-1");
|
||||
await using var _d = db;
|
||||
var job = await SeedJobAsync(db, "user-1", j =>
|
||||
{
|
||||
j.Description = "Vi søker en utvikler som kan bygge robuste systemer og gode tjenester.";
|
||||
j.DescriptionLanguage = null; // Exercise detector fallback for manually created jobs.
|
||||
j.TranslatedDescription = null;
|
||||
});
|
||||
await SeedProfileAsync(db, "user-1");
|
||||
await AttachCvAsync(db, "user-1", job.Id, new CvVariantSettings { Language = "en" });
|
||||
|
||||
var match = await intelligence.MatchAsync("user-1", job.Id, default);
|
||||
|
||||
Assert.NotNull(match);
|
||||
Assert.Equal("nb", match!.JobLanguage);
|
||||
Assert.Equal("en", match.CvLanguage);
|
||||
Assert.True(match.LanguageMismatch);
|
||||
Assert.False(match.UsedTranslatedJobDescription);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user