| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace Tests\Commands; | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-18 00:56:55 +08:00
										 |  |  | use BookStack\Activity\ActivityType; | 
					
						
							| 
									
										
										
										
											2021-12-12 01:29:33 +08:00
										 |  |  | use BookStack\Facades\Activity; | 
					
						
							|  |  |  | use Illuminate\Support\Facades\Artisan; | 
					
						
							| 
									
										
										
										
											2021-03-21 00:25:02 +08:00
										 |  |  | use Illuminate\Support\Facades\DB; | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  | use Tests\TestCase; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ClearActivityCommandTest extends TestCase | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     public function test_clear_activity_command() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         $this->asEditor(); | 
					
						
							| 
									
										
										
										
											2022-09-30 00:31:38 +08:00
										 |  |  |         $page = $this->entities->page(); | 
					
						
							| 
									
										
										
										
											2021-12-12 01:29:33 +08:00
										 |  |  |         Activity::add(ActivityType::PAGE_UPDATE, $page); | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $this->assertDatabaseHas('activities', [ | 
					
						
							| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  |             'type'      => 'page_update', | 
					
						
							| 
									
										
										
										
											2024-05-05 22:44:58 +08:00
										 |  |  |             'loggable_id' => $page->id, | 
					
						
							| 
									
										
										
										
											2023-01-21 19:08:34 +08:00
										 |  |  |             'user_id'   => $this->users->editor()->id, | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  |         ]); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-03-21 00:25:02 +08:00
										 |  |  |         DB::rollBack(); | 
					
						
							| 
									
										
										
										
											2021-12-12 01:29:33 +08:00
										 |  |  |         $exitCode = Artisan::call('bookstack:clear-activity'); | 
					
						
							| 
									
										
										
										
											2021-03-21 00:25:02 +08:00
										 |  |  |         DB::beginTransaction(); | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  |         $this->assertTrue($exitCode === 0, 'Command executed successfully'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $this->assertDatabaseMissing('activities', [ | 
					
						
							| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  |             'type' => 'page_update', | 
					
						
							| 
									
										
										
										
											2021-02-12 06:42:36 +08:00
										 |  |  |         ]); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  | } |