Пример #1
0
 public function testRemoveATrackFromThePlaylist()
 {
     $playlist = PlaylistBuilder::get()->withName('My playlist')->build();
     $playlist->addTrack(Track::create('id', 'My track'));
     $playlist->removeTrack(Track::create('id', 'My track'));
     $this->assertCount(0, $playlist->getTracks());
 }
 public function testPlaylistIsRemovedFromRepository()
 {
     $playlists = array(PlaylistBuilder::get()->build(), PlaylistBuilder::get()->build());
     $playlist_repository = $this->getMock('Naxhh\\PlayCool\\Domain\\Contract\\PlaylistRepository');
     $playlist_repository->expects($this->any())->method('getAll')->will($this->returnValue($playlists));
     $command = new GetAllPlaylistsCommand();
     $use_case = new GetAllPlaylistsUseCase($playlist_repository);
     $this->assertCount(2, $use_case->handle($command));
 }
Пример #3
0
 public function testPlaylistIsRemovedFromRepository()
 {
     $playlist = PlaylistBuilder::get()->withId('Playlist id')->withName('Playlist name')->build();
     $playlist_repository = $this->getMock('Naxhh\\PlayCool\\Domain\\Contract\\PlaylistRepository');
     $playlist_repository->expects($this->any())->method('get')->will($this->returnValue($playlist));
     $command = new GetPlaylistCommand('Playlist id');
     $use_case = new GetPlaylistUseCase($playlist_repository);
     $playlist = $use_case->handle($command);
     $this->assertSame('Playlist name', $playlist->getName());
 }
 public function testPlaylistIsSavedInRepository()
 {
     $old_playlist = PlaylistBuilder::get()->withId('id')->build();
     $playlist_repository = $this->getMock('Naxhh\\PlayCool\\Domain\\Contract\\PlaylistRepository');
     $playlist_repository->expects($this->any())->method('get')->will($this->returnValue($old_playlist));
     $playlist_repository->expects($this->once())->method('add');
     $command = new UpdatePlaylistCommand('id', 'My new playlist name');
     $use_case = new UpdatePlaylistUseCase($playlist_repository, new TrackRepository(new \stdClass()));
     $playlist = $use_case->handle($command);
 }