create(); test()->actingAs($user); $response = test()->post(route('settings.archive.store'), [ 'entities' => [ ['table' => 'documents', 'conditions' => ['older_than_days' => 30]], ], 'strategy' => 'immediate', 'soft' => true, 'enabled' => true, ]); $response->assertRedirect(); expect(ArchiveSetting::count())->toBe(1); }); it('updates an archive setting', function () { $user = User::factory()->create(); test()->actingAs($user); $setting = ArchiveSetting::factory()->create(); $response = test()->put(route('settings.archive.update', $setting->id), [ 'entities' => $setting->entities, 'strategy' => 'queued', 'soft' => false, 'enabled' => false, ]); $response->assertRedirect(); $setting->refresh(); expect($setting->strategy)->toBe('queued') ->and($setting->soft)->toBeFalse() ->and($setting->enabled)->toBeFalse(); }); it('deletes an archive setting', function () { $user = User::factory()->create(); test()->actingAs($user); $setting = ArchiveSetting::factory()->create(); $response = test()->delete(route('settings.archive.destroy', $setting->id)); $response->assertRedirect(); expect(ArchiveSetting::withTrashed()->count())->toBe(1) // soft deleted ->and(ArchiveSetting::count())->toBe(0); });