public void should_parse_followed_artist() { var followed = new FollowedArtists { Artists = new CursorPaging <FullArtist> { Items = new List <FullArtist> { new FullArtist { Name = "artist" } } } }; Mocker.GetMock <ISpotifyProxy>(). Setup(x => x.GetFollowedArtists(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>())) .Returns(followed); var result = Subject.Fetch(_api); result.Should().HaveCount(1); }
public void should_skip_bad_artist_names(string name) { var followed = new FollowedArtists { Artists = new CursorPaging <FullArtist> { Items = new List <FullArtist> { new FullArtist { Name = name } } } }; Mocker.GetMock <ISpotifyProxy>(). Setup(x => x.GetFollowedArtists(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>())) .Returns(followed); var result = Subject.Fetch(_api); result.Should().BeEmpty(); }
public void should_not_throw_if_get_next_page_returns_null() { var followed = new FollowedArtists { Artists = new CursorPaging <FullArtist> { Items = new List <FullArtist> { new FullArtist { Name = "artist" } }, Next = "DummyToMakeHasNextTrue" } }; Mocker.GetMock <ISpotifyProxy>(). Setup(x => x.GetFollowedArtists(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>())) .Returns(followed); Mocker.GetMock <ISpotifyProxy>() .Setup(x => x.GetNextPage(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>(), It.IsAny <CursorPaging <FullArtist> >())) .Returns(default(CursorPaging <FullArtist>)); var result = Subject.Fetch(api); result.Should().HaveCount(1); Mocker.GetMock <ISpotifyProxy>() .Verify(v => v.GetNextPage(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>(), It.IsAny <CursorPaging <FullArtist> >()), Times.Once()); }
public IEnumerator LoadUsersFollowedArtists() { yield return(new WaitForSeconds(2)); FollowedArtists followedArtists = spotifyManagerScript.GetUsersFollowedArtists(); if (followedArtists == null || followedArtists.Artists.Items.Count == 0) { Debug.LogError("followedArtists is null/empty"); } else { for (int i = 0; i < meshRenderers.Length; i++) { string followedArtistsImageURL = null; if (followedArtists.Artists.Items[i].Images.Count > 0) { followedArtistsImageURL = followedArtists.Artists.Items[i].Images[0].Url; } GameObject meshRendererGameObject = meshRenderers[i].transform.gameObject; PlaylistScript playlistScript = meshRendererGameObject.GetComponent <PlaylistScript>(); WWW imageURLWWW = null; if (followedArtistsImageURL != null) { imageURLWWW = new WWW(followedArtistsImageURL); yield return(imageURLWWW); meshRenderers[i].material.mainTexture = imageURLWWW.texture; } playlistScript.setPlaylistName(followedArtists.Artists.Items[i].Name); playlistScript.setPlaylistURI(followedArtists.Artists.Items[i].Uri); playlistScript.fullArtist = followedArtists.Artists.Items[i]; SeveralTracks artistTopTracks = spotifyManagerScript.GetArtistsTopTracks(followedArtists.Artists.Items[i].Id); playlistScript.audioAnalysisCustom = new AudioAnalysisCustom(spotifyManagerScript.GetAudioAnalysis(artistTopTracks.Tracks[0].Id)); if (imageURLWWW != null) { playlistScript.sprite = ConvertWWWToSprite(imageURLWWW); saveLoad.SaveTextureToFilePNG(Converter.ConvertWWWToTexture(imageURLWWW), "userFollowedArtist" + i + ".png"); } playlistScript.artistId = followedArtists.Artists.Items[i].Id; saveLoad.savedUserFollowedArtists.Add(new PlaylistScriptData(playlistScript)); } } }
public IEnumerator Test_Spotify_GetUsersFollowedArtists() { Spotify spotify = new Spotify(); spotify.TestSetup(); FollowedArtists followedArtists = spotify.GetUsersFollowedArtists(); yield return(null); Debug.Log(followedArtists.Artists.Items[0].Name); Assert.IsFalse(followedArtists.HasError()); }
public void should_not_throw_if_followed_artists_is_null() { var followed = new FollowedArtists { Artists = null }; Mocker.GetMock <ISpotifyProxy>(). Setup(x => x.GetFollowedArtists(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>())) .Returns(followed); var result = Subject.Fetch(api); result.Should().BeEmpty(); }
public void CheckAction(Account user, DateTime lastCheck) { var api = _spotifyService.GetSpotifyWebApi(_spotifyService.GetSpotifyToken(user)); FollowedArtists followedArtists = _spotifyService.GetFollowedArtists(api); NewAlbumReleases releases = _spotifyService.GetNewReleases(api); for (int i = 0; i < followedArtists.Artists.Items.Count; i++) { for (int j = 0; j < releases.Albums.Items.Count; j++) { for (int k = 0; k < releases.Albums.Items[j].Artists.Count; k++) { if (followedArtists.Artists.Items[i].Id == releases.Albums.Items[j].Artists[k].Id && lastCheck < _spotifyService.GetDateFromString(releases.Albums.Items[j].ReleaseDate, releases.Albums.Items[j].ReleaseDatePrecision)) { _newReleases.Add(releases.Albums.Items[j]); } } } } }
public void should_not_throw_if_artist_is_null() { var followed = new FollowedArtists { Artists = new CursorPaging <FullArtist> { Items = new List <FullArtist> { null } } }; Mocker.GetMock <ISpotifyProxy>(). Setup(x => x.GetFollowedArtists(It.IsAny <SpotifyFollowedArtists>(), It.IsAny <SpotifyWebAPI>())) .Returns(followed); var result = Subject.Fetch(_api); result.Should().BeEmpty(); Subject.Fetch(_api); }
public FollowedArtists GetNextPage <TSettings>(SpotifyImportListBase <TSettings> list, SpotifyWebAPI api, FollowedArtists item) where TSettings : SpotifySettingsBase <TSettings>, new() { return(Execute(list, api, (x) => x.GetNextPage <FollowedArtists, FullArtist>(item.Artists))); }