public void Paginate() { var list = PlaylistsList.Paginate(new ClientMock(MockResponse.PlaylistsList)); var listClient = list.records.RecordClient; Assert.AreEqual(list.records.RecordEndpoint, "feeds/playlists"); foreach (var item in list.Page) { Assert.AreEqual(item.record.RecordEndpoint, "feeds/playlists"); } var per_page = "1"; var query = new Dictionary <string, string>() { { "per_page", per_page } }; var list2 = PlaylistsList.Paginate(query, new ClientMock(MockResponse.PlaylistsList)); var countItem = 0; foreach (var item in list2.Page) { countItem++; } Assert.AreEqual(countItem.ToString(), per_page); list = PlaylistsList.Paginate(new ClientMock(MockResponse.RecordPaginate)); Assert.IsTrue(list.Next()); Assert.IsTrue(list.Prevous()); Assert.IsTrue(list.First()); Assert.IsTrue(list.Last()); list = PlaylistsList.Paginate(new ClientMock(MockResponse.RecordPaginateEmpty)); Assert.IsFalse(list.Next()); Assert.IsFalse(list.Prevous()); Assert.IsFalse(list.First()); Assert.IsFalse(list.Last()); }
public static void ReadingPlaylistsList(string id, string token) { try { Console.WriteLine("--EachItem()--"); foreach (Playlist item in PlaylistsList.EachItem()) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } Console.WriteLine("--EachItem(query)--"); Dictionary <string, string> query = new Dictionary <string, string>() { { "sort", "created_at" }, { "order", "desc" }, { "per_page", "2" } }; Client client = new Client() { CfgClientId = id, CfgAuthToken = token }; foreach (var item in PlaylistsList.EachItem(query, client)) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } Console.WriteLine("--Paginate--"); var items1 = PlaylistsList.Paginate(); foreach (var item in items1.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } Console.WriteLine("--Paginate(query)--"); var items2 = PlaylistsList.Paginate(query, new Client()); Console.WriteLine("--Paginate(query)--Initial-First--"); foreach (var item in items2.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } while (items2.Next()) { Console.WriteLine("--Paginate(query)--Next--"); foreach (var item in items2.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } } Console.WriteLine("--Paginate(query)--Previous--"); items2.Prevous(); foreach (var item in items2.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } Console.WriteLine("--Paginate(query)--Last--"); items2.Last(); foreach (var item in items2.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } Console.WriteLine("--Paginate(query)--First--"); items2.First(); foreach (var item in items2.Page) { Console.WriteLine("Id: " + item["id"] + " Title: " + item["title"]); } } catch (VzaarApiException ve) { Console.Write("!!!!!!!!! EXCEPTION !!!!!!!!!"); Console.WriteLine(ve.Message); } catch (Exception e) { Console.Write("!!!!!!!!! EXCEPTION !!!!!!!!!"); Console.WriteLine(e.Message); if (e is AggregateException) { AggregateException ae = (AggregateException)e; var flatten = ae.Flatten(); foreach (var fe in flatten.InnerExceptions) { if (fe is VzaarApiException) { Console.WriteLine(fe.Message); } } } } }