Пример #1
0
        private async void MoreItemsRequest()
        {
            try
            {
                IsBusy              = true;
                HasErrors           = false;
                NoItems             = false;
                DataProviderRawData = string.Empty;
                Items.Clear();

                var items = await flickrDataProvider.LoadMoreDataAsync();

                NoItems = !items.Any();

                foreach (var item in items)
                {
                    Items.Add(item);
                }

                var rawData = await rawDataProvider.LoadMoreDataAsync <RawSchema>();

                DataProviderRawData = rawData.FirstOrDefault()?.Raw;
            }
            catch (Exception ex)
            {
                DataProviderRawData += ex.Message;
                DataProviderRawData += ex.StackTrace;
                HasErrors            = true;
            }
            finally
            {
                IsBusy = false;
            }
        }
Пример #2
0
        private async void GetMoreItems()
        {
            var items = await _flickrDataProvider.LoadMoreDataAsync();

            foreach (var item in items)
            {
                Items.Add(item);
            }
        }
Пример #3
0
        public async Task LoadFlickr_OrderBy_InvalidProperty()
        {
            var config = new FlickrDataConfig
            {
                Query     = "100292344@N05",
                QueryType = FlickrQueryType.Id,
                OrderBy   = "InvalidProperty"
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable <FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);

            data = await dataProvider.LoadMoreDataAsync();
        }
Пример #4
0
        public async Task LoadPaginationFlickrUser()
        {
            var config = new FlickrDataConfig
            {
                Query     = "100292344@N05",
                QueryType = FlickrQueryType.Id
            };

            var dataProvider = new FlickrDataProvider();
            await dataProvider.LoadDataAsync(config, 2);

            Assert.IsTrue(dataProvider.HasMoreItems);

            IEnumerable <FlickrSchema> result = await dataProvider.LoadMoreDataAsync();

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Any());
        }
