public async Task AllItems_GetLoaded_AfterInitializeAsync()
        {
            var mockNavigationService = new Mock <INavigationService>();
            var mockDialogService     = new Mock <IDialogService>();
            var mockItemsService      = new Mock <IItemsService>();
            var fakeItemsList         = Task.Run(() =>
                                                 new List <Item>()
            {
                new Item()
                {
                    Id = 1, Name = "Test 1", Description = "Description 123", Quantity = 1
                },
                new Item()
                {
                    Id = 3, Name = "Test 3", Description = "Description 3", Quantity = 3
                }
            }
                                                 .AsEnumerable()
                                                 );

            mockItemsService.Setup(m => m.GetAllItemsAsync()).Returns(fakeItemsList);
            var listItemsViewModel = new ItemsListViewModel(mockNavigationService.Object, mockDialogService.Object, mockItemsService.Object);

            await listItemsViewModel.InitializeAsync(null);

            Approvals.Verify(listItemsViewModel.Items.ToList().ToApprovalString());
        }
示例#2
0
        public async Task Items_NotNull_AfterInitializeAsync()
        {
            var mockNavigationService = new Mock <INavigationService>();
            var mockDialogService     = new Mock <IDialogService>();
            var mockItemsService      = new Mock <IItemsService>();

            var listItemsViewModel = new ItemsListViewModel(mockNavigationService.Object, mockDialogService.Object, mockItemsService.Object);

            await listItemsViewModel.InitializeAsync(null);

            Assert.NotNull(listItemsViewModel.Items);
        }
示例#3
0
        public async Task AllItems_GetLoaded_AfterInitializeAsync()
        {
            var mockNavigationService = new Mock <INavigationService>();
            var mockDialogService     = new Mock <IDialogService>();
            var mockItemsRepository   = new FakeItemsRepository();
            var mockItemsService      = new ItemsService(mockItemsRepository, new InMemoryBlobCache());

            var listItemsViewModel = new ItemsListViewModel(mockNavigationService.Object, mockDialogService.Object, mockItemsService);

            await listItemsViewModel.InitializeAsync(null);

            Assert.Equal(mockItemsRepository.Items.Count, listItemsViewModel.Items.Count);
        }
示例#4
0
        public async Task ItemsAboutToExpire_GetLoaded_WhenFilterIsAboutToExpire()
        {
            var mockNavigationService = new Mock <INavigationService>();
            var mockDialogService     = new Mock <IDialogService>();
            var mockItemsRepository   = new FakeItemsRepository();

            //Specify items ExpirationDate
            mockItemsRepository.Items.ForEach(i => i.ExpirationDate = DateTime.Today.AddDays(15));
            mockItemsRepository.Items[0].ExpirationDate             = DateTime.Today.AddDays(-1);
            mockItemsRepository.Items[1].ExpirationDate             = DateTime.Today;
            mockItemsRepository.Items[2].ExpirationDate             = DateTime.Today.AddDays(1);
            mockItemsRepository.Items[3].ExpirationDate             = DateTime.Today.AddDays(4);
            var mockItemsService = new ItemsService(mockItemsRepository, new InMemoryBlobCache());

            var listItemsViewModel = new ItemsListViewModel(mockNavigationService.Object, mockDialogService.Object, mockItemsService);

            await listItemsViewModel.InitializeAsync(ItemListFilters.AboutToExpire);

            Assert.Equal(4, listItemsViewModel.Items.Count);
        }