public void IncomeRepository_GetAll_Returns_All_Data() { var data = new List <Income>(); Enumerable.Range(1, 5).ToList().ForEach(i => data.Add(new Income((decimal)Math.Pow(i, i), DateTime.Today, new IncomeCategory(1, "test"), new PaymentMethod(1, "test"), ""))); var mock = RepositoryMocks.GetMockIncomeRepository(data); var actual = mock.GetAll(); CollectionAssert.AreEquivalent(data, actual.ToList()); }
public void IncomeRepository_Create_Does_Nothing_If_Item_Is_Null() { var mock = RepositoryMocks.GetMockIncomeRepository(); var before = mock.GetAll(); mock.Create(null); var result = mock.GetAll(); Assert.IsNotNull(result); CollectionAssert.AreEquivalent(before.ToList(), result.ToList()); }
public void IncomeRepository_Remove_Database_Is_Empty_Nothing_Happens() { var mock = RepositoryMocks.GetMockIncomeRepository(); var before = mock.GetAll(); mock.Remove(1); var after = mock.GetAll(); CollectionAssert.AreEquivalent(before.ToList(), after.ToList()); }
public void IncomeRepository_GetById_Returns_Object_If_Found() { var testDataWithId = _baseTestData.Copy(); testDataWithId.Id = 1; var mock = RepositoryMocks.GetMockIncomeRepository(new List <Income> { testDataWithId }); var actual = mock.GetById(1); Assert.AreEqual(testDataWithId, actual); }
public void Details_ListOfHouses_ReturnsList() { //arrange some data var fakeData = RepositoryMocks.GetFakeHomeIndexViewModel(); mockHouseService.Setup(x => x.GetAll(It.IsAny <string>())).Returns(fakeData); //act var result = _controller.Index( ); //assert Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void ExpenseRepository_GetById_Returns_Object_If_Found() { var testDataWithID = baseTestData.Copy(); testDataWithID.Id = 1; var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { testDataWithID }); var actual = mock.GetById(1); Assert.AreEqual(testDataWithID, actual); }
public void ExpenseRepository_GetForMonthAndYear_Returns_Empty_List_If_None_Found() { var data = new List <Expense>(); Enumerable.Range(1, 5).ToList().ForEach(i => data.Add(new Expense((decimal)Math.Pow(i, i), DateTime.Today, new ExpenseCategory(1, "test"), new PaymentMethod(1, "test"), ""))); var mock = RepositoryMocks.GetMockExpenseRepository(data); var actual = mock.GetForMonthAndYear(1, 2010); Assert.IsNotNull(actual); Assert.IsTrue(actual.Count() == 0); }
public void Edit_SuccessfullEdit_ReturnsToDetailsPage() { //arrange var houseEditVM = RepositoryMocks.GetFakeHouseEditViewModel(); //mockHouseService.Setup(x => x.GetById(It.IsAny<int>())).Returns(viewmodel) ; //act var result = (RedirectToActionResult)_controller.Edit(houseEditVM); //assert Assert.AreEqual("Details", result.ActionName); }
public void PaymentMethodRepository_RemoveByName_Name_Does_Not_Exist_Nothing_Happens() { var mock = RepositoryMocks.GetMockPaymentMethodRepository(new List <PaymentMethod> { _baseTestData }); var before = mock.GetAll(); mock.RemoveByName(_baseTestData.Name + " not really"); var after = mock.GetAll(); CollectionAssert.AreEqual(before.ToList(), after.ToList()); }
public void ExpenseRepository_Remove_Database_Has_No_Match_Nothing_Happens() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { baseTestData }); var before = mock.GetAll(); mock.Remove(1); var after = mock.GetAll(); CollectionAssert.AreEquivalent(before.ToList(), after.ToList()); }
public void IncomeCategoryRepository_RemoveByName_Name_Does_Not_Exist_Nothing_Happens() { var mock = RepositoryMocks.GetMockIncomeCategoryRepository(new List <IncomeCategory> { baseTestData }); var before = mock.GetAll(); mock.RemoveByName(baseTestData.Name + " not really"); var after = mock.GetAll(); CollectionAssert.AreEqual(before.ToList(), after.ToList()); }
public void GeneralCategoryHandler_GetAllNames_With_Duplicates_In_Both() { var moreIncomeCategoryData = _expenseCategoryData.Select(i => new IncomeCategory(i.Id * 2, i.Name)); var moreExpenseCategoryData = _incomeCategoryData.Select(i => new ExpenseCategory(i.Id * 3, i.Name)); var mock = RepositoryMocks.GetMockGeneralCategoryHandler(_expenseCategoryData.Concat(moreExpenseCategoryData).ToList(), _incomeCategoryData.Concat(moreIncomeCategoryData).ToList()); var expected = new List <string> { "Total Expenses", "third - Expense", "fourth - Expense", "first - Expense", "second - Expense", "Total Income", "first - Income", "second - Income", "third - Income", "fourth - Income" }; var actual = mock.GetAllCategoryNames(); CollectionAssert.AreEqual(expected, actual.ToList()); }
public void ExpenseCategpryRepository_Save_Id_Zero_Adds_Item() { var mock = RepositoryMocks.GetMockIncomeCategoryRepository(); var before = mock.GetAll(); Assert.IsTrue(before.Count() == 0); var newItem = new IncomeCategory(0, "test"); mock.Save(newItem); var after = mock.GetAll(); Assert.IsTrue(after.Contains(newItem)); }
public void IncomeCategoryRepository_GetAll_Returns_All_Data() { var expected = new List <IncomeCategory>(); for (int i = 0; i < 5; i++) { expected.Add(new IncomeCategory(baseTestData.Id + i, $"{baseTestData.Name}::{i}")); } var mock = RepositoryMocks.GetMockIncomeCategoryRepository(expected); var result = mock.GetAll(); Assert.IsNotNull(result); CollectionAssert.AreEqual(expected, result.ToList()); }
public void ExpenseRepository_GetForMonthAndYear_Returns_Filtered_List() { var data = new List <Expense>(); Enumerable.Range(1, 5).ToList().ForEach(i => data.Add(new Expense((decimal)Math.Pow(i, i), DateTime.Today, new ExpenseCategory(1, "test"), new PaymentMethod(1, "test"), ""))); var expected = new List <Expense>(data); Enumerable.Range(6, 5).ToList().ForEach(i => data.Add(new Expense((decimal)Math.Pow(i, i), DateTime.MinValue, new ExpenseCategory(1, "test"), new PaymentMethod(1, "test"), ""))); var mock = RepositoryMocks.GetMockExpenseRepository(data); var actual = mock.GetForMonthAndYear(DateTime.Today.Month, DateTime.Today.Year); CollectionAssert.AreEquivalent(expected, actual.ToList()); }
public void ExpenseCategpryRepository_Save_Id_Zero_Adds_Item() { var mock = RepositoryMocks.GetMockPaymentMethodRepository(); var before = mock.GetAll(); Assert.IsTrue(!before.Any()); var newItem = new PaymentMethod(0, "test"); mock.Save(newItem); var after = mock.GetAll(); Assert.IsTrue(after.Contains(newItem)); }
public void PaymentMethodRepository_GetAll_Returns_All_Data() { var expected = new List <PaymentMethod>(); for (var i = 0; i < 5; i++) { expected.Add(new PaymentMethod(_baseTestData.Id + i, $"{_baseTestData.Name}::{i}")); } var mock = RepositoryMocks.GetMockPaymentMethodRepository(expected); var result = mock.GetAll(); Assert.IsNotNull(result); CollectionAssert.AreEqual(expected, result.ToList()); }
public void ExpenseCategpryRepository_Save_Id_Zero_Adds_Item() { var mock = RepositoryMocks.GetMockExpenseRepository(); // filters out the object added to make the mock work var actual = mock.GetAll().Where(e => e.Id != 0); Assert.IsTrue(actual.Count() == 0); mock.Save(baseTestData); var after = mock.GetAll(); Assert.IsTrue(after.Contains(baseTestData)); }
public async Task TestITISPlantInfoProcessor() { var transformer = new ITISPlantInfoTransformer(); var itisData = ITISPlantInfoData(); var plantInfos = new List <PlantInfo>(); itisData.ForEach(i => plantInfos.AddRange(transformer.Transform(new List <TaxonomicUnit> { i }))); var originRepository = RepositoryMocks.GetStandardMockOriginRepository(new List <Stores.Origin>()); var locationRepository = RepositoryMocks.GetStandardMockLocationRepository(new List <Stores.Location>()); var lifeformRepository = RepositoryMocks.GetStandardMockLifeformRepository(new List <Stores.Lifeform>()); var plantInfoRepository = RepositoryMocks.GetStandardMockPlantInfoRepository(new List <Stores.PlantInfo>()); var plantLocationRepository = RepositoryMocks.GetStandardMockPlantLocationRepository(new List <Stores.PlantLocation>()); var synonymRepository = RepositoryMocks.GetStandardMockSynonymRepository(); var taxonRepository = RepositoryMocks.GetStandardMockTaxonRepository(new List <Stores.Taxon>()); var plantSynonymRepository = new Mock <IRepository <Stores.PlantSynonym> >(); var plantInfoIndex = SearchMocks.GetStandardMockPlantInfoIndex(); var lifeformIndex = SearchMocks.GetStandardMockLifeformIndex(); var locationService = new LocationService(locationRepository.Object); var originService = new OriginService(originRepository.Object, locationService); var lifeformService = new LifeformService(lifeformRepository.Object, lifeformIndex.Object); var plantInfoService = new PlantInfoService(plantInfoRepository.Object, plantLocationRepository.Object, plantInfoIndex.Object); var synonymService = new SynonymService(synonymRepository.Object); var taxonService = new TaxonService(taxonRepository.Object, synonymService); var processor = new PlantInfoProcessor(lifeformService, originService, plantInfoService, taxonService, locationService); await processor.InitializeOrigin(transformer.Origin); await processor.InitializeLifeforms(); await processor.InitializeTaxons(); var result = await processor.Process(plantInfos); result.Count(p => p.ScientificName == "Glandularia quadrangulata").Should().Be(1); result.Count(p => p.Taxon.Subfamily == null).Should().Be(5); result.Count(p => p.Taxon.Species == "cremersii").Should().Be(1); result.Count(p => p.Taxon.Form == "viridifolia").Should().Be(1); result.Count(p => p.Taxon.Subspecies == "purpurea").Should().Be(1); result.Count(p => p.Taxon.Variety == "graminea").Should().Be(1); result.Where(p => p.Locations != null).SelectMany(p => p.Locations).Count().Should().Be(3); result.Where(p => p.Locations != null).SelectMany(p => p.Locations).Count(l => l.Status == LocationStatus.Native).Should().Be(3); result.Select(p => p.Origin).DistinctBy(o => o.OriginId).Count().Should().Be(5); }
public void IncomeCategoryRepository_RemoveByName_Name_Exists_Item_Is_Removed_With_Different_Casing() { var mock = RepositoryMocks.GetMockIncomeCategoryRepository(new List <IncomeCategory> { baseTestData }); var before = mock.GetAll(); Assert.IsTrue(before.Contains(baseTestData)); mock.RemoveByName(baseTestData.Name.ToUpper()); var after = mock.GetAll(); Assert.IsFalse(after.Contains(baseTestData)); }
public void PaymentMethodRepository_RemoveByName_Name_Exists_Item_Is_Removed() { var mock = RepositoryMocks.GetMockPaymentMethodRepository(new List <PaymentMethod> { baseTestData }); var before = mock.GetAll(); Assert.IsTrue(before.Contains(baseTestData)); mock.RemoveByName(baseTestData.Name); var after = mock.GetAll(); Assert.IsFalse(after.Contains(baseTestData)); }
public void IncomeCategoryRepository_RemoveByName_Name_Exists_Item_Is_Removed() { var mock = RepositoryMocks.GetMockIncomeCategoryRepository(new List <IncomeCategory> { _baseTestData }); var before = mock.GetAll(); Assert.IsTrue(before.Contains(_baseTestData)); mock.RemoveByName(_baseTestData.Name); var after = mock.GetAll(); Assert.IsFalse(after.Contains(_baseTestData)); }
public void PaymentMethodRepository_RemoveByName_Name_Exists_Item_Is_Removed_With_Different_Casing() { var mock = RepositoryMocks.GetMockPaymentMethodRepository(new List <PaymentMethod> { _baseTestData }); var before = mock.GetAll(); Assert.IsTrue(before.Contains(_baseTestData)); mock.RemoveByName(_baseTestData.Name.ToUpper()); var after = mock.GetAll(); Assert.IsFalse(after.Contains(_baseTestData)); }
public void Handle_InvalidCommand_ShouldThrowValidationException() { var mockCountryRepository = RepositoryMocks.GetCountryRepository(); mockCountryRepository.Setup(repo => repo.IsCountryNameUnique(It.IsAny <string>())).ReturnsAsync(false); var handler = new CreateCountryCommandHandler(_mapper, mockCountryRepository.Object); Func <Task> func = async() => await handler.Handle(new CreateCountryCommand { Name = "" }, CancellationToken.None); func.Should().Throw <ValidationException>().Where(e => e.Errors.Count == 2 && e.Errors.Any(x => x.Contains("Name cannot be empty")) && e.Errors.Any(x => x.Contains("Country with that name already exists"))); mockCountryRepository.Verify(repo => repo.AddAsync(It.IsAny <Country>()), Times.Never()); }
public void ExpenseRepository_Update_Changes_Method() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { baseTestData }); var expected = mock.GetById(baseTestData.Id); expected.Method = new PaymentMethod(4, "other-method"); mock.Update(expected); var actual = mock.GetById(expected.Id); Assert.IsNotNull(actual); Assert.AreEqual(expected, actual); }
public void ExpenseRepository_Update_Changes_Date() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { baseTestData }); var expected = mock.GetById(baseTestData.Id); expected.Date = DateTime.MinValue; mock.Update(expected); var actual = mock.GetById(expected.Id); Assert.IsNotNull(actual); Assert.AreEqual(expected, actual); }
public void ExpenseRepository_Update_Changes_Comments() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { baseTestData }); var expected = mock.GetById(baseTestData.Id); expected.Comments = "moar comments"; mock.Update(expected); var actual = mock.GetById(expected.Id); Assert.IsNotNull(actual); Assert.AreEqual(expected, actual); }
public void ExpenseRepository_Update_Changes_The_Category() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { baseTestData }); var expected = mock.GetById(baseTestData.Id); expected.Category = new ExpenseCategory(4, "other-cat"); mock.Update(expected); var actual = mock.GetById(expected.Id); Assert.IsNotNull(actual); Assert.AreEqual(expected, actual); }
public void ExpenseRepository_Update_Changes_The_Id() { var mock = RepositoryMocks.GetMockExpenseRepository(new List <Expense> { _baseTestData }); var expected = mock.GetById(_baseTestData.Id); expected.Id++; mock.Update(expected); var actual = mock.GetById(expected.Id); Assert.IsNotNull(actual); Assert.AreEqual(expected, actual); }
public void PaymentMethodRepository_Create_Adds_New_Item() { var testObject = new PaymentMethod(0, "test"); var mock = RepositoryMocks.GetMockPaymentMethodRepository(); mock.Create(testObject); var result = mock.GetAll(); Assert.IsTrue(result.Contains(testObject)); var singleItem = mock.GetById(testObject.Id); Assert.IsNotNull(singleItem); Assert.AreEqual(testObject, singleItem); }