Apply fixes from StyleCI (#695)

This commit is contained in:
Phan An 2017-12-10 01:23:37 +01:00 committed by GitHub
parent d2a535bcc1
commit 88d2d4fbe8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 423 additions and 427 deletions

View file

@ -7,43 +7,43 @@ use Tests\TestCase;
class FileTest extends TestCase
{
/** @test */
public function file_info_is_retrieved_correctly()
{
$file = new File(__DIR__ . '/../../songs/full.mp3');
$info = $file->getInfo();
/** @test */
public function file_info_is_retrieved_correctly()
{
$file = new File(__DIR__.'/../../songs/full.mp3');
$info = $file->getInfo();
$expectedData = [
'artist' => 'Koel',
'album' => 'Koel Testing Vol. 1',
'compilation' => false,
'title' => 'Amet',
'track' => 5,
'disc' => 3,
'lyrics' => "Foo\rbar",
'cover' => [
'data' => file_get_contents(__DIR__ . '/../../blobs/cover.png'),
'image_mime' => 'image/png',
'image_width' => 512,
'image_height' => 512,
'imagetype' => 'PNG',
'picturetype' => 'Other',
'description' => '',
'datalength' => 7627,
],
'path' => __DIR__ . '/../../songs/full.mp3',
'mtime' => filemtime(__DIR__ . '/../../songs/full.mp3'),
'albumartist' => '',
];
$expectedData = [
'artist' => 'Koel',
'album' => 'Koel Testing Vol. 1',
'compilation' => false,
'title' => 'Amet',
'track' => 5,
'disc' => 3,
'lyrics' => "Foo\rbar",
'cover' => [
'data' => file_get_contents(__DIR__.'/../../blobs/cover.png'),
'image_mime' => 'image/png',
'image_width' => 512,
'image_height' => 512,
'imagetype' => 'PNG',
'picturetype' => 'Other',
'description' => '',
'datalength' => 7627,
],
'path' => __DIR__.'/../../songs/full.mp3',
'mtime' => filemtime(__DIR__.'/../../songs/full.mp3'),
'albumartist' => '',
];
$this->assertArraySubset($expectedData, $info);
$this->assertEquals(10.083, $info['length'], '', 0.001);
}
$this->assertArraySubset($expectedData, $info);
$this->assertEquals(10.083, $info['length'], '', 0.001);
}
/** @test */
public function song_without_a_title_tag_has_file_name_as_the_title()
{
$file = new File(__DIR__ . '/../../songs/blank.mp3');
$this->assertSame('blank', $file->getInfo()['title']);
}
/** @test */
public function song_without_a_title_tag_has_file_name_as_the_title()
{
$file = new File(__DIR__.'/../../songs/blank.mp3');
$this->assertSame('blank', $file->getInfo()['title']);
}
}

View file

@ -11,86 +11,89 @@ use Tests\TestCase;
class InteractionTest extends TestCase
{
/** @test */
public function it_increases_a_songs_play_count()
{
// Given an interaction
/** @var Interaction $interaction */
$interaction = factory(Interaction::class)->create();
/** @test */
public function it_increases_a_songs_play_count()
{
// Given an interaction
/** @var Interaction $interaction */
$interaction = factory(Interaction::class)->create();
// When I call the method to increases the song's play count
Interaction::increasePlayCount($interaction->song, $interaction->user);
// When I call the method to increases the song's play count
Interaction::increasePlayCount($interaction->song, $interaction->user);
// Then I see the play count is increased
/** @var Interaction $interaction */
$updatedInteraction = Interaction::find($interaction->id);
$this->assertEquals($interaction->play_count + 1, $updatedInteraction->play_count);
}
// Then I see the play count is increased
/** @var Interaction $interaction */
$updatedInteraction = Interaction::find($interaction->id);
$this->assertEquals($interaction->play_count + 1, $updatedInteraction->play_count);
}
/**
* @test
* @throws \Exception
*/
public function it_toggles_like_status()
{
$this->expectsEvents(SongLikeToggled::class);
/**
* @test
*
* @throws \Exception
*/
public function it_toggles_like_status()
{
$this->expectsEvents(SongLikeToggled::class);
// Given an interaction
$interaction = factory(Interaction::class)->create();
// Given an interaction
$interaction = factory(Interaction::class)->create();
// When I call the method to toggle the song's like status by user
Interaction::toggleLike($interaction->song, $interaction->user);
// When I call the method to toggle the song's like status by user
Interaction::toggleLike($interaction->song, $interaction->user);
// Then I see the interaction's like status is toggled
/** @var Interaction $interaction */
$updatedInteraction = Interaction::find($interaction->id);
$this->assertNotSame($interaction->liked, $updatedInteraction->liked);
}
// Then I see the interaction's like status is toggled
/** @var Interaction $interaction */
$updatedInteraction = Interaction::find($interaction->id);
$this->assertNotSame($interaction->liked, $updatedInteraction->liked);
}
/**
* @test
* @throws \Exception
*/
public function user_can_like_multiple_songs_at_once()
{
$this->expectsEvents(SongLikeToggled::class);
/**
* @test
*
* @throws \Exception
*/
public function user_can_like_multiple_songs_at_once()
{
$this->expectsEvents(SongLikeToggled::class);
// Given multiple song and a user
/** @var Collection $songs */
$songs = factory(Song::class, 2)->create();
$user = factory(User::class)->create();
// Given multiple song and a user
/** @var Collection $songs */
$songs = factory(Song::class, 2)->create();
$user = factory(User::class)->create();
// When I call the method to like songs in batch
Interaction::batchLike($songs->pluck('id')->all(), $user);
// When I call the method to like songs in batch
Interaction::batchLike($songs->pluck('id')->all(), $user);
// Then I see the songs are all liked
$songs->each(function (Song $song) use ($user) {
$this->assertTrue(Interaction::whereSongIdAndUserId($song->id, $user->id)->first()->liked);
});
}
// Then I see the songs are all liked
$songs->each(function (Song $song) use ($user) {
$this->assertTrue(Interaction::whereSongIdAndUserId($song->id, $user->id)->first()->liked);
});
}
/**
* @test
* @throws \Exception
*/
public function user_can_unlike_multiple_songs_at_once()
{
$this->expectsEvents(SongLikeToggled::class);
/**
* @test
*
* @throws \Exception
*/
public function user_can_unlike_multiple_songs_at_once()
{
$this->expectsEvents(SongLikeToggled::class);
// Given multiple interaction records
$user = factory(User::class)->create();
/** @var Collection $interactions */
$interactions = factory(Interaction::class, 3)->create([
'user_id' => $user->id,
'liked' => true,
]);
// Given multiple interaction records
$user = factory(User::class)->create();
/** @var Collection $interactions */
$interactions = factory(Interaction::class, 3)->create([
'user_id' => $user->id,
'liked' => true,
]);
// When I call the method to like songs in batch
Interaction::batchUnlike($interactions->pluck('song.id')->all(), $user);
// When I call the method to like songs in batch
Interaction::batchUnlike($interactions->pluck('song.id')->all(), $user);
// Then I see the songs are all liked
$interactions->each(function (Interaction $interaction) {
$this->assertFalse(Interaction::find($interaction->id)->liked);
});
}
// Then I see the songs are all liked
$interactions->each(function (Interaction $interaction) {
$this->assertFalse(Interaction::find($interaction->id)->liked);
});
}
}

View file

@ -7,68 +7,67 @@ use Tests\TestCase;
class SettingTest extends TestCase
{
/** @test */
public function it_sets_a_key_value_pair()
{
// Given a key-value pair
$key = 'foo';
$value = 'bar';
/** @test */
public function it_sets_a_key_value_pair()
{
// Given a key-value pair
$key = 'foo';
$value = 'bar';
// When I call the method to save the key-value
Setting::set($key, $value);
// When I call the method to save the key-value
Setting::set($key, $value);
// Then I see the key and serialized value in the database
$this->assertDatabaseHas('settings', [
'key' => 'foo',
'value' => serialize('bar'),
]);
}
// Then I see the key and serialized value in the database
$this->assertDatabaseHas('settings', [
'key' => 'foo',
'value' => serialize('bar'),
]);
}
/** @test */
public function it_supports_associative_arrays_when_saving_settings()
{
// Given an associative array of multiple settings
$settings = [
'foo' => 'bar',
'baz' => 'qux',
];
/** @test */
public function it_supports_associative_arrays_when_saving_settings()
{
// Given an associative array of multiple settings
$settings = [
'foo' => 'bar',
'baz' => 'qux',
];
// When I call the method to save the settings
Setting::set($settings);
// When I call the method to save the settings
Setting::set($settings);
// Then I see all settings the database
$this->assertDatabaseHas('settings', [
'key' => 'foo',
'value' => serialize('bar'),
])->assertDatabaseHas('settings', [
'key' => 'baz',
'value' => serialize('qux'),
]);
}
// Then I see all settings the database
$this->assertDatabaseHas('settings', [
'key' => 'foo',
'value' => serialize('bar'),
])->assertDatabaseHas('settings', [
'key' => 'baz',
'value' => serialize('qux'),
]);
}
/** @test */
public function existing_settings_should_be_updated()
{
Setting::set('foo', 'bar');
Setting::set('foo', 'baz');
/** @test */
public function existing_settings_should_be_updated()
{
Setting::set('foo', 'bar');
Setting::set('foo', 'baz');
$this->assertEquals('baz', Setting::get('foo'));
}
$this->assertEquals('baz', Setting::get('foo'));
}
/** @test */
public function it_gets_the_setting_value_in_an_unserialized_format()
{
// Given a setting in the database
factory(Setting::class)->create([
'key' => 'foo',
'value' => 'bar',
]);
/** @test */
public function it_gets_the_setting_value_in_an_unserialized_format()
{
// Given a setting in the database
factory(Setting::class)->create([
'key' => 'foo',
'value' => 'bar',
]);
// When I get the setting using the key
$value = Setting::get('foo');
// When I get the setting using the key
$value = Setting::get('foo');
// Then I receive the value in an unserialized format
$this->assertSame('bar', $value);
}
// Then I receive the value in an unserialized format
$this->assertSame('bar', $value);
}
}

View file

@ -8,49 +8,49 @@ use Tests\TestCase;
class SongZipArchiveTest extends TestCase
{
/** @test */
public function a_song_can_be_added_into_an_archive()
{
// Given a song
$song = factory(Song::class)->create([
'path' => realpath(__DIR__ . '/../../songs/full.mp3'),
]);
/** @test */
public function a_song_can_be_added_into_an_archive()
{
// Given a song
$song = factory(Song::class)->create([
'path' => realpath(__DIR__.'/../../songs/full.mp3'),
]);
// When I add the song into the archive
$songArchive = new SongZipArchive();
$songArchive->addSong($song);
// When I add the song into the archive
$songArchive = new SongZipArchive();
$songArchive->addSong($song);
// Then I see the archive contains one file
$archive = $songArchive->getArchive();
$this->assertEquals(1, $archive->numFiles);
// Then I see the archive contains one file
$archive = $songArchive->getArchive();
$this->assertEquals(1, $archive->numFiles);
// and the file is our song
$this->assertEquals('full.mp3', $archive->getNameIndex(0));
}
// and the file is our song
$this->assertEquals('full.mp3', $archive->getNameIndex(0));
}
/** @test */
public function multiple_songs_can_be_added_into_an_archive()
{
// Given some songs
$songs = collect([
factory(Song::class)->create([
'path' => realpath(__DIR__ . '/../../songs/full.mp3'),
]),
factory(Song::class)->create([
'path' => realpath(__DIR__ . '/../../songs/lorem.mp3'),
]),
]);
/** @test */
public function multiple_songs_can_be_added_into_an_archive()
{
// Given some songs
$songs = collect([
factory(Song::class)->create([
'path' => realpath(__DIR__.'/../../songs/full.mp3'),
]),
factory(Song::class)->create([
'path' => realpath(__DIR__.'/../../songs/lorem.mp3'),
]),
]);
// When I add the songs into the archive
$songArchive = new SongZipArchive();
$songArchive->addSongs($songs);
// When I add the songs into the archive
$songArchive = new SongZipArchive();
$songArchive->addSongs($songs);
// Then I see the archive contains two files
$archive = $songArchive->getArchive();
$this->assertEquals(2, $archive->numFiles);
// Then I see the archive contains two files
$archive = $songArchive->getArchive();
$this->assertEquals(2, $archive->numFiles);
// and the files are our songs
$this->assertEquals('full.mp3', $archive->getNameIndex(0));
$this->assertEquals('lorem.mp3', $archive->getNameIndex(1));
}
// and the files are our songs
$this->assertEquals('full.mp3', $archive->getNameIndex(0));
$this->assertEquals('lorem.mp3', $archive->getNameIndex(1));
}
}

View file

@ -7,66 +7,65 @@ use Tests\TestCase;
class UserTest extends TestCase
{
/** @test */
public function user_preferences_can_be_set()
{
// Given a user
/** @var User $user */
$user = factory(User::class)->create();
/** @test */
public function user_preferences_can_be_set()
{
// Given a user
/** @var User $user */
$user = factory(User::class)->create();
// When I see the user's preference
$user->setPreference('foo', 'bar');
// When I see the user's preference
$user->setPreference('foo', 'bar');
// Then I see the preference properly set
$this->assertArraySubset(['foo' => 'bar'], $user->preferences);
}
// Then I see the preference properly set
$this->assertArraySubset(['foo' => 'bar'], $user->preferences);
}
/** @test */
public function user_preferences_can_be_retrieved()
{
// Given a user with some preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['foo' => 'bar'],
]);
/** @test */
public function user_preferences_can_be_retrieved()
{
// Given a user with some preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['foo' => 'bar'],
]);
// When I get a preference by its key
$value = $user->getPreference('foo');
// When I get a preference by its key
$value = $user->getPreference('foo');
// Then I retrieve the preference value
$this->assertEquals('bar', $value);
}
// Then I retrieve the preference value
$this->assertEquals('bar', $value);
}
/** @test */
public function user_preferences_can_be_deleted()
{
// Given a user with some preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['foo' => 'bar'],
]);
/** @test */
public function user_preferences_can_be_deleted()
{
// Given a user with some preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['foo' => 'bar'],
]);
// When I delete the preference by its key
$user->deletePreference('foo');
// When I delete the preference by its key
$user->deletePreference('foo');
// Then I see the preference gets deleted
$this->assertArrayNotHasKey('foo', $user->preferences);
}
// Then I see the preference gets deleted
$this->assertArrayNotHasKey('foo', $user->preferences);
}
/** @test */
public function sensitive_preferences_are_hidden()
{
// Given a user with sensitive preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['lastfm_session_key' => 'foo'],
]);
/** @test */
public function sensitive_preferences_are_hidden()
{
// Given a user with sensitive preferences
/** @var User $user */
$user = factory(User::class)->create([
'preferences' => ['lastfm_session_key' => 'foo'],
]);
// When I try to access the sensitive preferences
$value = $user->preferences['lastfm_session_key'];
// When I try to access the sensitive preferences
$value = $user->preferences['lastfm_session_key'];
// Then the sensitive preferences are replaced with "hidden"
$this->assertEquals('hidden', $value);
}
// Then the sensitive preferences are replaced with "hidden"
$this->assertEquals('hidden', $value);
}
}

