public async void PostIndex_ReturnCreated_RedirectWithReturnIdShouldHappen()
        {
            var       returnId = Guid.NewGuid();
            var       quarter  = QuarterType.Q1;
            const int year     = 2019;

            A.CallTo(() => weeeClient.SendAsync(A <string> ._, A <AddReturn> .That.Matches(a => a.FacilityType.Equals(FacilityType.Ae) &&
                                                                                           a.OrganisationId.Equals(organisationId) &&
                                                                                           a.Quarter.Equals(quarter) &&
                                                                                           a.Year.Equals(year)))).Returns(returnId);

            ReturnsViewModel viewModel = A.Dummy <ReturnsViewModel>();

            viewModel.OrganisationId = organisationId;
            viewModel.Quarter        = quarter;
            viewModel.ComplianceYear = year;

            var result = await controller.Index(viewModel) as RedirectToRouteResult;

            result.RouteValues["action"].Should().Be("ExportedWholeWeee");
            result.RouteValues["controller"].Should().Be("Returns");
            result.RouteValues["organisationId"].Should().Be(organisationId);
            result.RouteValues["returnId"].Should().Be(returnId);
            result.RouteName.Should().Be(AeRedirect.ReturnsRouteName);
        }
Example #2
0
 public DataTypeViewModel(DocumentIdViewModel id,
                          DocumentUriViewModel uri,
                          TitlesViewModel titlesViewModel,
                          SyntaxViewModel syntaxViewModel,
                          DocumentReferenceViewModel @base,
                          LocationViewModel location,
                          InheritanceViewModel inheritance,
                          ParametersViewModel parameters,
                          ReturnsViewModel returns,
                          UxClassPropertiesViewModel uxProperties,
                          ValuesViewModel values,
                          CommentViewModel comment,
                          DocumentReferenceViewModel declaredIn,
                          ImplementedInterfacesViewModel implementedInterfaces,
                          AttributesViewModel attributes,
                          IEntity underlyingEntity)
     : base(id, uri, titlesViewModel, syntaxViewModel, comment, declaredIn, underlyingEntity)
 {
     Base                  = @base;
     Location              = location;
     Inheritance           = inheritance;
     Parameters            = parameters;
     Returns               = returns;
     UxProperties          = uxProperties;
     Values                = values;
     ImplementedInterfaces = implementedInterfaces;
     Attributes            = attributes;
 }
        public async void IndexGet_GivenOrganisation_ReturnsViewModelShouldBeReturned()
        {
            var model = new ReturnsViewModel();

            A.CallTo(() => mapper.Map <ReturnsViewModel>(A <ReturnToReturnsViewModelTransfer> ._)).Returns(model);

            var result = await controller.Index(organisationId, fixture.Create <int?>(), fixture.Create <string>()) as ViewResult;

            var returnedModel = (ReturnsViewModel)model;

            returnedModel.Should().Be(model);
            returnedModel.OrganisationId.Should().Be(organisationId);
        }
Example #4
0
        public async void IndexPost_GivenOrganisationId_ReturnShouldBeCreated(QuarterType quarterType)
        {
            var model = new ReturnsViewModel()
            {
                OrganisationId = Guid.NewGuid(), ComplianceYear = 2019, Quarter = quarterType
            };

            await controller.Index(model);

            A.CallTo(() => weeeClient.SendAsync(A <string> ._, A <AddReturn> .That
                                                .Matches(c => c.OrganisationId.Equals(model.OrganisationId) &&
                                                         c.Quarter.Equals(model.Quarter) &&
                                                         c.Year.Equals(model.ComplianceYear)))).MustHaveHappened(Repeated.Exactly.Once);
        }
Example #5
0
        public virtual async Task <ActionResult> Index(ReturnsViewModel model)
        {
            using (var client = apiClient())
            {
                var aatfReturnId = await client.SendAsync(User.GetAccessToken(), new AddReturn()
                {
                    OrganisationId = model.OrganisationId,
                    Year           = model.ComplianceYear,
                    Quarter        = model.Quarter,
                    FacilityType   = FacilityType.Aatf
                });

                return(AatfRedirect.SelectReportOptions(model.OrganisationId, aatfReturnId));
            }
        }
        public async void IndexPost_RedirectToExportedWholeWeee()
        {
            var organisationId = Guid.NewGuid();

            var viewModel = new ReturnsViewModel()
            {
                OrganisationId = organisationId
            };

            var result = await controller.Index(viewModel) as RedirectToRouteResult;

            result.RouteValues["action"].Should().Be("ExportedWholeWeee");
            result.RouteValues["controller"].Should().Be("Returns");
            result.RouteValues["organisationId"].Should().Be(organisationId);
            result.RouteName.Should().Be(AeRedirect.ReturnsRouteName);
        }
