/// <summary>Constructor</summary>
 /// <param name="client">Spotify Sdk Client</param>
 public ShowsPageViewModel(ISpotifySdkClient client) :
     base(client)
 {
     Saved = new ListShowViewModel(client, ShowType.UserSaved);
     // Command Actions
     client.CommandActions.Show    = (item) => NavigatePage(item);
     client.CommandActions.Episode = (item) => NavigatePage(item);
 }
        /// <summary>
        /// List Show View Model (User Saved)
        /// </summary>
        public async Task ListShowViewModel_UserSaved_Test()
        {
            // Arrange
            var model = new ListShowViewModel(_client, ShowType.UserSaved);

            // Act
            await((ISupportIncrementalLoading)model.Collection).LoadMoreItemsAsync(count);
            // Assert
            Assert.IsTrue(model.Collection.Count > 0);
        }
        public async Task ListShowViewModel_Search_Test(string search)
        {
            // Arrange
            var model = new ListShowViewModel(_client, ShowType.Search, value: search);

            // Act
            await((ISupportIncrementalLoading)model.Collection).LoadMoreItemsAsync(count);
            // Assert
            Assert.IsTrue(model.Collection.Count > 0);
        }
        public async Task ListShowViewModel_Multiple_Test(string id)
        {
            // Arrange
            var ids = new List <string> {
                id
            };
            var model = new ListShowViewModel(_client, ShowType.Multiple, multipleShowIds: ids);

            // Act
            await((ISupportIncrementalLoading)model.Collection).LoadMoreItemsAsync(count);
            // Assert
            Assert.IsTrue(model.Collection.Any(a => a.Id == id));
        }
        public async Task ListShowViewModel_Favourite_Test(string id)
        {
            // Arrange
            _client.Favourites.ShowIds = new List <string> {
                id
            };
            var model = new ListShowViewModel(_client, ShowType.Favourite);
            // Act
            var result = await((ISupportIncrementalLoading)model.Collection).LoadMoreItemsAsync(count);

            // Assert
            Assert.IsTrue(model.Collection.Any(a => a.Id == id));
        }
Esempio n. 6
0
 /// <summary>Constructor</summary>
 /// <param name="client">Spotify Sdk Client</param>
 public FavouritesPageViewModel(ISpotifySdkClient client) : base(client)
 {
     // Albums
     Albums = new ListAlbumViewModel(client, AlbumType.Favourite);
     // Tracks
     Tracks = new ListTrackViewModel(client, TrackType.Favourite);
     // Artists
     Artists = new ListArtistViewModel(client, ArtistType.Favourite);
     // Shows
     Shows = new ListShowViewModel(client, ShowType.Favourite);
     // Episodes
     Episodes = new ListEpisodeViewModel(client, EpisodeType.Favourite);
     // Command Actions
     client.CommandActions.Album    = (item) => NavigatePage(item);
     client.CommandActions.Artist   = (item) => NavigatePage(item);
     client.CommandActions.Playlist = (item) => NavigatePage(item);
     client.CommandActions.Show     = (item) => NavigatePage(item);
     client.CommandActions.Episode  = (item) => NavigatePage(item);
 }
Esempio n. 7
0
 /// <summary>Constructor</summary>
 /// <param name="client">Spotify Sdk Client</param>
 /// <param name="value">Search Term</param>
 public SearchPageViewModel(ISpotifySdkClient client, string value) : base(client)
 {
     // Albums
     Albums = new ListAlbumViewModel(client, AlbumType.Search, value);
     // Tracks
     Tracks = new ListTrackViewModel(client, TrackType.Search, value);
     // Artists
     Artists = new ListArtistViewModel(client, ArtistType.Search, value);
     // Playlists
     Playlists = new ListPlaylistViewModel(client, PlaylistType.Search, value);
     // Shows
     Shows = new ListShowViewModel(client, ShowType.Search, value);
     // Episodes
     Episodes = new ListEpisodeViewModel(client, EpisodeType.Search, value);
     // Command Actions
     client.CommandActions.Album    = (item) => NavigatePage(item);
     client.CommandActions.Artist   = (item) => NavigatePage(item);
     client.CommandActions.Track    = (item) => NavigatePage(item);
     client.CommandActions.Playlist = (item) => NavigatePage(item);
     client.CommandActions.Show     = (item) => NavigatePage(item);
     client.CommandActions.Episode  = (item) => NavigatePage(item);
 }