View file

@ -12,125 +12,127 @@ use Tests\TestCase;
class LastfmTest extends TestCase
{
protected function tearDown()
{
m::close();
parent::tearDown();
}
protected function tearDown()
{
m::close();
parent::tearDown();
}
/**
* @test
* @throws \Exception
*/
public function it_returns_artist_info_if_artist_is_found_on_lastfm()
{
// Given an artist that exists on Last.fm
/** @var Artist $artist */
$artist = factory(Artist::class)->create(['name' => 'foo']);
/**
* @test
*
* @throws \Exception
*/
public function it_returns_artist_info_if_artist_is_found_on_lastfm()
{
// Given an artist that exists on Last.fm
/** @var Artist $artist */
$artist = factory(Artist::class)->create(['name' => 'foo']);
// When I request the service for the artist's info
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/lastfm/artist.xml')),
]);
// When I request the service for the artist's info
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/lastfm/artist.xml')),
]);
$api = new Lastfm(null, null, $client);
$info = $api->getArtistInfo($artist->name);
$api = new Lastfm(null, null, $client);
$info = $api->getArtistInfo($artist->name);
// Then I see the info when the request is the successful
$this->assertEquals([
'url' => 'http://www.last.fm/music/Kamelot',
'image' => 'http://foo.bar/extralarge.jpg',
'bio' => [
'summary' => 'Quisque ut nisi.',
'full' => 'Quisque ut nisi. Vestibulum ullamcorper mauris at ligula.',
],
], $info);
// Then I see the info when the request is the successful
$this->assertEquals([
'url' => 'http://www.last.fm/music/Kamelot',
'image' => 'http://foo.bar/extralarge.jpg',
'bio' => [
'summary' => 'Quisque ut nisi.',
'full' => 'Quisque ut nisi. Vestibulum ullamcorper mauris at ligula.',
],
], $info);
// And the response XML is cached as well
$this->assertNotNull(cache('0aff3bc1259154f0e9db860026cda7a6'));
}
// And the response XML is cached as well
$this->assertNotNull(cache('0aff3bc1259154f0e9db860026cda7a6'));
}
/** @test */
public function it_returns_false_if_artist_info_is_not_found_on_lastfm()
{
// Given an artist that doesn't exist on Last.fm
/** @var Artist $artist */
$artist = factory(Artist::class)->create();
/** @test */
public function it_returns_false_if_artist_info_is_not_found_on_lastfm()
{
// Given an artist that doesn't exist on Last.fm
/** @var Artist $artist */
$artist = factory(Artist::class)->create();
// When I request the service for the artist info
$client = m::mock(Client::class, [
'get' => new Response(400, [], file_get_contents(__DIR__.'../../../blobs/lastfm/artist-notfound.xml')),
]);
// When I request the service for the artist info
$client = m::mock(Client::class, [
'get' => new Response(400, [], file_get_contents(__DIR__.'../../../blobs/lastfm/artist-notfound.xml')),
]);
$api = new Lastfm(null, null, $client);
$result = $api->getArtistInfo($artist->name);
$api = new Lastfm(null, null, $client);
$result = $api->getArtistInfo($artist->name);
// Then I receive boolean false
$this->assertFalse($result);
}
// Then I receive boolean false
$this->assertFalse($result);
}
/**
* @test
* @throws \Exception
*/
public function it_returns_album_info_if_album_is_found_on_lastfm()
{
// Given an album that exists on Last.fm
/** @var Album $album */
$album = factory(Album::class)->create([
'artist_id' => factory(Artist::class)->create(['name' => 'bar'])->id,
'name' => 'foo',
]);
/**
* @test
*
* @throws \Exception
*/
public function it_returns_album_info_if_album_is_found_on_lastfm()
{
// Given an album that exists on Last.fm
/** @var Album $album */
$album = factory(Album::class)->create([
'artist_id' => factory(Artist::class)->create(['name' => 'bar'])->id,
'name' => 'foo',
]);
// When I request the service for the album's info
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/lastfm/album.xml')),
]);
// When I request the service for the album's info
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/lastfm/album.xml')),
]);
$api = new Lastfm(null, null, $client);
$info = $api->getAlbumInfo($album->name, $album->artist->name);
$api = new Lastfm(null, null, $client);
$info = $api->getAlbumInfo($album->name, $album->artist->name);
// Then I get the album's info
$this->assertEquals([
'url' => 'http://www.last.fm/music/Kamelot/Epica',
'image' => 'http://foo.bar/extralarge.jpg',
'tracks' => [
[
'title' => 'Track 1',
'url' => 'http://foo/track1',
'length' => 100,
],
[
'title' => 'Track 2',
'url' => 'http://foo/track2',
'length' => 150,
],
],
'wiki' => [
'summary' => 'Quisque ut nisi.',
'full' => 'Quisque ut nisi. Vestibulum ullamcorper mauris at ligula.',
],
], $info);
// Then I get the album's info
$this->assertEquals([
'url' => 'http://www.last.fm/music/Kamelot/Epica',
'image' => 'http://foo.bar/extralarge.jpg',
'tracks' => [
[
'title' => 'Track 1',
'url' => 'http://foo/track1',
'length' => 100,
],
[
'title' => 'Track 2',
'url' => 'http://foo/track2',
'length' => 150,
],
],
'wiki' => [
'summary' => 'Quisque ut nisi.',
'full' => 'Quisque ut nisi. Vestibulum ullamcorper mauris at ligula.',
],
], $info);
// And the response is cached
$this->assertNotNull(cache('fca889d13b3222589d7d020669cc5a38'));
}
// And the response is cached
$this->assertNotNull(cache('fca889d13b3222589d7d020669cc5a38'));
}
/** @test */
public function it_returns_false_if_album_info_is_not_found_on_lastfm()
{
// Given there's an album which doesn't exist on Last.fm
$album = factory(Album::class)->create();
/** @test */
public function it_returns_false_if_album_info_is_not_found_on_lastfm()
{
// Given there's an album which doesn't exist on Last.fm
$album = factory(Album::class)->create();
// When I request the service for the album's info
$client = m::mock(Client::class, [
'get' => new Response(400, [], file_get_contents(__DIR__.'../../../blobs/lastfm/album-notfound.xml')),
]);
// When I request the service for the album's info
$client = m::mock(Client::class, [
'get' => new Response(400, [], file_get_contents(__DIR__.'../../../blobs/lastfm/album-notfound.xml')),
]);
$api = new Lastfm(null, null, $client);
$result = $api->getAlbumInfo($album->name, $album->artist->name);
$api = new Lastfm(null, null, $client);
$result = $api->getAlbumInfo($album->name, $album->artist->name);
// Then I receive a boolean false
$this->assertFalse($result);
}
// Then I receive a boolean false
$this->assertFalse($result);
}
}

