теперь 7 дней
This commit is contained in:
@@ -32,8 +32,14 @@ public sealed class RemindersOptions
|
||||
/// </summary>
|
||||
public string RecruitingHirePageUrl { get; set; } = "recruiting-hire";
|
||||
|
||||
/// <summary>За сколько дней до конца испытательного срока присылать напоминание.</summary>
|
||||
public int ProbationReminderDaysBeforeEnd { get; set; } = 3;
|
||||
/// <summary>
|
||||
/// За сколько дней до конца испытательного срока присылать напоминание — неделя,
|
||||
/// чтобы у руководителя было время подготовить решение по итогам срока.
|
||||
///
|
||||
/// Дни КАЛЕНДАРНЫЕ, не рабочие: напоминание строится ровно в тот день, когда до
|
||||
/// конца срока остаётся столько дней, и попади он на выходной — уйдёт в выходной.
|
||||
/// </summary>
|
||||
public int ProbationReminderDaysBeforeEnd { get; set; } = 7;
|
||||
|
||||
/// <summary>
|
||||
/// Куда ведёт ссылка в напоминании об окончании испытательного срока — на
|
||||
|
||||
+14
-2
@@ -36,6 +36,11 @@ public sealed class ReminderServiceTests : IClassFixture<PostgresDatabaseFixture
|
||||
// с ожидаемой случайно.
|
||||
private const string ProbationReminderUrl = "https://portal.test/новая-заявка";
|
||||
|
||||
// Порог фиксируем в тестах СВОИМ значением, не полагаясь на дефолт из
|
||||
// RemindersOptions: изменение продового порога (3 → 7 дней и далее) не должно
|
||||
// ломать тесты, которые проверяют вовсе не его.
|
||||
private const int ProbationDaysBeforeEnd = 3;
|
||||
|
||||
private static readonly DateTimeOffset Now = new(2026, 8, 12, 12, 0, 0, TimeSpan.Zero);
|
||||
|
||||
// GetOverdueAsync/GetProbationEndingAsync по-прежнему берут now параметром — их
|
||||
@@ -335,7 +340,7 @@ public sealed class ReminderServiceTests : IClassFixture<PostgresDatabaseFixture
|
||||
|
||||
private ReminderService BuildProbationService(
|
||||
string pageUrl, string listUrl, IReadOnlyList<object> rows, Mock<ITnsuPortalClient> portalClient,
|
||||
int daysBeforeEnd = 3)
|
||||
int daysBeforeEnd = ProbationDaysBeforeEnd)
|
||||
{
|
||||
const string hireDataListTitle = "Прием на работу тест — данные";
|
||||
|
||||
@@ -595,7 +600,14 @@ public sealed class ReminderServiceTests : IClassFixture<PostgresDatabaseFixture
|
||||
|
||||
var service = new ReminderService(
|
||||
db, sharePoint.Object, partitionRegistry, portalClient.Object, Clock,
|
||||
Options.Create(new RemindersOptions { RecruitingHirePageUrl = pageUrl, ProbationReminderUrl = ProbationReminderUrl }),
|
||||
// Порог задан явно (как и в BuildProbationService): тест про партиции, а
|
||||
// не про то, сколько дней до конца срока настроено в проде.
|
||||
Options.Create(new RemindersOptions
|
||||
{
|
||||
RecruitingHirePageUrl = pageUrl,
|
||||
ProbationReminderUrl = ProbationReminderUrl,
|
||||
ProbationReminderDaysBeforeEnd = ProbationDaysBeforeEnd
|
||||
}),
|
||||
NullLogger<ReminderService>.Instance);
|
||||
|
||||
var result = await service.GetProbationEndingAsync(Now, CancellationToken.None);
|
||||
|
||||
Reference in New Issue
Block a user