From 9f63e83849389896b2f7fffd9aab9c5389cb2b51 Mon Sep 17 00:00:00 2001 From: David Britch Date: Tue, 25 Apr 2017 15:31:02 +0100 Subject: [PATCH] Refactored unit tests. --- .../ViewModels/CatalogViewModelTests.cs | 35 +++---------------- .../ViewModels/MainViewModelTests.cs | 12 +++---- .../ViewModels/MockViewModelTests.cs | 13 +++---- .../ViewModels/OrderViewModelTests.cs | 10 +++--- 4 files changed, 20 insertions(+), 50 deletions(-) diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/CatalogViewModelTests.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/CatalogViewModelTests.cs index 7c39f80bb..c1d4deaec 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/CatalogViewModelTests.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/CatalogViewModelTests.cs @@ -10,13 +10,16 @@ namespace eShopOnContainers.UnitTests { public class CatalogViewModelTests { + public CatalogViewModelTests() + { + ViewModelLocator.RegisterDependencies(true); + } + [Fact] public void AddCatalogItemCommandIsNotNullTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.NotNull(catalogViewModel.AddCatalogItemCommand); } @@ -24,9 +27,7 @@ namespace eShopOnContainers.UnitTests public void FilterCommandIsNotNullTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.NotNull(catalogViewModel.FilterCommand); } @@ -34,9 +35,7 @@ namespace eShopOnContainers.UnitTests public void ClearFilterCommandIsNotNullTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.NotNull(catalogViewModel.ClearFilterCommand); } @@ -44,9 +43,7 @@ namespace eShopOnContainers.UnitTests public void ProductsPropertyIsNullWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.Null(catalogViewModel.Products); } @@ -54,9 +51,7 @@ namespace eShopOnContainers.UnitTests public void BrandsPropertyuIsNullWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.Null(catalogViewModel.Brands); } @@ -64,9 +59,7 @@ namespace eShopOnContainers.UnitTests public void BrandPropertyIsNullWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.Null(catalogViewModel.Brand); } @@ -74,9 +67,7 @@ namespace eShopOnContainers.UnitTests public void TypesPropertyIsNullWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.Null(catalogViewModel.Types); } @@ -84,9 +75,7 @@ namespace eShopOnContainers.UnitTests public void TypePropertyIsNullWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.Null(catalogViewModel.Type); } @@ -94,9 +83,7 @@ namespace eShopOnContainers.UnitTests public void IsFilterPropertyIsFalseWhenViewModelInstantiatedTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); - Assert.False(catalogViewModel.IsFilter); } @@ -104,7 +91,6 @@ namespace eShopOnContainers.UnitTests public async Task ProductsPropertyIsNotNullAfterViewModelInitializationTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); await catalogViewModel.InitializeAsync(null); @@ -116,7 +102,6 @@ namespace eShopOnContainers.UnitTests public async Task BrandsPropertyIsNotNullAfterViewModelInitializationTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); await catalogViewModel.InitializeAsync(null); @@ -128,7 +113,6 @@ namespace eShopOnContainers.UnitTests public async Task TypesPropertyIsNotNullAfterViewModelInitializationTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); await catalogViewModel.InitializeAsync(null); @@ -140,9 +124,7 @@ namespace eShopOnContainers.UnitTests public async Task SettingProductsPropertyShouldRaisePropertyChanged() { bool invoked = false; - var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); catalogViewModel.PropertyChanged += (sender, e) => @@ -159,9 +141,7 @@ namespace eShopOnContainers.UnitTests public async Task SettingBrandsPropertyShouldRaisePropertyChanged() { bool invoked = false; - var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); catalogViewModel.PropertyChanged += (sender, e) => @@ -178,9 +158,7 @@ namespace eShopOnContainers.UnitTests public async Task SettingTypesPropertyShouldRaisePropertyChanged() { bool invoked = false; - var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); catalogViewModel.PropertyChanged += (sender, e) => @@ -198,7 +176,6 @@ namespace eShopOnContainers.UnitTests { bool messageReceived = false; var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); Xamarin.Forms.MessagingCenter.Subscribe(this, MessageKeys.AddProduct, (sender, arg) => @@ -215,7 +192,6 @@ namespace eShopOnContainers.UnitTests { bool messageReceived = false; var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); await catalogViewModel.InitializeAsync(null); catalogViewModel.Brand = catalogViewModel.Brands.FirstOrDefault(); @@ -234,7 +210,6 @@ namespace eShopOnContainers.UnitTests public async Task ClearFilterCommandResetsPropertiesTest() { var catalogService = new CatalogMockService(); - ViewModelLocator.RegisterDependencies(true); var catalogViewModel = new CatalogViewModel(catalogService); await catalogViewModel.InitializeAsync(null); diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MainViewModelTests.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MainViewModelTests.cs index 8766b5d46..1ccffcd34 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MainViewModelTests.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MainViewModelTests.cs @@ -8,12 +8,15 @@ namespace eShopOnContainers.UnitTests { public class MainViewModelTests { + public MainViewModelTests() + { + ViewModelLocator.RegisterDependencies(true); + } + [Fact] public void SettingsCommandIsNotNullWhenViewModelInstantiatedTest() { - ViewModelLocator.RegisterDependencies(true); var mainViewModel = new MainViewModel(); - Assert.NotNull(mainViewModel.SettingsCommand); } @@ -21,7 +24,6 @@ namespace eShopOnContainers.UnitTests public async Task ViewModelInitializationSendsChangeTabMessageTest() { bool messageReceived = false; - ViewModelLocator.RegisterDependencies(true); var mainViewModel = new MainViewModel(); var tabParam = new TabParameter { TabIndex = 2 }; @@ -37,7 +39,6 @@ namespace eShopOnContainers.UnitTests [Fact] public void IsBusyPropertyIsFalseWhenViewModelInstantiatedTest() { - ViewModelLocator.RegisterDependencies(true); var mainViewModel = new MainViewModel(); Assert.False(mainViewModel.IsBusy); } @@ -45,11 +46,8 @@ namespace eShopOnContainers.UnitTests [Fact] public async Task IsBusyPropertyIsTrueAfterViewModelInitializationTest() { - ViewModelLocator.RegisterDependencies(true); var mainViewModel = new MainViewModel(); - await mainViewModel.InitializeAsync(null); - Assert.True(mainViewModel.IsBusy); } } diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MockViewModelTests.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MockViewModelTests.cs index 2f9abe66f..82312bc69 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MockViewModelTests.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/MockViewModelTests.cs @@ -5,10 +5,14 @@ namespace eShopOnContainers.UnitTests { public class MockViewModelTests { + public MockViewModelTests() + { + ViewModelLocator.RegisterDependencies(true); + } + [Fact] public void CheckValidationFailsWhenPropertiesAreEmptyTest() { - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); bool isValid = mockViewModel.Validate(); @@ -25,7 +29,6 @@ namespace eShopOnContainers.UnitTests [Fact] public void CheckValidationFailsWhenOnlyForenameHasDataTest() { - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); mockViewModel.Forename.Value = "John"; @@ -43,7 +46,6 @@ namespace eShopOnContainers.UnitTests [Fact] public void CheckValidationPassesWhenOnlySurnameHasDataTest() { - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); mockViewModel.Surname.Value = "Smith"; @@ -61,7 +63,6 @@ namespace eShopOnContainers.UnitTests [Fact] public void CheckValidationPassesWhenBothPropertiesHaveDataTest() { - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); mockViewModel.Forename.Value = "John"; mockViewModel.Surname.Value = "Smith"; @@ -81,8 +82,6 @@ namespace eShopOnContainers.UnitTests public void SettingForenamePropertyShouldRaisePropertyChanged() { bool invoked = false; - - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); mockViewModel.Forename.PropertyChanged += (sender, e) => @@ -99,8 +98,6 @@ namespace eShopOnContainers.UnitTests public void SettingSurnamePropertyShouldRaisePropertyChanged() { bool invoked = false; - - ViewModelLocator.RegisterDependencies(true); var mockViewModel = new MockViewModel(); mockViewModel.Surname.PropertyChanged += (sender, e) => diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/OrderViewModelTests.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/OrderViewModelTests.cs index 50a21b1be..fbfc6a951 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/OrderViewModelTests.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/ViewModels/OrderViewModelTests.cs @@ -9,13 +9,16 @@ namespace eShopOnContainers.UnitTests { public class OrderViewModelTests { + public OrderViewModelTests() + { + ViewModelLocator.RegisterDependencies(true); + } + [Fact] public void OrderPropertyIsNullWhenViewModelInstantiatedTest() { var orderService = new OrderMockService(); - ViewModelLocator.RegisterDependencies(true); var orderViewModel = new OrderDetailViewModel(orderService); - Assert.Null(orderViewModel.Order); } @@ -23,7 +26,6 @@ namespace eShopOnContainers.UnitTests public async Task OrderPropertyIsNotNullAfterViewModelInitializationTest() { var orderService = new OrderMockService(); - ViewModelLocator.RegisterDependencies(true); var orderViewModel = new OrderDetailViewModel(orderService); var order = await orderService.GetOrderAsync(1, GlobalSetting.Instance.AuthToken); @@ -36,9 +38,7 @@ namespace eShopOnContainers.UnitTests public async Task SettingOrderPropertyShouldRaisePropertyChanged() { bool invoked = false; - var orderService = new OrderMockService(); - ViewModelLocator.RegisterDependencies(true); var orderViewModel = new OrderDetailViewModel(orderService); orderViewModel.PropertyChanged += (sender, e) =>