View file

@ -11,57 +11,58 @@ use Tests\TestCase;
class MediaCacheTest extends TestCase
{
/** @test */
public function it_queries_fresh_data_from_database_or_use_the_cache()
{
// Given a database with artists, albums, and songs
factory(Song::class, 5)->create();
/** @test */
public function it_queries_fresh_data_from_database_or_use_the_cache()
{
// Given a database with artists, albums, and songs
factory(Song::class, 5)->create();
Cache::shouldReceive('rememberForever')->andReturn([
'albums' => Album::orderBy('name')->get(),
'artists' => Artist::orderBy('name')->get(),
'songs' => Song::all(),
]);
Cache::shouldReceive('rememberForever')->andReturn([
'albums' => Album::orderBy('name')->get(),
'artists' => Artist::orderBy('name')->get(),
'songs' => Song::all(),
]);
// When I get data from the MediaCache service
$data = MediaCache::get();
// When I get data from the MediaCache service
$data = MediaCache::get();
// Then a complete set of data is retrieved
$this->assertCount(6, $data['albums']); // 5 new albums and the default Unknown Album
$this->assertCount(7, $data['artists']); // 5 new artists and the default Various and Unknown Artist
$this->assertCount(5, $data['songs']);
}
// Then a complete set of data is retrieved
$this->assertCount(6, $data['albums']); // 5 new albums and the default Unknown Album
$this->assertCount(7, $data['artists']); // 5 new artists and the default Various and Unknown Artist
$this->assertCount(5, $data['songs']);
}
/** @test */
public function it_get_the_cached_data_if_found()
{
// Given there are media data cached
Cache::shouldReceive('rememberForever')->andReturn('dummy');
/** @test */
public function it_get_the_cached_data_if_found()
{
// Given there are media data cached
Cache::shouldReceive('rememberForever')->andReturn('dummy');
// And koel.cache_media configuration is TRUE
config(['koel.cache_media' => true]);
// And koel.cache_media configuration is TRUE
config(['koel.cache_media' => true]);
// When I get data from the MediaCache service
$data = MediaCache::get();
// When I get data from the MediaCache service
$data = MediaCache::get();
// Then I receive the cached version
$this->assertEquals('dummy', $data);
}
// Then I receive the cached version
$this->assertEquals('dummy', $data);
}
/**
* @test
* @throws \Exception
*/
public function it_does_not_cache_queried_data_if_cache_media_is_configured_to_false()
{
Cache::shouldReceive('rememberForever')->never();
/**
* @test
*
* @throws \Exception
*/
public function it_does_not_cache_queried_data_if_cache_media_is_configured_to_false()
{
Cache::shouldReceive('rememberForever')->never();
// Given koel.cache_media configuration is FALSE
config(['koel.cache_media' => false]);
// Given koel.cache_media configuration is FALSE
config(['koel.cache_media' => false]);
// When I get data from the MediaCache service
MediaCache::get();
// When I get data from the MediaCache service
MediaCache::get();
// Then I don't see the cache-related methods being called
}
// Then I don't see the cache-related methods being called
}
}

