@@ -33,20 +33,17 @@ protected function tearDown(): void
3333
3434 public function testItDeletesCasesThatExceedRetentionPeriod ()
3535 {
36- // Create a process with a 6 month retention period
37- // retention_updated_at is 6 months ago, so old cases cutoff is 12 months ago (6 months ago - 6 months)
38- $ retentionUpdatedAt = Carbon::now ()->subMonths (6 )->toIso8601String ();
36+ // Create a process with a 1 year retention period
37+ // retention_updated_at defaults to now, so cutoff is 12 months ago (now - 12 months)
3938 $ process = Process::factory ()->create ([
4039 'properties ' => [
4140 'retention_period ' => self ::RETENTION_PERIOD ,
42- 'retention_updated_at ' => $ retentionUpdatedAt ,
4341 ],
4442 ]);
4543
4644 $ process ->save ();
4745 $ process ->refresh ();
4846 $ this ->assertEquals (self ::RETENTION_PERIOD , $ process ->properties ['retention_period ' ]);
49- $ this ->assertEquals ($ retentionUpdatedAt , $ process ->properties ['retention_updated_at ' ]);
5047
5148 // Create a process request
5249 $ processRequest = ProcessRequest::factory ()->create ();
@@ -55,8 +52,8 @@ public function testItDeletesCasesThatExceedRetentionPeriod()
5552 $ processRequest ->refresh ();
5653 $ this ->assertEquals ($ process ->id , $ processRequest ->process_id );
5754
58- // Create a case number created 13 months ago (before retention_updated_at)
59- // Old cases cutoff = 6 months ago - 6 months = 12 months ago
55+ // Create a case number created 13 months ago
56+ // Cutoff = now - 12 months = 12 months ago
6057 // 13 months ago < 12 months ago, so it should be deleted
6158 $ oldCaseCreatedAt = Carbon::now ()->subMonths (13 )->toIso8601String ();
6259 $ caseOld = CaseNumber::factory ()->create ([
@@ -75,19 +72,16 @@ public function testItDeletesCasesThatExceedRetentionPeriod()
7572
7673 public function testItDoesNotDeleteCasesThatAreWithinRetentionPeriod ()
7774 {
78- // Create a process with a 6 month retention period
79- // retention_updated_at is 6 months ago, so old cases cutoff is 12 months ago (6 months ago - 6 months)
80- $ retentionUpdatedAt = Carbon::now ()->subMonths (6 )->toIso8601String ();
75+ // Create a process with a 1 year retention period
76+ // retention_updated_at defaults to now, so cutoff is 12 months ago (now - 12 months)
8177 $ process = Process::factory ()->create ([
8278 'properties ' => [
8379 'retention_period ' => self ::RETENTION_PERIOD ,
84- 'retention_updated_at ' => $ retentionUpdatedAt ,
8580 ],
8681 ]);
8782 $ process ->save ();
8883 $ process ->refresh ();
8984 $ this ->assertEquals (self ::RETENTION_PERIOD , $ process ->properties ['retention_period ' ]);
90- $ this ->assertEquals ($ retentionUpdatedAt , $ process ->properties ['retention_updated_at ' ]);
9185
9286 // Create a process request
9387 $ processRequest = ProcessRequest::factory ()->create ();
@@ -96,8 +90,9 @@ public function testItDoesNotDeleteCasesThatAreWithinRetentionPeriod()
9690 $ processRequest ->refresh ();
9791 $ this ->assertEquals ($ process ->id , $ processRequest ->process_id );
9892
99- // Create a case number created 5 months ago (before retention_updated_at)
100- // This case is NOT older than the old cases cutoff (12 months ago), so it should NOT be deleted
93+ // Create a case number created 5 months ago
94+ // Cutoff = now - 12 months = 12 months ago
95+ // 5 months ago is NOT < 12 months ago, so it should NOT be deleted
10196 $ caseCreatedAt = Carbon::now ()->subMonths (5 )->toIso8601String ();
10297 $ case = CaseNumber::factory ()->create ([
10398 'created_at ' => $ caseCreatedAt ,
@@ -115,17 +110,16 @@ public function testItDoesNotDeleteCasesThatAreWithinRetentionPeriod()
115110
116111 public function testItHandlesMultipleCasesInBatches ()
117112 {
118- // Create a process with a 6 month retention period
113+ // Create a process with a 1 year retention period
114+ // retention_updated_at defaults to now, so cutoff is 12 months ago (now - 12 months)
119115 $ process = Process::factory ()->create ([
120116 'properties ' => [
121117 'retention_period ' => self ::RETENTION_PERIOD ,
122- 'retention_updated_at ' => Carbon::now ()->subMonths (6 )->toIso8601String (),
123118 ],
124119 ]);
125120 $ process ->save ();
126121 $ process ->refresh ();
127122 $ this ->assertEquals (self ::RETENTION_PERIOD , $ process ->properties ['retention_period ' ]);
128- $ this ->assertEquals (Carbon::now ()->subMonths (6 )->toIso8601String (), $ process ->properties ['retention_updated_at ' ]);
129123
130124 // Create a process request
131125 $ processRequest = ProcessRequest::factory ()->create ();
@@ -135,8 +129,8 @@ public function testItHandlesMultipleCasesInBatches()
135129 $ this ->assertEquals ($ process ->id , $ processRequest ->process_id );
136130
137131 // Create 1200 cases (to test chunking/batch deletion)
138- // These cases are created 13 months ago (before retention_updated_at)
139- // Old cases cutoff = 6 months ago - 6 months = 12 months ago
132+ // These cases are created 13 months ago
133+ // Cutoff = now - 12 months = 12 months ago
140134 // 13 months ago < 12 months ago, so these should be deleted
141135 $ cases = CaseNumber::factory ()->count (1200 )->create ([
142136 'process_request_id ' => $ processRequest ->id ,
@@ -150,7 +144,7 @@ public function testItHandlesMultipleCasesInBatches()
150144
151145 // Assert all old cases are deleted
152146 // There should be 1 case left (the auto-created case from ProcessRequestObserver)
153- // because it was created after retention_updated_at and is within the retention period
147+ // because it was created recently and is within the retention period
154148 $ this ->assertDatabaseCount ('case_numbers ' , 1 );
155149 }
156150
0 commit comments