public async Task LoadStaticCollection_Sorting()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };

            var dataProvider = new LocalStorageDataProvider <CollectionSchema>();
            IEnumerable <CollectionSchema> data = await dataProvider.LoadDataAsync(config);

            config.OrderBy        = "Name";
            config.OrderDirection = SortDirection.Ascending;
            IEnumerable <CollectionSchema> dataAsc = await dataProvider.LoadDataAsync(config);

            config.OrderDirection = SortDirection.Descending;
            IEnumerable <CollectionSchema> dataDesc = await dataProvider.LoadDataAsync(config);

            Assert.AreNotEqual(data.FirstOrDefault()?.Name, dataAsc.FirstOrDefault().Name);
            Assert.AreNotEqual(dataAsc.FirstOrDefault()?.Name, dataDesc.FirstOrDefault().Name);
            var dataExpected = data.OrderBy(x => x.Name).ToList();

            for (int i = 0; i < dataExpected.Count() - 1; i++)
            {
                Assert.AreEqual(dataExpected[i].Name, dataAsc.ToList()[i].Name);
            }

            dataExpected = data.OrderByDescending(x => x.Name).ToList();
            for (int i = 0; i < dataExpected.Count() - 1; i++)
            {
                Assert.AreEqual(dataExpected[i].Name, dataDesc.ToList()[i].Name);
            }
        }
Example #2
0
        public override async Task <IEnumerable <Concerts1Schema> > GetDataAsync(SchemaBase connectedItem = null)
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/Data/Concerts.json",
            };

            return(await _dataProvider.LoadDataAsync(config, MaxRecords));
        }
Example #3
0
        public override async Task <IEnumerable <PlacesToLearnProgramming1Schema> > GetDataAsync(SchemaBase connectedItem = null)
        {
            var config = new LocalStorageDataConfig
            {
                FilePath       = "/Assets/Data/PlacesToLearnProgramming.json",
                OrderBy        = "Learn",
                OrderDirection = SortDirection.Descending
            };

            return(await _dataProvider.LoadDataAsync(config, MaxRecords));
        }
Example #4
0
        public async Task TestNullUrlConfig()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = null
            };

            var dataProvider = new LocalStorageDataProvider<MenuSchema>();

            ConfigParameterNullException exception = await ExceptionsAssert.ThrowsAsync<ConfigParameterNullException>(async () => await dataProvider.LoadDataAsync(config));
            Assert.IsTrue(exception.Message.Contains("FilePath"));
        }
Example #5
0
        public async Task LoadMenu()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalMenuData.json"
            };

            var dataProvider = new LocalStorageDataProvider <MenuSchema>();
            IEnumerable <MenuSchema> data = await dataProvider.LoadDataAsync(config);

            Assert.IsNotNull(data);
            Assert.AreNotEqual(data.Count(), 0);
        }
        public async Task TestMaxRecordsLocalStaticCollection_Min()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };
            var maxRecords   = 1;
            var dataProvider = new LocalStorageDataProvider <CollectionSchema>();
            IEnumerable <CollectionSchema> data = await dataProvider.LoadDataAsync(config, maxRecords);

            Assert.IsNotNull(data);
            Assert.AreEqual(maxRecords, data.Count());
        }
        public async Task TestMaxRecordsLocalStaticCollection_Min()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };
            var maxRecords = 1;
            var dataProvider = new LocalStorageDataProvider<CollectionSchema>();
            IEnumerable<CollectionSchema> data = await dataProvider.LoadDataAsync(config, maxRecords);

            Assert.IsNotNull(data);
            Assert.AreEqual(maxRecords, data.Count());
        }
Example #8
0
        private async void Request()
        {
            try
            {
                IsBusy              = true;
                HasErrors           = false;
                NoItems             = false;
                DataProviderRawData = string.Empty;
                Items.Clear();
                var localStorageDataProvider = new LocalStorageDataProvider <LocalStorageDataSchema>();
                var config = new LocalStorageDataConfig {
                    FilePath = LocalStorageQuery
                };

                var rawParser = new RawParser();
                var rawData   = await localStorageDataProvider.LoadDataAsync(config, MaxRecordsParam, rawParser);

                DataProviderRawData = rawData.FirstOrDefault()?.Raw;

                var items = await localStorageDataProvider.LoadDataAsync(config, MaxRecordsParam);

                NoItems = !items.Any();

                foreach (var item in items)
                {
                    Items.Add(item);
                }
            }
            catch (Exception ex)
            {
                DataProviderRawData += ex.Message;
                DataProviderRawData += ex.StackTrace;
                HasErrors            = true;
            }
            finally
            {
                IsBusy = false;
            }
        }
        public async Task LoadStaticCollection()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };

            var dataProvider = new LocalStorageDataProvider<CollectionSchema>();
            IEnumerable<CollectionSchema> data = await dataProvider.LoadDataAsync(config);

            Assert.IsNotNull(data);
            Assert.AreNotEqual(data.Count(), 0);
        }
        public async Task LoadPaginationStaticCollection()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };

            var dataProvider = new LocalStorageDataProvider <CollectionSchema>();
            await dataProvider.LoadDataAsync(config, 2);

            Assert.IsTrue(dataProvider.HasMoreItems);

            IEnumerable <CollectionSchema> data = await dataProvider.LoadMoreDataAsync();

            Assert.IsNotNull(data);
            Assert.AreNotEqual(data.Count(), 0);
        }
