| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace Tests\Permissions; | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-18 00:56:55 +08:00
										 |  |  | use BookStack\Users\Models\User; | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  | use Tests\TestCase; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class EntityOwnerChangeTest extends TestCase | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     public function test_changing_page_owner() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-09-30 00:31:38 +08:00
										 |  |  |         $page = $this->entities->page(); | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  |         $user = User::query()->where('id', '!=', $page->owned_by)->first(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $this->asAdmin()->put($page->getUrl('permissions'), ['owned_by' => $user->id]); | 
					
						
							|  |  |  |         $this->assertDatabaseHas('pages', ['owned_by' => $user->id, 'id' => $page->id]); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     public function test_changing_chapter_owner() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-09-30 00:31:38 +08:00
										 |  |  |         $chapter = $this->entities->chapter(); | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  |         $user = User::query()->where('id', '!=', $chapter->owned_by)->first(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $this->asAdmin()->put($chapter->getUrl('permissions'), ['owned_by' => $user->id]); | 
					
						
							|  |  |  |         $this->assertDatabaseHas('chapters', ['owned_by' => $user->id, 'id' => $chapter->id]); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     public function test_changing_book_owner() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-09-30 00:31:38 +08:00
										 |  |  |         $book = $this->entities->book(); | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  |         $user = User::query()->where('id', '!=', $book->owned_by)->first(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $this->asAdmin()->put($book->getUrl('permissions'), ['owned_by' => $user->id]); | 
					
						
							|  |  |  |         $this->assertDatabaseHas('books', ['owned_by' => $user->id, 'id' => $book->id]); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     public function test_changing_shelf_owner() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-09-30 00:31:38 +08:00
										 |  |  |         $shelf = $this->entities->shelf(); | 
					
						
							| 
									
										
										
										
											2021-01-02 07:58:53 +08:00
										 |  |  |         $user = User::query()->where('id', '!=', $shelf->owned_by)->first(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $this->asAdmin()->put($shelf->getUrl('permissions'), ['owned_by' => $user->id]); | 
					
						
							|  |  |  |         $this->assertDatabaseHas('bookshelves', ['owned_by' => $user->id, 'id' => $shelf->id]); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  | } |