Example #7
0
        public async Task <ActionResult> Index(ReturnsViewModel viewModel)
        {
            using (var client = apiClient())
            {
                AddReturn request = new AddReturn()
                {
                    OrganisationId = viewModel.OrganisationId,
                    FacilityType   = FacilityType.Ae,
                    Quarter        = viewModel.Quarter,
                    Year           = viewModel.ComplianceYear
                };

                Guid returnId = await client.SendAsync(User.GetAccessToken(), request);

                return(AeRedirect.ExportedWholeWeee(viewModel.OrganisationId, returnId));
            }
        }
Example #8
0
        public async void IndexPost_GivenOrganisationId_UserShouldBeRedirectedToOptions()
        {
            var model = new ReturnsViewModel()
            {
                OrganisationId = Guid.NewGuid()
            };
            var returnId = Guid.NewGuid();

            A.CallTo(() => weeeClient.SendAsync(A <string> ._, A <AddReturn> ._)).Returns(returnId);

            var redirectResult = await controller.Index(model) as RedirectToRouteResult;

            redirectResult.RouteName.Should().Be(AatfRedirect.SelectReportOptionsRouteName);
            redirectResult.RouteValues["action"].Should().Be("Index");
            redirectResult.RouteValues["organisationId"].Should().Be(model.OrganisationId);
            redirectResult.RouteValues["returnId"].Should().Be(returnId);
        }
Example #9
0
 public AttachedMemberViewModel(DocumentIdViewModel id,
                                DocumentUriViewModel uri,
                                TitlesViewModel titles,
                                DocumentReferenceViewModel declaredIn,
                                ParametersViewModel parameters,
                                ReturnsViewModel returns,
                                ValuesViewModel values,
                                AttachedMemberSourceViewModel source,
                                CommentViewModel comment,
                                IEntity underlyingEntity)
     : base(id, uri, titles, null, comment, declaredIn, underlyingEntity)
 {
     Parameters = parameters;
     Returns    = returns;
     Values     = values;
     Source     = source;
 }
Example #10
0
        public async void IndexGet_GivenOrganisation_ReturnsViewModelShouldBeReturnedWithAllReturns()
        {
            var returns = new ReturnsData(A.Fake <List <ReturnData> >(), new Quarter(2019, QuarterType.Q1), A.Fake <List <Quarter> >(), QuarterWindowTestHelper.GetDefaultQuarterWindow(), DateTime.Now);

            A.CallTo(() => weeeClient.SendAsync(A <string> ._, A <GetReturns> ._)).Returns(returns);

            var model          = new ReturnsViewModel();
            var organisationId = Guid.NewGuid();

            A.CallTo(() => mapper.Map <ReturnsViewModel>(A <ReturnToReturnsViewModelTransfer> ._)).Returns(model);

            var result = await controller.Index(organisationId, A.Dummy <int?>(), A.Dummy <string>()) as ViewResult;

            var returnedModel = (ReturnsViewModel)model;

            returnedModel.Should().Be(model);
            returnedModel.OrganisationId.Should().Be(organisationId);
            returnedModel.Returns.Count.Should().Be(returns.ReturnsList.Count);
        }
Example #11
0
 public MemberViewModel(DocumentIdViewModel id,
                        DocumentUriViewModel uri,
                        TitlesViewModel titles,
                        SyntaxViewModel syntax,
                        LocationViewModel location,
                        DocumentReferenceViewModel declaredIn,
                        ParametersViewModel parameters,
                        ReturnsViewModel returns,
                        UxMemberPropertiesViewModel uxProperties,
                        ValuesViewModel values,
                        MemberFlagsViewModel flags,
                        CommentViewModel comment,
                        AttributesViewModel attributes,
                        IEntity underlyingEntity)
     : base(id, uri, titles, syntax, comment, declaredIn, underlyingEntity)
 {
     Location     = location;
     Parameters   = parameters;
     Returns      = returns;
     UxProperties = uxProperties;
     Flags        = flags;
     Values       = values;
     Attributes   = attributes;
 }
Example #12
0
 public ReturnsPage()
 {
     InitializeComponent();
     DataContext = new ReturnsViewModel();
 }