Пример #5
0
        public async Task LoadFlickrTags_OrderByPublished()
        {
            var config = new FlickrDataConfig
            {
                Query          = "windowsappstudio",
                QueryType      = FlickrQueryType.Tags,
                OrderBy        = nameof(FlickrSchema.Published),
                OrderDirection = SortDirection.Ascending
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable <FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadDataAsync: Flickr sorting (ascending) is not working");

            data = await dataProvider.LoadMoreDataAsync();

            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");

            config = new FlickrDataConfig
            {
                Query          = "windowsappstudio",
                QueryType      = FlickrQueryType.Tags,
                OrderBy        = nameof(FlickrSchema.Published),
                OrderDirection = SortDirection.Descending
            };

            dataProvider = new FlickrDataProvider();
            data         = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadDataAsync: Flickr sorting (descending) is not working");

            data = await dataProvider.LoadMoreDataAsync();

            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
        }
Пример #6
0
        public async Task LoadFlickrUser_OrderByTitle()
        {
            var config = new FlickrDataConfig
            {
                Query          = "100292344@N05",
                QueryType      = FlickrQueryType.Id,
                OrderBy        = nameof(FlickrSchema.Title),
                OrderDirection = SortDirection.Ascending
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable <FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadDataAsync: Flickr sorting (ascending) is not working");

            data = await dataProvider.LoadMoreDataAsync();

            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");

            config = new FlickrDataConfig
            {
                Query          = "100292344@N05",
                QueryType      = FlickrQueryType.Id,
                OrderBy        = nameof(FlickrSchema.Title),
                OrderDirection = SortDirection.Descending
            };

            dataProvider = new FlickrDataProvider();
            data         = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadDataAsync: Flickr sorting (descending) is not working");

            data = await dataProvider.LoadMoreDataAsync();

            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
        }
Пример #7
0
 public override async Task <IEnumerable <FlickrSchema> > GetNextPageAsync()
 {
     return(await _dataProvider.LoadMoreDataAsync());
 }
Пример #8
0
        public async Task LoadFlickr_OrderBy_InvalidProperty()
        {
            var config = new FlickrDataConfig
            {
                Query = "100292344@N05",
                QueryType = FlickrQueryType.Id,
                OrderBy = "InvalidProperty"
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable<FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);
            data = await dataProvider.LoadMoreDataAsync();         
        }
Пример #9
0
        public async Task LoadFlickrTags_OrderByPublished()
        {
            var config = new FlickrDataConfig
            {
                Query = "windowsappstudio",
                QueryType = FlickrQueryType.Tags,
                OrderBy = nameof(FlickrSchema.Published),
                OrderDirection = SortDirection.Ascending
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable<FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadDataAsync: Flickr sorting (ascending) is not working");

            data = await dataProvider.LoadMoreDataAsync();
            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");

            config = new FlickrDataConfig
            {
                Query = "windowsappstudio",
                QueryType = FlickrQueryType.Tags,
                OrderBy = nameof(FlickrSchema.Published),
                OrderDirection = SortDirection.Descending
            };

            dataProvider = new FlickrDataProvider();
            data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadDataAsync: Flickr sorting (descending) is not working");

            data = await dataProvider.LoadMoreDataAsync();
            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).FirstOrDefault(), data.ToList()[0].Published, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Published).Select(x => x.Published).LastOrDefault(), data.ToList()[data.Count() - 1].Published, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
        }
Пример #10
0
        public async Task LoadFlickrUser_OrderByTitle()
        {
            var config = new FlickrDataConfig
            {
                Query = "100292344@N05",
                QueryType = FlickrQueryType.Id,
                OrderBy = nameof(FlickrSchema.Title),
                OrderDirection = SortDirection.Ascending
            };

            var dataProvider = new FlickrDataProvider();
            IEnumerable<FlickrSchema> data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadDataAsync: Flickr sorting (ascending) is not working");

            data = await dataProvider.LoadMoreDataAsync();
            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");
            Assert.AreEqual(data.OrderBy(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadMoreDataAsync: Flickr sorting (ascending) is not working");

            config = new FlickrDataConfig
            {
                Query = "100292344@N05",
                QueryType = FlickrQueryType.Id,
                OrderBy = nameof(FlickrSchema.Title),
                OrderDirection = SortDirection.Descending
            };

            dataProvider = new FlickrDataProvider();
             data = await dataProvider.LoadDataAsync(config, 5);

            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadDataAsync: Flickr sorting (descending) is not working");

            data = await dataProvider.LoadMoreDataAsync();
            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).FirstOrDefault(), data.ToList()[0].Title, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
            Assert.AreEqual(data.OrderByDescending(x => x.Title).Select(x => x.Title).LastOrDefault(), data.ToList()[data.Count() - 1].Title, "LoadMoreDataAsync: Flickr sorting (descending) is not working");
        }
Пример #11
0
        public async Task LoadMoreDataInvalidOperationFlickrUser()
        {
            var config = new FlickrDataConfig
            {
                Query = "100292344@N05",
                QueryType = FlickrQueryType.Id
            };

            var dataProvider = new FlickrDataProvider();
            InvalidOperationException exception = await ExceptionsAssert.ThrowsAsync<InvalidOperationException>(async () => await dataProvider.LoadMoreDataAsync());
        
        }
Пример #12
0
        public async Task LoadPaginationFlickrUser()
        {

            var config = new FlickrDataConfig
            {
                Query = "100292344@N05",
                QueryType = FlickrQueryType.Id
            };

            var dataProvider = new FlickrDataProvider();
            await dataProvider.LoadDataAsync(config, 2);

            Assert.IsTrue(dataProvider.HasMoreItems);

            IEnumerable<FlickrSchema> result = await dataProvider.LoadMoreDataAsync();

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Any());
        }
Пример #13
0
        public async Task LoadMoreDataInvalidOperationFlickrTags()
        {
            var config = new FlickrDataConfig
            {
                Query = "windowsappstudio",
                QueryType = FlickrQueryType.Tags
            };

            var dataProvider = new FlickrDataProvider();
            InvalidOperationException exception = await ExceptionsAssert.ThrowsAsync<InvalidOperationException>(async () => await dataProvider.LoadMoreDataAsync());
           
        }
Пример #14
0
        public async Task LoadMoreDataInvalidOperationFlickrUser()
        {
            var config = new FlickrDataConfig
            {
                Query     = "100292344@N05",
                QueryType = FlickrQueryType.Id
            };

            var dataProvider = new FlickrDataProvider();
            InvalidOperationException exception = await ExceptionsAssert.ThrowsAsync <InvalidOperationException>(async() => await dataProvider.LoadMoreDataAsync());
        }
Пример #15
0
        public async Task LoadMoreDataInvalidOperationFlickrTags()
        {
            var config = new FlickrDataConfig
            {
                Query     = "windowsappstudio",
                QueryType = FlickrQueryType.Tags
            };

            var dataProvider = new FlickrDataProvider();
            InvalidOperationException exception = await ExceptionsAssert.ThrowsAsync <InvalidOperationException>(async() => await dataProvider.LoadMoreDataAsync());
        }