/// <summary> /// Setup for Nunit Tests /// </summary> protected override void OnSetup() { // Data Setup List <PostcodeHierarchy> postcodeHierarchyList = new List <PostcodeHierarchy>() { new PostcodeHierarchy() { PostcodeTypeGUID = postcodeTypeGUID, ParentPostcode = "111", Postcode = "123" } }; List <PostalAddress> postalAddressList = new List <PostalAddress>() { new PostalAddress() { UDPRN = 123, Postcode = "123" } }; mockUnitManagerDbContext = CreateMock <UnitManagerDbContext>(); mockILoggingHelper = CreateMock <ILoggingHelper>(); // Setup for PostcodeHierarchy var mockAsynEnumerable1 = new DbAsyncEnumerable <PostcodeHierarchy>(postcodeHierarchyList); var mockPostcodeHierarchy = MockDbSet(postcodeHierarchyList); mockPostcodeHierarchy.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable1.AsQueryable().Provider); mockPostcodeHierarchy.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable1.AsQueryable().Expression); mockPostcodeHierarchy.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable1.AsQueryable().ElementType); mockPostcodeHierarchy.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <PostcodeHierarchy>)mockAsynEnumerable1).GetAsyncEnumerator()); mockUnitManagerDbContext.Setup(x => x.Set <PostcodeHierarchy>()).Returns(mockPostcodeHierarchy.Object); mockUnitManagerDbContext.Setup(x => x.PostcodeHierarchies).Returns(mockPostcodeHierarchy.Object); mockUnitManagerDbContext.Setup(c => c.PostcodeHierarchies.AsNoTracking()).Returns(mockPostcodeHierarchy.Object); // Setup for PostalAddress var mockAsynEnumerable2 = new DbAsyncEnumerable <PostalAddress>(postalAddressList); var mockPostalAddress = MockDbSet(postalAddressList); mockPostalAddress.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable2.AsQueryable().Provider); mockPostalAddress.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable2.AsQueryable().Expression); mockPostalAddress.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable2.AsQueryable().ElementType); mockPostalAddress.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <PostalAddress>)mockAsynEnumerable2).GetAsyncEnumerator()); mockUnitManagerDbContext.Setup(x => x.Set <PostalAddress>()).Returns(mockPostalAddress.Object); mockUnitManagerDbContext.Setup(x => x.PostalAddresses).Returns(mockPostalAddress.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); mockILoggingHelper.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <UnitManagerDbContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockUnitManagerDbContext.Object); testCandidate = new PostcodeSectorDataService(mockDatabaseFactory.Object, mockILoggingHelper.Object); }
/// <summary> /// Initializes a new instance of the <see cref="UnitLocationBusinessService"/> class. /// </summary> /// <param name="unitLocationDataService"> The unit location respository</param> /// <param name="postcodeSectorDataService">post code sector data service</param> /// <param name="postCodeDataService">post code data service</param> /// <param name="scenarioDataService">scenario data service</param> public UnitLocationBusinessService(IUnitLocationDataService unitLocationDataService, IPostcodeSectorDataService postcodeSectorDataService, IPostcodeDataService postCodeDataService, IScenarioDataService scenarioDataService, IPostalAddressDataService postalAddressDataService, ILoggingHelper loggingHelper, IUnitManagerIntegrationService unitManagerIntegrationService) { // Store injected dependencies this.unitLocationDataService = unitLocationDataService; this.postcodeSectorDataService = postcodeSectorDataService; this.postCodeDataService = postCodeDataService; this.scenarioDataService = scenarioDataService; this.loggingHelper = loggingHelper; this.unitManagerIntegrationService = unitManagerIntegrationService; this.postalAddressDataService = postalAddressDataService; }