Cache Remember fresh interval
This commit is contained in:
parent
bf4cfdf7fd
commit
1780e3bce8
|
@ -44,7 +44,10 @@ class YearlyRememberAction
|
|||
Cache::remember(
|
||||
'prevention-' . $member->id,
|
||||
(int) now()->diffInSeconds(now()->addWeeks($settings->freshRememberInterval)),
|
||||
fn() => Mail::send($this->createMail($member, $preventions))
|
||||
function () use ($member, $preventions) {
|
||||
Mail::send($this->createMail($member, $preventions));
|
||||
return 0;
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -255,6 +255,18 @@ it('remembers members yearly', function ($date, $shouldSend) {
|
|||
[fn() => now()->subYears(5)->subDay(), false],
|
||||
]);
|
||||
|
||||
it('remembers yearly only once', function () {
|
||||
Mail::fake();
|
||||
createMember(['efz' => now()->subYears(5), 'ps_at' => now(), 'has_vk' => true]);
|
||||
|
||||
YearlyRememberAction::run();
|
||||
YearlyRememberAction::run();
|
||||
YearlyRememberAction::run();
|
||||
|
||||
Mail::assertSentCount(1);
|
||||
Mail::assertSent(YearlyMail::class, fn($mail) => $mail->preventions->first()->expires->isSameDay(now()));
|
||||
});
|
||||
|
||||
it('testItDoesntRememberParticipantThatHasNoMail', function () {
|
||||
Mail::fake();
|
||||
$form = createForm();
|
||||
|
|
Loading…
Reference in New Issue