コード例 #1
0
        public void QueryAsync_WhenQueryIsNull_ThrowsArgumentNullException()
        {
            QueryHandler sut = CreateSut();

            ArgumentNullException result = Assert.ThrowsAsync <ArgumentNullException>(async() => await sut.QueryAsync(null));

            Assert.That(result.ParamName, Is.EqualTo("query"));
        }
コード例 #2
0
        public async Task QueryAsync_WhenCalled_AssertPostalCodeWasCalledOnGetPostalCodeQuery()
        {
            QueryHandler sut = CreateSut();

            Mock <IGetPostalCodeQuery> query = CreateQueryMock();
            await sut.QueryAsync(query.Object);

            query.Verify(m => m.PostalCode, Times.Once);
        }
コード例 #3
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasNotReturnedFromContactRepository_ReturnsNull()
        {
            QueryHandler sut = CreateSut(false);

            IGetPostalCodeQuery query  = CreateQueryMock().Object;
            IPostalCode         result = await sut.QueryAsync(query);

            Assert.That(result, Is.Null);
        }
コード例 #4
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasNotReturnedFromContactRepository_AssertApplyLogicForPrincipalWasNotCalledOnCountryHelper()
        {
            QueryHandler sut = CreateSut(false);

            IGetPostalCodeQuery query = CreateQueryMock().Object;
            await sut.QueryAsync(query);

            _countryHelperMock.Verify(m => m.ApplyLogicForPrincipal(It.IsAny <ICountry>()), Times.Never);
        }
コード例 #5
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasReturnedFromContactRepository_ReturnsPostalCodeCollectionFromContactRepository()
        {
            IPostalCode  postalCode = _fixture.BuildPostalCodeMock().Object;
            QueryHandler sut        = CreateSut(postalCode: postalCode);

            IGetPostalCodeQuery query  = CreateQueryMock().Object;
            IPostalCode         result = await sut.QueryAsync(query);

            Assert.That(result, Is.EqualTo(postalCode));
        }
コード例 #6
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasNotReturnedFromContactRepository_AssertCountrySetterWasNotCalledOnPostalCode()
        {
            Mock <IPostalCode> postalCodeMock = _fixture.BuildPostalCodeMock();
            QueryHandler       sut            = CreateSut(false, postalCodeMock.Object);

            IGetPostalCodeQuery query = CreateQueryMock().Object;
            await sut.QueryAsync(query);

            postalCodeMock.VerifySet(m => m.Country = It.IsAny <ICountry>(), Times.Never);
        }
コード例 #7
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasReturnedFromContactRepository_AssertCountrySetterWasCalledOnPostalCode()
        {
            Mock <IPostalCode> postalCodeMock = _fixture.BuildPostalCodeMock();
            ICountry           country        = _fixture.Create <ICountry>();
            QueryHandler       sut            = CreateSut(postalCode: postalCodeMock.Object, country: country);

            IGetPostalCodeQuery query = CreateQueryMock().Object;
            await sut.QueryAsync(query);

            postalCodeMock.VerifySet(m => m.Country = It.Is <ICountry>(value => value == country), Times.Once);
        }
コード例 #8
0
        public async Task QueryAsync_WhenCalledAndPostalCodeWasReturnedFromContactRepository_AssertApplyLogicForPrincipalWasCalledOnCountryHelper()
        {
            ICountry     country    = _fixture.Create <ICountry>();
            IPostalCode  postalCode = _fixture.BuildPostalCodeMock(country).Object;
            QueryHandler sut        = CreateSut(postalCode: postalCode);

            IGetPostalCodeQuery query = CreateQueryMock().Object;
            await sut.QueryAsync(query);

            _countryHelperMock.Verify(m => m.ApplyLogicForPrincipal(It.Is <ICountry>(value => value == country)), Times.Once);
        }
コード例 #9
0
        public async Task QueryAsync_WhenCalled_AssertValidateWasCalledOnGetPostalCodeQuery()
        {
            QueryHandler sut = CreateSut();

            Mock <IGetPostalCodeQuery> query = CreateQueryMock();
            await sut.QueryAsync(query.Object);

            query.Verify(m => m.Validate(
                             It.Is <IValidator>(value => value == _validatorMock.Object),
                             It.Is <IContactRepository>(value => value == _contactRepositoryMock.Object)),
                         Times.Once);
        }
コード例 #10
0
        public async Task QueryAsync_WhenCalled_AssertGetPostalCodeAsyncWasCalledOnContactRepository()
        {
            QueryHandler sut = CreateSut();

            string countryCode        = _fixture.Create <string>();
            string postalCode         = _fixture.Create <string>();
            IGetPostalCodeQuery query = CreateQueryMock(countryCode, postalCode).Object;
            await sut.QueryAsync(query);

            _contactRepositoryMock.Verify(m => m.GetPostalCodeAsync(
                                              It.Is <string>(value => string.CompareOrdinal(value, countryCode) == 0),
                                              It.Is <string>(value => string.CompareOrdinal(value, postalCode) == 0)),
                                          Times.Once);
        }