Exemple #1
0
        public void WeeeReceived_AatfNotDefined_ThrowsArgumentNullException()
        {
            Action constructor = () =>
            {
                var @return = new WeeeReceived(A.Fake <Scheme>(), null, A.Dummy <Return>());
            };

            constructor.Should().Throw <ArgumentNullException>();
        }
Exemple #2
0
        public void WeeeReceived_GivenValidParameters_WeeeReceivedPropertiesShouldBeSet()
        {
            var scheme  = A.Fake <Scheme>();
            var aatf    = A.Fake <Aatf>();
            var @return = A.Fake <Return>();

            var weeeReceived = new WeeeReceived(scheme, aatf, @return);

            weeeReceived.Scheme.Should().Be(scheme);
            weeeReceived.Aatf.Should().Be(aatf);
            weeeReceived.Return.Should().Be(@return);
        }
        public async Task RemoveReturnScheme_GivenSchemeIdReturnId_PCSforReturnShouldBeReturned()
        {
            var returnId        = Guid.NewGuid();
            var returnIdNoMatch = Guid.NewGuid();
            var schemeId1       = Guid.NewGuid();
            var schemeIds       = new List <Guid>();

            schemeIds.Add(schemeId1);

            var returnSchemeMatch   = A.Fake <ReturnScheme>();
            var returnSchemeNoMatch = A.Fake <ReturnScheme>();

            A.CallTo(() => returnSchemeMatch.Scheme).Returns(A.Fake <Scheme>());
            A.CallTo(() => returnSchemeMatch.SchemeId).Returns(schemeId1);
            A.CallTo(() => returnSchemeMatch.ReturnId).Returns(returnId);

            A.CallTo(() => returnSchemeNoMatch.Scheme).Returns(A.Fake <Scheme>());
            A.CallTo(() => returnSchemeNoMatch.SchemeId).Returns(schemeId1);
            A.CallTo(() => returnSchemeNoMatch.ReturnId).Returns(returnIdNoMatch);

            List <WeeeReceived> weeeReceived = new List <WeeeReceived>();

            WeeeReceived weee  = new WeeeReceived(schemeId1, A.Dummy <Guid>(), returnId);
            WeeeReceived weee1 = new WeeeReceived(schemeId1, A.Dummy <Guid>(), returnIdNoMatch);

            weeeReceived.Add(weee);
            weeeReceived.Add(weee1);

            var list = new List <WeeeReceivedAmount>();
            var weeeReceivedAmount = A.Fake <WeeeReceivedAmount>();

            A.CallTo(() => weeeReceivedAmount.Id).Returns(A.Dummy <Guid>());
            list.Add(weeeReceivedAmount);
            A.CallTo(() => context.WeeeReceivedAmount).Returns(dbHelper.GetAsyncEnabledDbSet(list));

            A.CallTo(() => context.WeeeReceived).Returns(dbHelper.GetAsyncEnabledDbSet(weeeReceived));
            A.CallTo(() => context.ReturnScheme).Returns(dbHelper.GetAsyncEnabledDbSet(new List <ReturnScheme>()
            {
                returnSchemeNoMatch, returnSchemeMatch
            }));

            await dataAccess.RemoveReturnScheme(schemeIds, returnId);

            A.CallTo(() => context.WeeeReceived.Remove(weee)).MustHaveHappened(Repeated.Exactly.Once)
            .Then(A.CallTo(() => context.SaveChangesAsync()).MustHaveHappened(Repeated.Exactly.Once));
            A.CallTo(() => context.ReturnScheme.Remove(returnSchemeMatch)).MustHaveHappened(Repeated.Exactly.Once)
            .Then(A.CallTo(() => context.SaveChangesAsync()).MustHaveHappened(Repeated.Exactly.Once));
        }
Exemple #4
0
        public void Submit_GivenObligatedWeeeValues_ValuesShouldBeAddedToContext()
        {
            var weeReceived = new WeeeReceived(schemeId, aatfId, Guid.NewGuid());

            var houseHoldTonnage    = 1.000m;
            var nonHouseHoldTonnage = 2.000m;

            var obligatedReceivedWeee = new List <WeeeReceivedAmount> {
                new WeeeReceivedAmount(weeReceived, 1, houseHoldTonnage, nonHouseHoldTonnage), new WeeeReceivedAmount(weeReceived, 2, houseHoldTonnage, nonHouseHoldTonnage)
            };

            var obligatedReceivedWeeeDbSet = dbContextHelper.GetAsyncEnabledDbSet(new List <WeeeReceivedAmount>());

            A.CallTo(() => context.WeeeReceivedAmount).Returns(obligatedReceivedWeeeDbSet);

            dataAccess.Submit(obligatedReceivedWeee);

            context.WeeeReceivedAmount.Should().AllBeEquivalentTo(obligatedReceivedWeee);
        }
Exemple #5
0
        public async Task <bool> HandleAsync(AddObligatedReceived message)
        {
            authorization.EnsureCanAccessExternalArea();

            var aatfWeeeReceived = new WeeeReceived(
                message.SchemeId,
                message.AatfId,
                message.ReturnId);

            var aatfWeeeReceivedAmount = new List <WeeeReceivedAmount>();

            foreach (var categoryValue in message.CategoryValues)
            {
                aatfWeeeReceivedAmount.Add(new WeeeReceivedAmount(aatfWeeeReceived, categoryValue.CategoryId, categoryValue.HouseholdTonnage, categoryValue.NonHouseholdTonnage));
            }

            await obligatedReceivedDataAccess.Submit(aatfWeeeReceivedAmount);

            return(true);
        }
        public async Task HandleAsync_WithValidInput_SubmittedIsCalledCorrectly()
        {
            var organisation = A.Fake <Organisation>();
            var aatf         = A.Fake <Aatf>();
            var scheme       = A.Fake <Scheme>();
            var aatfReturn   = new Return(organisation, new Quarter(2019, QuarterType.Q1), Guid.NewGuid().ToString(), FacilityType.Aatf);

            var weeeReceived = new WeeeReceived(
                scheme.Id,
                aatf.Id,
                aatfReturn.Id);
            var weeeReceivedAmount = new List <WeeeReceivedAmount>();

            var categoryValues = new List <ObligatedValue>();

            foreach (var category in Enum.GetValues(typeof(WeeeCategory)).Cast <WeeeCategory>())
            {
                categoryValues.Add(new ObligatedValue(Guid.NewGuid(), (int)category, (int)category, (int)category));
            }

            var obligatedWeeeRequest = new AddObligatedReceived
            {
                ReturnId       = aatfReturn.Id,
                OrganisationId = organisation.Id,
                CategoryValues = categoryValues,
                SchemeId       = scheme.Id,
                AatfId         = aatf.Id
            };

            foreach (var categoryValue in obligatedWeeeRequest.CategoryValues)
            {
                weeeReceivedAmount.Add(new WeeeReceivedAmount(weeeReceived, categoryValue.CategoryId, categoryValue.HouseholdTonnage, categoryValue.NonHouseholdTonnage));
            }

            var requestHandler = new AddObligatedReceivedHandler(authorization, addObligatedReceivedDataAccess);

            await requestHandler.HandleAsync(obligatedWeeeRequest);

            A.CallTo(() => addObligatedReceivedDataAccess.Submit(A <List <WeeeReceivedAmount> > .That.IsSameAs(weeeReceivedAmount)));
        }
Exemple #7
0
        public WeeeReceived ReturnWeeeReceived(DomainScheme scheme, DomainAatf aatf, Return @return)
        {
            var weeeReceived = new WeeeReceived(scheme, aatf, @return);

            return(weeeReceived);
        }