public void PutIt(OpenTidlSession session, JsonList <JsonListItem <ArtistModel> > itemsToPut) { foreach (var itemToPut in itemsToPut.Items) { session.AddFavoriteArtist(itemToPut.Item.Id); } }
public void PutIt(OpenTidlSession session, JsonList <PlaylistModel> itemsToPut) { foreach (var itemToPut in itemsToPut.Items) { session.AddFavoritePlaylist(itemToPut.Uuid); } }
public TidalApiLogic(OpenTidlSession tidlSession) { this.tidlSession = tidlSession; var defaultConfiguration = ClientConfiguration.Default; tidlClient = new OpenTidlClient(defaultConfiguration); this.logger = new ConsoleLogger(); }
public async Task TestLogin() { const string title = "Test"; OpenTidlSession tidlSession = await loginLogic.BaseLogin(); PlaylistLogic playlistLogic = new PlaylistLogic(tidlSession); var res = await playlistLogic.CreateUserPlaylistWithTitle("Test"); Assert.AreEqual(title, res.Title); }
/// <summary> /// Sets the session to be used in future request. /// </summary> /// <param name="response">A login response obtained from <see cref="LoginAsync"/>.</param> /// <returns>True if it succeeded, otherwise false.</returns> public override async Task <bool> RestoreSessionAsync(AuthenticationResponse response) { try { session = await client.RestoreSession(response.Token); } catch (OpenTidlException) { return(false); } return(session != null); }
public async Task TestAddPlaylistTracks() { const string playlistETag = "Demo"; OpenTidlSession tidlSession = await loginLogic.BaseLogin(); PlaylistLogic playlistLogic = new PlaylistLogic(tidlSession); List <int> mockIds = new List <int> { 1, 2, 3 }; var res = await playlistLogic.AddPlaylistTracks(playlistETag, mockIds, 0); Assert.AreEqual(playlistETag, res.ETag); }
public async Task CreateUserPlaylistWithTitleTest() { var guid = Guid.NewGuid(); //reusable as name might be unique string title = $"Test_{guid}"; logger.Write(LogLevel.Info, $"The title is : {title}"); OpenTidlSession tidlSession = await loginLogic.BaseLogin(); var tidalApiLogic = new TidalApiLogic(tidlSession); var res = await tidalApiLogic.CreateUserPlaylistWithTitle(title); Assert.AreEqual(title, res.Title); }
public void loginUsertoTidalStreamingServiceTest() { String username = "******"; String password = "******"; OpenTidlSession loginSessionResult = testInfrastructureClass.loginUsertoTidalStreamingService(openTidlClient, username, password); String FirstName = loginSessionResult.GetUser().Result.FirstName; FirstName.Should().Equals("Omar"); String LastName = loginSessionResult.GetUser().Result.LastName; LastName.Should().Equals("Alkhateeb"); String email = loginSessionResult.GetUser().Result.Email; email.Should().Equals("*****@*****.**"); }
public async Task <bool> login(string username, string password) { bool loggedIn = false; try { session = await client.LoginWithUsername(username, password); loggedIn = true; await getSubDetails(); await getAlbums(); } catch { } isLoggedIn = loggedIn; return(loggedIn); }
public async Task AddPlaylistTracksTest() { OpenTidlSession tidlSession = await loginLogic.BaseLogin(); var tidalApiLogic = new TidalApiLogic(tidlSession); string title = $"Test_{Guid.NewGuid()}"; //reusable as name might be unique logger.Write(LogLevel.Info, $"The title is : {title}"); var res = await tidalApiLogic.CreateUserPlaylistWithTitle(title); var indices = new List <int> { 126462757 }; //from actual website - not finded another way var addPlaylistTracksResponse = await tidalApiLogic.AddPlaylistTracks(res.Uuid, res.ETag, indices); var userPlayList = await tidlSession.GetUserPlaylists(); Assert.AreEqual(userPlayList.ETag, addPlaylistTracksResponse.ETag); }
private static ClaimsIdentity BuildClaimsIdentity(LoginViewModel model, OpenTidlSession session, UserModel userModel) { var claims = new[] { // Claims to support default antiforgery provider new Claim(ClaimTypes.NameIdentifier, model.Username), new Claim("http://schemas.microsoft.com/accesscontrolservice/2010/07/claims/identityprovider", "ASP.NET Identity", "http://www.w3.org/2001/XMLSchema#string"), // Name new Claim(ClaimTypes.Name, model.Username), // Custom claims for Tidal session new Claim(TidalClaimTypes.TidalLoginModelSerialized, JsonConvert.SerializeObject(session.LoginResult)), new Claim(TidalClaimTypes.TidalUserModelSerialized, JsonConvert.SerializeObject(userModel)) }; return(new ClaimsIdentity(claims, DefaultAuthenticationTypes.ApplicationCookie)); }
public async Task FullFlowTest() { OpenTidlSession tidlSession = await loginLogic.BaseLogin(); var tidalApiLogic = new TidalApiLogic(tidlSession); string title = $"Test_{Guid.NewGuid()}"; logger.Write(LogLevel.Info, $"The title is : {title}"); var res = await tidalApiLogic.CreateUserPlaylistWithTitle(title); var indices = new List <int> { 126462757 }; //from actual website await tidalApiLogic.AddPlaylistTracks(res.Uuid, res.ETag, indices); var response = await tidalApiLogic.DeletePlaylistTracks(res.Uuid); Assert.AreEqual(response, true); }
public override async Task <AuthenticationResponse> LoginAsync(string username, string password) { try { session = await client.LoginWithUsername(username, password); } catch (OpenTidlException) { return(null); } var user = await session.GetUser(); return(new AuthenticationResponse { Token = session.SessionId, UserIdentity = null, UserName = String.IsNullOrEmpty(user.FirstName) && String.IsNullOrEmpty(user.LastName) ? user.Email : $"{user.FirstName} {user.LastName} ({user.Email})" }); }
public TidlBL(string username = "******", string password = "******") { StaticLogger.LogInfo(this.GetType(), "Gettins session from constructor"); session = this.Login(username, password); }
public override void ClearSession() { session = null; settings.Response = null; }
public PlaylistLogic(OpenTidlSession tidlSession) { this.tidlSession = tidlSession; }
public TidlApi(OpenTidlSession tidlSession) { this.tidlSession = tidlSession; }
public async Task BasicLoginTest() { OpenTidlSession result = await loginLogic.BaseLogin(); Assert.IsNotNull(result); }
public MigrationExecutor(OpenTidlSession session1, OpenTidlSession session2) { _session1 = session1; _session2 = session2; }