View file

@ -10,33 +10,34 @@ use Tests\TestCase;
class iTunesTest extends TestCase
{
public function tearDown()
{
m::close();
parent::tearDown();
}
public function tearDown()
{
m::close();
parent::tearDown();
}
/**
* @test
* @throws \Exception
*/
public function it_gets_itunes_track_url()
{
// Given there's a search term
$term = 'Foo Bar';
/**
* @test
*
* @throws \Exception
*/
public function it_gets_itunes_track_url()
{
// Given there's a search term
$term = 'Foo Bar';
// When I request the iTunes track URL for the song
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/itunes/track.json')),
]);
// When I request the iTunes track URL for the song
$client = m::mock(Client::class, [
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/itunes/track.json')),
]);
$url = (new iTunes($client))->getTrackUrl($term);
$url = (new iTunes($client))->getTrackUrl($term);
// Then I retrieve the track URL
$this->assertEquals('https://itunes.apple.com/us/album/i-remember-you/id265611220?i=265611396&uo=4&at=1000lsGu',
$url);
// Then I retrieve the track URL
$this->assertEquals('https://itunes.apple.com/us/album/i-remember-you/id265611220?i=265611396&uo=4&at=1000lsGu',
$url);
// And the track url is cached
$this->assertNotNull(cache('b57a14784d80c58a856e0df34ff0c8e2'));
}
// And the track url is cached
$this->assertNotNull(cache('b57a14784d80c58a856e0df34ff0c8e2'));
}
}

