public function testLiking() { $idUser1 = 1; $idUser2 = 2; $idUser3 = 3; $idUser4 = 4; $photoidUser1 = 1; $photoidUser2 = 4; $photoidUser3 = 8; $photoidUser4 = 11; // User should be able to like photos they don't own list($result_code, $result) = User::likePhoto($idUser1, $photoidUser2); $this->assertEquals(200, $result_code); $this->assertTrue($result['success'] == true); $this->assertTrue($result['likes'] == true); $this->tester->seeInDatabase('UserPhotoLikes', ['userid' => $idUser1, 'photoid' => $photoidUser2]); // User should be able to unlike photos they don't own list($result_code, $result) = User::likePhoto($idUser1, $photoidUser2); $this->assertEquals(200, $result_code); $this->assertTrue($result['success'] == true); $this->assertTrue($result['likes'] == false); $this->tester->dontSeeInDatabase('UserPhotoLikes', ['userid' => $idUser1, 'photoid' => $photoidUser2]); // User should not be be able to like photos they own list($result_code, $result) = User::likePhoto($idUser1, $photoidUser1); $this->assertEquals(403, $result_code); $this->assertTrue($result['success'] == false); $this->tester->dontSeeInDatabase('UserPhotoLikes', ['userid' => $idUser1, 'photoid' => $photoidUser1]); // User should not be be able to like photos that don't exist list($result_code, $result) = User::likePhoto($idUser1, 0); $this->assertEquals(404, $result_code); $this->assertTrue($result['success'] == false); $this->tester->dontSeeInDatabase('UserPhotoLikes', ['userid' => $idUser1, 'photoid' => 0]); }
$list = new UserList(); $filename = $tmp; $result = $list->addPhoto($userid, $filename, $listitem); } else { http_response_code(400); } }); }); // Note photo, not photos with('/api/photo', function () { // Get the global photo list respond('POST', '/[:photoid]/like', function ($request, $response) { list($sessionuserid, $skey) = validateUserSession($request); if ($sessionuserid) { $photoid = $request->photoid; list($result_code, $result) = User::likePhoto($sessionuserid, $photoid); http_response_code($result_code); } else { $result = ['success' => false]; http_response_code(401); } echo json_encode($result, JSON_PRETTY_PRINT); }); }); with('/api/block', function () { respond('POST', '/photo/[:photoid]', function ($request, $response) { $result_code = 200; try { $skey = $request->param('skey'); $userid = $request->param('userid'); $photoid = $request->photoid;