示例#1
0
        public void Submit_WhenContainsErrors_ThrowInvalidOperationException()
        {
            var error = new DataReturnUploadError(ErrorLevel.Error, A.Dummy <UploadErrorType>(), A.Dummy <string>());

            var dataReturnUpload = new DataReturnUpload(
                A.Dummy <Scheme>(),
                A.Dummy <string>(),
                new List <DataReturnUploadError> {
                error
            },
                A.Dummy <string>(),
                A.Dummy <int>(),
                A.Dummy <int>());

            dataReturnUpload.SetDataReturnVersion(new DataReturnVersion(A.Dummy <DataReturn>()));

            Assert.Throws <InvalidOperationException>(() => dataReturnUpload.Submit("*****@*****.**"));
        }
示例#2
0
        public void Submit_WhenContainsWarnings_SubmitsWithNoException()
        {
            var warning = new DataReturnUploadError(ErrorLevel.Warning, A.Dummy <UploadErrorType>(), A.Dummy <string>());

            var dataReturnUpload = new DataReturnUpload(
                A.Dummy <Scheme>(),
                A.Dummy <string>(),
                new List <DataReturnUploadError> {
                warning
            },
                A.Dummy <string>(),
                A.Dummy <int>(),
                A.Dummy <int>());

            dataReturnUpload.SetDataReturnVersion(new DataReturnVersion(A.Dummy <DataReturn>()));

            var exception = Record.Exception(() => dataReturnUpload.Submit("*****@*****.**"));

            Assert.Null(exception);
            Assert.True(dataReturnUpload.DataReturnVersion.IsSubmitted);
        }
        public async Task HandleAsync_ForDataReturnWithOneErrorWithErrorLevelWarning_ReturnsDtoWithOneWarning()
        {
            // Arrange
            DataReturnUploadError dataReturnsUploadWarning = new DataReturnUploadError(
                ErrorLevel.Warning,
                UploadErrorType.Business,
                A.Dummy<string>());

            IFetchDataReturnForSubmissionDataAccess dataAccess = FetchDummyDataReturnWithWarning(dataReturnsUploadWarning);

            FetchDataReturnForSubmissionHandler handler = new FetchDataReturnForSubmissionHandler(
                A.Dummy<IWeeeAuthorization>(),
                dataAccess);

            Requests.DataReturns.FetchDataReturnForSubmission request = new Requests.DataReturns.FetchDataReturnForSubmission(
                A.Dummy<Guid>());

            // Act
            DataReturnForSubmission result = await handler.HandleAsync(request);

            // Assert
            Assert.Equal(1, result.Warnings.Count);
        }
示例#4
0
        public async Task HandleAsync_ForDataReturnWithOneErrorWithErrorLevelWarning_ReturnsDtoWithOneWarning()
        {
            // Arrange
            DataReturnUploadError dataReturnsUploadWarning = new DataReturnUploadError(
                ErrorLevel.Warning,
                UploadErrorType.Business,
                A.Dummy <string>());

            IFetchDataReturnForSubmissionDataAccess dataAccess = FetchDummyDataReturnWithWarning(dataReturnsUploadWarning);

            FetchDataReturnForSubmissionHandler handler = new FetchDataReturnForSubmissionHandler(
                A.Dummy <IWeeeAuthorization>(),
                dataAccess);

            Requests.DataReturns.FetchDataReturnForSubmission request = new Requests.DataReturns.FetchDataReturnForSubmission(
                A.Dummy <Guid>());

            // Act
            DataReturnForSubmission result = await handler.HandleAsync(request);

            // Assert
            Assert.Equal(1, result.Warnings.Count);
        }
        private static IFetchDataReturnForSubmissionDataAccess FetchDummyDataReturnWithError(DataReturnUploadError dataReturnsUploadError)
        {
            DataReturnUpload dataReturnsUpload = new DataReturnUpload(
                A.Dummy<Scheme>(),
                A.Dummy<string>(),
                new List<DataReturnUploadError>() { dataReturnsUploadError },
                A.Dummy<string>(),
                null,
                null);

            IFetchDataReturnForSubmissionDataAccess dataAccess = A.Fake<IFetchDataReturnForSubmissionDataAccess>();
            A.CallTo(() => dataAccess.FetchDataReturnUploadAsync(A<Guid>._)).Returns(dataReturnsUpload);
            A.CallTo(() => dataAccess.CheckForExistingSubmissionAsync(A<Guid>._, A<int>._, A<int>._)).Returns(false);
            return dataAccess;
        }
示例#6
0
        private static IFetchDataReturnForSubmissionDataAccess FetchDummyDataReturnWithError(DataReturnUploadError dataReturnsUploadError)
        {
            DataReturnUpload dataReturnsUpload = new DataReturnUpload(
                A.Dummy <Scheme>(),
                A.Dummy <string>(),
                new List <DataReturnUploadError>()
            {
                dataReturnsUploadError
            },
                A.Dummy <string>(),
                null,
                null);

            IFetchDataReturnForSubmissionDataAccess dataAccess = A.Fake <IFetchDataReturnForSubmissionDataAccess>();

            A.CallTo(() => dataAccess.FetchDataReturnUploadAsync(A <Guid> ._)).Returns(dataReturnsUpload);
            A.CallTo(() => dataAccess.CheckForExistingSubmissionAsync(A <Guid> ._, A <int> ._, A <int> ._)).Returns(false);
            return(dataAccess);
        }