View file

@ -3,8 +3,6 @@
namespace Tests\Unit\Models;
use App\Models\Artist;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use org\bovigo\vfs\vfsStream;
use Tests\TestCase;
class ArtistTest extends TestCase

View file

@ -11,9 +11,9 @@ class FileTest extends TestCase
/** @test */
public function it_can_be_instantiated()
{
$file = new File(__DIR__ . '/../songs/full.mp3');
$file = new File(__DIR__.'/../songs/full.mp3');
$this->assertInstanceOf(File::class, $file);
$file = new File(new SplFileInfo(__DIR__ . '/../songs/full.mp3'));
$file = new File(new SplFileInfo(__DIR__.'/../songs/full.mp3'));
$this->assertInstanceOf(File::class, $file);
}
}

View file

@ -2,11 +2,7 @@
namespace Tests\Unit\Models;
use App\Events\SongLikeToggled;
use App\Models\Interaction;
use App\Models\Song;
use App\Models\User;
use Illuminate\Support\Collection;
use Tests\TestCase;
class InteractionTest extends TestCase
@ -16,5 +12,4 @@ class InteractionTest extends TestCase
{
$this->assertInstanceOf(Interaction::class, new Interaction());
}
}

View file

@ -2,7 +2,6 @@
namespace Tests\Unit\Models;
use App\Models\Song;
use App\Models\SongZipArchive;
use Tests\TestCase;

View file

@ -12,5 +12,4 @@ class UserTest extends TestCase
{
$this->assertInstanceOf(User::class, new User());
}
}