Example #11
0
        public async void GetItems()
        {
            string localStorageQuery = "/Assets/LocalStorageSamples.json";
            int    maxRecordsParam   = 10;

            Items.Clear();
            var localStorageDataProvider = new LocalStorageDataProvider <LocalStorageDataSchema>();
            var config = new LocalStorageDataConfig {
                FilePath = localStorageQuery
            };

            var items = await localStorageDataProvider.LoadDataAsync(config, maxRecordsParam);

            foreach (var item in items)
            {
                Items.Add(item);
            }
        }
Example #12
0
        public async void GetItems()
        {
            string        localStorageQuery = "/Assets/LocalStorageSamples.json";
            int           maxRecordsParam   = 10;
            string        orderBy           = "Title";
            SortDirection sortDirection     = SortDirection.Ascending;

            _localStorageDataProvider = new LocalStorageDataProvider <LocalStorageDataSchema>();
            this.Items = new ObservableCollection <object>();

            var config = new LocalStorageDataConfig
            {
                FilePath      = localStorageQuery,
                OrderBy       = orderBy,
                SortDirection = sortDirection
            };

            var items = await _localStorageDataProvider.LoadDataAsync(config, maxRecordsParam);

            foreach (var item in items)
            {
                Items.Add(item);
            }
        }
Example #13
0
        public async void GetItems()
        {
            string localStorageQuery = "/Assets/LocalStorageSamples.json";
            int maxRecordsParam = 10;
            string orderBy = "Title";
            SortDirection sortDirection = SortDirection.Ascending;

            _localStorageDataProvider = new LocalStorageDataProvider<LocalStorageDataSchema>();
            this.Items = new ObservableCollection<object>();

            var config = new LocalStorageDataConfig
            {
                FilePath = localStorageQuery,
                OrderBy = orderBy,
                SortDirection = sortDirection
            };

            var items = await _localStorageDataProvider.LoadDataAsync(config, maxRecordsParam);

            foreach (var item in items)
            {
                Items.Add(item);
            }
        }
Example #14
0
        public async Task TestNullParser()
        {
            var dataProvider = new LocalStorageDataProvider <MenuSchema>();

            await ExceptionsAssert.ThrowsAsync <ParserNullException>(async() => await dataProvider.LoadDataAsync <MenuSchema>(new LocalStorageDataConfig(), 20, null));
        }
Example #15
0
        public async Task TestNullUrlConfig()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = null
            };

            var dataProvider = new LocalStorageDataProvider <MenuSchema>();

            ConfigParameterNullException exception = await ExceptionsAssert.ThrowsAsync <ConfigParameterNullException>(async() => await dataProvider.LoadDataAsync(config));

            Assert.IsTrue(exception.Message.Contains("FilePath"));
        }
Example #16
0
        public async Task TestNullConfig()
        {
            var dataProvider = new LocalStorageDataProvider <HtmlSchema>();

            await ExceptionsAssert.ThrowsAsync <ConfigNullException>(async() => await dataProvider.LoadDataAsync(null));
        }
Example #17
0
        public async Task TestLocalNullParser()
        {
            var dataProvider = new LocalStorageDataProvider<CollectionSchema>();

            await ExceptionsAssert.ThrowsAsync<ParserNullException>(async () => await dataProvider.LoadDataAsync<CollectionSchema>(new LocalStorageDataConfig(), 20, null));
        }
Example #18
0
        public async Task TestNullConfig()
        {
            var dataProvider = new LocalStorageDataProvider<MenuSchema>();

            await ExceptionsAssert.ThrowsAsync<ConfigNullException>(async () => await dataProvider.LoadDataAsync(null));
        }
Example #19
0
        public async Task LoadMoreStaticCollection_Sorting()
        {
            var config = new LocalStorageDataConfig
            {
                FilePath = "/Assets/LocalCollectionData.json"
            };

            var dataProvider = new LocalStorageDataProvider<CollectionSchema>();
            await dataProvider.LoadDataAsync(config, 2);
            IEnumerable<CollectionSchema> data = await dataProvider.LoadMoreDataAsync();

            config.OrderBy = "Name";
            config.OrderDirection = SortDirection.Ascending;
            IEnumerable<CollectionSchema> dataAsc = await dataProvider.LoadDataAsync(config, 2);
            dataAsc = await dataProvider.LoadMoreDataAsync();
            config.OrderDirection = SortDirection.Descending;
            IEnumerable<CollectionSchema> dataDesc = await dataProvider.LoadDataAsync(config, 2);
            dataDesc = await dataProvider.LoadMoreDataAsync();

            Assert.AreNotEqual(data.FirstOrDefault()?.Name, dataAsc.FirstOrDefault().Name);

            var dataExpected = dataAsc.OrderBy(x => x.Name).ToList();
            for (int i = 0; i < dataExpected.Count() - 1; i++)
            {
                Assert.AreEqual(dataExpected[i].Name, dataAsc.ToList()[i].Name);
            }

            dataExpected = dataDesc.OrderByDescending(x => x.Name).ToList();
            for (int i = 0; i < dataExpected.Count() - 1; i++)
            {
                Assert.AreEqual(dataExpected[i].Name, dataDesc.ToList()[i].Name);
            }
        }