public function testDestroy() { $project = Factory::create('Project'); $this->action('DELETE', 'Admin\\ProjectsController@destroy', $project->slug); $this->assertRedirectedToRoute('admin.projects.index'); $this->assertEquals(0, Project::count()); }
/** * @param $teamsAmount * @param $matcheAmount * * @dataProvider tournamentTeamsProvider */ public function testSuccessLeagueDrawWithDifferrentTeamsAmount($teamsAmount, $matchesAmount) { /** * @var $tournament Tournament */ $tournament = Factory::create('App\\Models\\Tournament'); /** * @var $tournament Tournament */ $league = Factory::create('App\\Models\\League'); Factory::times($teamsAmount)->create('App\\Models\\Team', ['leagueId' => $league->id])->each(function ($team, $key) use($tournament) { $tournament->tournamentTeams()->create(['teamId' => $team->id, 'tournamentId' => $tournament->id]); }); $tournament->status = Tournament::STATUS_STARTED; $tournament->save(); $this->assertTrue($tournament instanceof Tournament); // verify total matches amount $this->assertEquals($matchesAmount, $tournament->matches()->getResults()->count()); /** * @var $matches Collection * @var $team TournamentTeam */ $matches = Match::where(['tournamentId' => $tournament->id])->get(); foreach ($tournament->tournamentTeams()->getResults() as $team) { // verify matches per team $this->assertEquals(($teamsAmount - 1) * 2, $matches->filter(function ($match) use($team) { return $match->homeTournamentTeamId == $team->id || $match->awayTournamentTeamId == $team->id; })->count()); } }
public function testUserRelationshipReturnsModel() { $meta = Factory::create('PostMeta', ['meta_key' => 'pal_user_id', 'meta_value' => 1]); Factory::create('User', ['id' => 1]); $user = $meta->user; assertThat($user, is(anInstanceof('User'))); }
public function testSendingAmessageToAnotherUser() { $currentUser = Factory::create('App\\User'); $otherUser = Factory::create('App\\User'); Auth::login($currentUser); $this->visit('/messages/compose/' . $otherUser->id)->submitForm('Submit', ['body' => 'This is the new message to you.'])->verifyInDatabase('messages', ['body' => 'This is the new message to you.'])->verifyInDatabase('message_responses', ['body' => 'This is the new message to you.']); }
public function test_it_saves_a_todo_for_a_given_todolist() { $todolist = Factory::create(App\Umbrella\Todo\TodoList::class, ['user_id' => 1]); $todoRepository = $this->app->make(App\Umbrella\Todo\Repository\TodoRepositoryInterface::class); $todo = $todoRepository->create('Finish up homework', $todolist); $this->seeInDatabase('todo', ['name' => 'Finish up homework', 'todo_list_id' => $todolist->id]); }
public function test_it_updates_a_todo() { $todo = Factory::create(App\Umbrella\Todo\Todo::class); $todoRepository = $this->app->make(App\Umbrella\Todo\Repository\TodoRepositoryInterface::class); $todoRepository->update($todo, ['finished' => true]); $this->seeInDatabase('todo', ['id' => $todo->id, 'finished' => 1]); }
/** @test */ public function it_deletes_an_album_review_with_a_picture() { $album = TestDummy::create('WITR\\AlbumReview', ['img_name' => '01234-review.jpg']); copy(__DIR__ . '/files/review.jpg', public_path() . '/img/albums/01234-review.jpg'); $this->beEditor(); $this->visit('/admin/reviews/' . $album->id)->onPage('/admin/reviews/' . $album->id)->submitForm('Delete Review')->andSee('Album Review Deleted!')->onPage('/admin/reviews')->notSeeInDatabase('album_reviews', ['id' => $album->id])->cannotSeeFile(public_path() . '/img/albums/' . $album->img_name); }
/** * @param $request * @param $response * @param $attributesToCheck * * @dataProvider matchUpdatesWithRequests */ public function testUpdateMatchScore($request, $response, $attributesToCheck) { $member = Factory::create('App\\Models\\Member'); Auth::login($member); /** * @var $tournament Tournament * @var $league League * @var $homeTeam Team * @var $awayTeam Team * @var $homeTournamentTeam TournamentTeam * @var $awayTournamentTeam TournamentTeam * @var $match Match */ $tournament = Factory::create('App\\Models\\Tournament'); $league = Factory::create('App\\Models\\League'); $homeTeam = Factory::create('App\\Models\\Team', ['leagueId' => $league->id]); $awayTeam = Factory::create('App\\Models\\Team', ['leagueId' => $league->id]); $homeTournamentTeam = Factory::create('App\\Models\\TournamentTeam', ['teamId' => $homeTeam->id, 'tournamentId' => $tournament->id]); $awayTournamentTeam = Factory::create('App\\Models\\TournamentTeam', ['teamId' => $awayTeam->id, 'tournamentId' => $tournament->id]); $match = Factory::create('App\\Models\\Match', ['tournamentId' => $tournament->id, 'homeTournamentTeamId' => $homeTournamentTeam->id, 'awayTournamentTeamId' => $awayTournamentTeam->id]); $this->put('/api/v1/matches/' . $match->id, ['match' => $request], ['HTTP_X-Requested-With' => 'XMLHttpRequest', 'HTTP_CONTENT_TYPE' => 'application/json', 'HTTP_ACCEPT' => 'application/json']); $this->assertResponseStatus($response['status']); if (!empty($result)) { $updatedRow = Match::find($match->id); foreach ($result as $property => $value) { $this->assertEquals($value, $updatedRow->getAttribute($property)); } } }
/** * Tests if the repo removeAdministrator removes an * admin properly. */ public function testRepoRemoveAdminSuccessRemoval() { $admin = Factory::create('App\\Models\\Administrator'); $wasDeleted = $this->repository->removeAdministrator($admin->nickname); $this->assertTrue($wasDeleted); $this->assertNull(Administrator::find($admin->id)); }
/** * Tests if the remove function works correctly. */ public function testRepoRemovePlayerSuccessRemoval() { $player = Factory::create('App\\Models\\Player'); $success = $this->repository->removePlayer($player->nickname); $this->assertTrue($success); $this->assertNull(Player::find($player->id)); }
public function testDestroy() { $series = Factory::create('Series'); $this->action('DELETE', 'Admin\\SeriesController@destroy', $series->slug); $this->assertRedirectedToRoute('admin.series.index'); $this->assertEquals(0, Series::count()); }
public function testStoreWithIncorrectCredentials() { $user = Factory::create('User', ['email' => '*****@*****.**']); $this->action('POST', 'Admin\\SessionsController@store', ['email' => $user->email, 'password' => 'foo']); $this->assertRedirectedToRoute('admin.sessions.create'); $this->assertSessionHas('error', 'Your login credentials were invalid.'); }
public function testDestroy() { $user = Factory::create('User'); $this->action('DELETE', 'Admin\\UsersController@destroy', $user->id); $this->assertRedirectedToRoute('admin.users.index'); $this->assertEquals(0, User::count()); }
public function test_it_persists_a_todolist_for_a_given_user() { $user = \Laracasts\TestDummy\Factory::create(App\Umbrella\User\User::class); $todolistRepo = App::make('App\\Umbrella\\Todo\\Repository\\TodolistRepositoryInterface'); $todolist = $todolistRepo->create('Private', $user); $this->seeInDatabase('todolist', ['name' => 'Private']); }
public function testHandleReturnsTheNewlyCreatedFeed() { $currentUser = Factory::create('App\\User'); Auth::login($currentUser); $createFeedCommand = new CreateFeedCommand('This is the feed body', 'postername', 'http://image/sampleimage.jpg'); $response = $createFeedCommand->handle(); $this->assertInstanceOf('App\\Feed', $response); }
/** @test */ public function it_saves_a_status_for_a_user() { $status = TestDummy::create('Larabook\\Statuses\\Status', ['user_id' => null, 'body' => 'My Body 3']); $users = TestDummy::create('Larabook\\Users\\User'); $savedStatus = $this->repo->save($status, $users->id); $this->tester->seeRecord('statuses', ['body' => 'My Body 3']); $this->assertEquals($users->id, $savedStatus->user_id); }
public function testShow() { $project = Factory::create('Project', ['slug' => 'foo']); $this->action('GET', 'ProjectsController@show', 'foo'); $this->assertResponseOk(); $this->assertViewIs('projects.show'); $this->assertViewHas('project'); }
public function testGetIdsThatSentRequestToCurrentUser() { $user = Factory::create('App\\User'); $friendRequests = Factory::times(25)->create('App\\FriendRequest', ['user_id' => $user->id]); $repository = new EloquentFriendRequestRepository(); $results = $repository->getIdsThatSentRequestToCurrentUser($user->id); $this->assertEquals(25, count($results)); }
public function testUsersRelationshipReturnsModels() { $host = Factory::create('Host'); Factory::create('User', ['id' => 1, 'host_id' => 1]); Factory::create('User', ['id' => 2, 'host_id' => 1]); $users = $host->users; assertThat($host->users, is(traversableWithSize(2))); }
public function testHandleReturnsLogout() { $tempUser = Factory::create('App\\User'); Auth::login($tempUser); $logoutUserCommand = new LogoutUserCommand($tempUser->id); $response = $logoutUserCommand->handle(); $this->assertFalse($response); }
public function run() { TestDummy::create('App\\Repositories\\User', ['id' => 1, 'name' => 'Joshua Matikinye', 'email' => '*****@*****.**', 'password' => '$2y$10$oT76/dGj5PcPm1LxphH9Teq.l8KuO1Y2gdCif9LRuy4tDVuy5lqYW', 'remember_token' => '', 'is_admin' => false, 'username' => '']); TestDummy::create('App\\Repositories\\User', ['id' => 4, 'name' => 'Bradshaw Matikinye', 'email' => '*****@*****.**', 'password' => '$2y$10$6SK938GEbgA4B1lomNCJJOBhg2rLAxrITMZlXFodhX21Howr4xoDK', 'remember_token' => '', 'is_admin' => true, 'username' => '']); TestDummy::create('App\\Repositories\\User', ['id' => 11, 'name' => 'Bronson Dunbar', 'email' => '*****@*****.**', 'password' => '$2y$10$ZCP9iIEo3MwZFGWQ3d0aIOZOn7fjw1yPsZy9aY03SuHdrcRReACli', 'remember_token' => 'pWuh6tqXDAQvJZvO4wW7qNOeRNHsvqI0rjC3gFGUWhtFIgLtaGlwHgXwRYYX', 'is_admin' => false, 'username' => '']); TestDummy::create('App\\Repositories\\User', ['id' => 49, 'name' => 'Lindsay Matikinye', 'email' => '*****@*****.**', 'password' => '$2y$10$pUc7SB3.ccDr/wenG6nRSee6oO11r7eHyQG0M8g2THbPUeuD6G90O', 'remember_token' => '', 'is_admin' => false, 'username' => '']); TestDummy::create('App\\Repositories\\User', ['id' => 75, 'name' => 'Slick Rick', 'email' => '*****@*****.**', 'password' => '$2y$10$beYAz8WKGH2leJeqwa64geKl16kkpMbP2ZNmKbf0rSaeTC80So03W', 'remember_token' => null, 'is_admin' => false, 'username' => '']); }
public function testHandleReturnsTrueOnsuccesfulLogin() { $currentUser = Factory::create('App\\User'); $loginUserCommand = new LoginUserCommand($currentUser->email, $currentUser->password); $loginUserCommand->handle(); // $this->assertTrue($response); // $this->assertTrue($response); }
public function testSuccesfulPostFeed() { $currentUser = Factory::create('App\\User'); Auth::login($currentUser); $this->visit('feeds')->submitForm('Publish', ['body' => 'New post']); $feedCount = $currentUser->feeds()->count(); $this->assertEquals(1, $feedCount); }
public function testAddNewFriendRequest() { $currentUser = Factory::create('App\\User'); $otherUser = Factory::create('App\\User'); Auth::login($currentUser); $this->visit('users')->click('Add friend'); $this->assertResponseOk(); }
public function testGetPaginatedReturnsACollectionSuccesfully() { $currentUser = Factory::create('App\\User'); $users = Factory::times(20)->create('App\\User'); Auth::login($currentUser); $userRepository = new EloquentUserRepository(); $this->assertEquals(10, count($userRepository->getPaginated())); }
public function testGetPublishedByUserAndFriendsAjaxReturnArrayWithResults() { $user = Factory::create('App\\User'); $feeds = Factory::times(20)->create('App\\Feed', ['user_id' => $user->id]); $repository = new EloquentFeedRepository(); $feedCount = $repository->getPublishedByUserAndFriends($user); $this->assertEquals(10, count($feedCount)); }
public function run() { DB::table('user')->delete(); TestDummy::create('normal_user'); TestDummy::create('editor_user'); TestDummy::create('admin_user'); TestDummy::times(20)->create('WITR\\User'); }
public function testBothUserObjectsExistInClass() { $requestedUser = Factory::create('App\\User'); $requesterUser = Factory::create('App\\User'); $event = new FriendRequestWasSent($requestedUser, $requesterUser); $this->assertEquals($requesterUser->email, $event->requesterUser->email); $this->assertEquals($requestedUser->email, $event->requestedUser->email); }
public function testFindByIdWithResponsesReturnsCollection() { $messageResponse = Factory::create('App\\MessageResponse'); $message = Message::first(); $messageRepository = new EloquentMessageRepository(); $response = $messageRepository->findByIdWithMessageResponses($message->id); $this->assertInstanceOf('App\\Message', $response); }
public function run() { User::truncate(); $faker = Faker::create(); User::create(['email' => '*****@*****.**', 'password' => Hash::make('password'), 'first_name' => 'Matt', 'last_name' => 'Stauffer']); foreach (range(1, 10) as $i) { Factory::create('user', ['email' => $faker->email, 'first_name' => $faker->firstName, 'last_name' => $faker->lastName]); } }