public GetPopulatedReturnTests()
        {
            returnDataAccess                = A.Fake <IReturnDataAccess>();
            mapper                          = A.Fake <IMap <ReturnQuarterWindow, ReturnData> >();
            quarterWindowFactory            = A.Fake <IQuarterWindowFactory>();
            fetchNonObligatedWeeeDataAccess = A.Fake <INonObligatedDataAccess>();
            fetchObligatedWeeeDataAccess    = A.Fake <IFetchObligatedWeeeForReturnDataAccess>();
            fetchAatfDataAccess             = A.Fake <IFetchAatfDataAccess>();
            returnSchemeDataAccess          = A.Fake <IReturnSchemeDataAccess>();
            genericDataAccess               = A.Fake <IGenericDataAccess>();
            systemDataDataAccess            = A.Fake <ISystemDataDataAccess>();

            populatedReturn = new GetPopulatedReturn(new AuthorizationBuilder()
                                                     .AllowExternalAreaAccess()
                                                     .AllowOrganisationAccess().Build(),
                                                     returnDataAccess,
                                                     mapper,
                                                     quarterWindowFactory,
                                                     fetchNonObligatedWeeeDataAccess,
                                                     fetchObligatedWeeeDataAccess,
                                                     fetchAatfDataAccess,
                                                     returnSchemeDataAccess,
                                                     genericDataAccess,
                                                     systemDataDataAccess);
        }
        public async Task GetReturnData_NoExternalAccess_ThrowsSecurityException()
        {
            var authorization = new AuthorizationBuilder().DenyExternalAreaAccess().Build();

            populatedReturn = new GetPopulatedReturn(authorization,
                                                     A.Dummy <IReturnDataAccess>(),
                                                     A.Dummy <IMap <ReturnQuarterWindow, ReturnData> >(),
                                                     A.Dummy <IQuarterWindowFactory>(),
                                                     A.Dummy <INonObligatedDataAccess>(),
                                                     A.Dummy <IFetchObligatedWeeeForReturnDataAccess>(),
                                                     A.Dummy <IFetchAatfDataAccess>(),
                                                     A.Dummy <IReturnSchemeDataAccess>(),
                                                     A.Dummy <IGenericDataAccess>(),
                                                     systemDataDataAccess);

            Func <Task> action = async() => await populatedReturn.GetReturnData(A.Dummy <Guid>(), A.Dummy <bool>());

            await action.Should().ThrowAsync <SecurityException>();
        }