private static void CopyCompanyCommandPropertiesFrom(this ICompanyCommand target, ICompanyCommand src) { if (src == null || target == null) return; target.CommandCompanyId = src.CommandCompanyId; }
//----------------------------------------------------------------// public FeedManager(ISession session, IServiceProvider provider) { _commandFactory = provider.GetService <ICommandFactory>(); _queryFactory = provider.GetService <IQueryFactory>(); _genreCommand = _commandFactory.CreateCommand <IGenreCommand>(session); _companyCommand = _commandFactory.CreateCommand <ICompanyCommand>(session); _countryCommand = _commandFactory.CreateCommand <ICountryCommand>(session); _peopleCommad = _commandFactory.CreateCommand <IPeopleCommand>(session); _movieCommand = _commandFactory.CreateCommand <IMovieCommand>(session); _castCommand = _commandFactory.CreateCommand <ICastCommand>(session); _crewCommand = _commandFactory.CreateCommand <ICrewCommand>(session); _jobCommand = _commandFactory.CreateCommand <IJobCommand>(session); _departmentCommand = _commandFactory.CreateCommand <IDepartmentCommand>(session); _movieGenreCommand = _commandFactory.CreateCommand <IMovieGenreCommand>(session); _movieCompanyCommand = _commandFactory.CreateCommand <IMovieCompanyCommand>(session); _movieCountryCommand = _commandFactory.CreateCommand <IMovieCountryCommand>(session); _movieCountryQuery = _queryFactory.CreateQuery <IMovieCountryQuery>(session); _movieCompanyQuery = _queryFactory.CreateQuery <IMovieCompanyQuery>(session); _movieGenreQuery = _queryFactory.CreateQuery <IMovieGenreQuery>(session); _movieQuery = _queryFactory.CreateQuery <IMovieQuery>(session); _genreQuery = _queryFactory.CreateQuery <IGenreQuery>(session); _companyQuery = _queryFactory.CreateQuery <ICompanyQuery>(session); _countryQuery = _queryFactory.CreateQuery <ICountryQuery>(session); _castQuery = _queryFactory.CreateQuery <ICastQuery>(session); _crewQuery = _queryFactory.CreateQuery <ICrewQuery>(session); _peopleQuery = _queryFactory.CreateQuery <IPeopleQuery>(session); _jobQuery = _queryFactory.CreateQuery <IJobQuery>(session); _departmentQuery = _queryFactory.CreateQuery <IDepartmentQuery>(session); _loadDataService = provider.GetRequiredService <ILoadDataService>(); }
public CompanyService( ICompanyCommand companyCommand, ICompanyQuery companyQuery) { _companyCommand = companyCommand; _companyQuery = companyQuery; }
public void Validate_WhenCalled_ReturnsValidator() { ICompanyCommand sut = CreateSut(); IValidator result = sut.Validate(_validatorMockContext.ValidatorMock.Object); Assert.That(result, Is.EqualTo(_validatorMockContext.ValidatorMock.Object)); }
public void Validate_WhenValidatorIsNull_ThrowsArgumentNullException() { ICompanyCommand sut = CreateSut(); ArgumentNullException result = Assert.Throws <ArgumentNullException>(() => sut.Validate(null)); Assert.That(result.ParamName, Is.EqualTo("validator")); }
public CompanyService(ICompanyQuery companyQuery, ICompanyCommand companyCommand, IContactQuery contactQuery, IMapper mapper) { _companyQuery = companyQuery; _companyCommand = companyCommand; _contactQuery = contactQuery; _mapper = mapper; }
public void ToDomain_WhenCommandDoesNotHaveAddressCommand_ReturnsContactWithEmptyAddress() { ICompanyCommand sut = CreateSut(hasAddressCommand: false); IAddress result = sut.ToDomain().Address; Assert.That(result.DisplayAddress, Is.EqualTo(string.Empty)); }
public void ToDomain_WhenCommandDoesNotHaveSecondaryPhone_ReturnsContactWithoutSecondaryPhone() { ICompanyCommand sut = CreateSut(hasSecondaryPhone: false); string result = sut.ToDomain().SecondaryPhone; Assert.That(result, Is.Null); }
public void ToDomain_WhenCalled_ReturnsCompany() { ICompanyCommand sut = CreateSut(); ICompany result = sut.ToDomain(); Assert.That(result, Is.TypeOf <Company>()); }
public void ToDomain_WhenCommandDoesNotHaveHomePage_ReturnsContactWithoutHomePage() { ICompanyCommand sut = CreateSut(hasHomePage: false); string result = sut.ToDomain().HomePage; Assert.That(result, Is.Null); }
public void Validate_WhenCommandDoesNotHaveAddressCommand_AssertValidateWasNotCalledOnAddressCommand() { Mock <IAddressCommand> addressCommandMock = CreateAddressCommandMock(); ICompanyCommand sut = CreateSut(hasAddressCommand: false, addressCommand: addressCommandMock.Object); sut.Validate(_validatorMockContext.ValidatorMock.Object); addressCommandMock.Verify(m => m.Validate(It.IsAny <IValidator>()), Times.Never); }
public void ToDomain_WhenCommandHasAddressCommandWhichAreEmpty_ReturnsContactWithEmptyAddress() { IAddressCommand addressCommand = CreateAddressCommandMock(true).Object; ICompanyCommand sut = CreateSut(addressCommand: addressCommand); IAddress result = sut.ToDomain().Address; Assert.That(result.DisplayAddress, Is.EqualTo(string.Empty)); }
public void ToDomain_WhenCommandHasHomePage_ReturnsContactWithHomePageFromCommand() { string homePage = _fixture.Create <string>(); ICompanyCommand sut = CreateSut(homePage: homePage); string result = sut.ToDomain().HomePage; Assert.That(result, Is.EqualTo(homePage)); }
public void ToDomain_WhenCommandHasCompanyNameCommand_AssertToDomainWasCalledOnCompanyNameCommand() { Mock <ICompanyNameCommand> companyNameCommandMock = CreateCompanyNameCommandMock(); ICompanyCommand sut = CreateSut(companyNameCommandMock.Object); sut.ToDomain(); companyNameCommandMock.Verify(m => m.ToDomain(), Times.Once()); }
public void ToDomain_WhenCommandDoesNotHaveAddressCommand_AssertToDomainWasNotCalledOnAddressCommand() { Mock <IAddressCommand> addressCommandMock = CreateAddressCommandMock(); ICompanyCommand sut = CreateSut(hasAddressCommand: false, addressCommand: addressCommandMock.Object); sut.ToDomain(); addressCommandMock.Verify(m => m.ToDomain(), Times.Never); }
public void ToDomain_WhenCommandHasAddressCommandWhichAreNotEmpty_AssertToDomainWasCalledOnAddressCommand() { Mock <IAddressCommand> addressCommandMock = CreateAddressCommandMock(); ICompanyCommand sut = CreateSut(addressCommand: addressCommandMock.Object); sut.ToDomain(); addressCommandMock.Verify(m => m.ToDomain(), Times.Once()); }
public void Validate_WhenCommandHasAddressCommand_AssertValidateWasCalledOnAddressCommand() { Mock <IAddressCommand> addressCommandMock = CreateAddressCommandMock(); ICompanyCommand sut = CreateSut(addressCommand: addressCommandMock.Object); sut.Validate(_validatorMockContext.ValidatorMock.Object); addressCommandMock.Verify(m => m.Validate(It.Is <IValidator>(value => value == _validatorMockContext.ValidatorMock.Object)), Times.Once); }
public void ToDomain_WhenCommandHasSecondaryPhone_ReturnsContactWithSecondaryPhoneFromCommand() { string secondaryPhone = _fixture.Create <string>(); ICompanyCommand sut = CreateSut(secondaryPhone: secondaryPhone); string result = sut.ToDomain().SecondaryPhone; Assert.That(result, Is.EqualTo(secondaryPhone)); }
public void Validate_WhenCommandDoesNotHaveCompanyNameCommand_AssertValidateWasNotCalledOnCompanyNameCommand() { Mock <ICompanyNameCommand> companyNameCommandMock = CreateCompanyNameCommandMock(); ICompanyCommand sut = CreateSut(false, companyNameCommandMock.Object); sut.Validate(_validatorMockContext.ValidatorMock.Object); companyNameCommandMock.Verify(m => m.Validate(It.IsAny <IValidator>()), Times.Never); }
public void ToDomain_WhenCalled_ReturnsContactWithValueFromToDomainOnNameCommand() { ICompanyName companyName = _fixture.BuildCompanyNameMock().Object; ICompanyNameCommand companyNameCommand = CreateCompanyNameCommandMock(companyName).Object; ICompanyCommand sut = CreateSut(companyNameCommand); IName result = sut.ToDomain().Name; Assert.That(result, Is.EqualTo(companyName)); }
public void ToDomain_WhenCommandHasCompanyCommand_ReturnsContactWithCompanyFromCommand() { ICompany company = _fixture.BuildCompanyMock().Object; ICompanyCommand companyCommand = CreateCompanyCommandMock(company).Object; IContactDataCommand sut = CreateSut(companyCommand: companyCommand); ICompany result = sut.ToDomain(_contactRepositoryMock.Object, _accountingRepositoryMock.Object).Company; Assert.That(result, Is.EqualTo(company)); }
public void ToDomain_WhenCommandHasAddressCommandWhichAreNotEmpty_ReturnsContactWithValueFromToDomainOnAddressCommand() { IAddress address = _fixture.BuildAddressMock().Object; IAddressCommand addressCommand = CreateAddressCommandMock(address: address).Object; ICompanyCommand sut = CreateSut(addressCommand: addressCommand); IAddress result = sut.ToDomain().Address; Assert.That(result, Is.EqualTo(address)); }
public void Validate_WhenCalled_AssertShouldNotBeNullWasCalledOnObjectValidatorForName() { ICompanyNameCommand companyNameCommand = CreateCompanyNameCommandMock().Object; ICompanyCommand sut = CreateSut(companyNameCommand: companyNameCommand); sut.Validate(_validatorMockContext.ValidatorMock.Object); _validatorMockContext.ObjectValidatorMock.Verify(m => m.ShouldNotBeNull( It.Is <ICompanyNameCommand>(value => value == companyNameCommand), It.Is <Type>(value => value == sut.GetType()), It.Is <string>(value => string.CompareOrdinal(value, "Name") == 0)), Times.Once); }
public void Validate_WhenCalled_AssertShouldMatchPatternWasCalledOnStringValidatorForHomePage() { string homePage = _fixture.Create <string>(); ICompanyCommand sut = CreateSut(homePage: homePage); sut.Validate(_validatorMockContext.ValidatorMock.Object); _validatorMockContext.StringValidatorMock.Verify(m => m.ShouldMatchPattern( It.Is <string>(value => string.CompareOrdinal(value, homePage) == 0), It.Is <Regex>(value => string.CompareOrdinal(value.ToString(), RegexTestHelper.UrlRegexPattern) == 0), It.Is <Type>(value => value == sut.GetType()), It.Is <string>(value => string.CompareOrdinal(value, "HomePage") == 0), It.Is <bool>(value => value)), Times.Once); }
public void Validate_WhenCalled_AssertShouldHaveMaxLengthWasCalledOnStringValidatorForHomePage() { string homePage = _fixture.Create <string>(); ICompanyCommand sut = CreateSut(homePage: homePage); sut.Validate(_validatorMockContext.ValidatorMock.Object); _validatorMockContext.StringValidatorMock.Verify(m => m.ShouldHaveMaxLength( It.Is <string>(value => string.CompareOrdinal(value, homePage) == 0), It.Is <int>(value => value == 256), It.Is <Type>(value => value == sut.GetType()), It.Is <string>(value => string.CompareOrdinal(value, "HomePage") == 0), It.Is <bool>(value => value)), Times.Once); }
public void Validate_WhenCalled_AssertShouldHaveMinLengthWasCalledOnStringValidatorForSecondaryPhone() { string secondaryPhone = _fixture.Create <string>(); ICompanyCommand sut = CreateSut(secondaryPhone: secondaryPhone); sut.Validate(_validatorMockContext.ValidatorMock.Object); _validatorMockContext.StringValidatorMock.Verify(m => m.ShouldHaveMinLength( It.Is <string>(value => string.CompareOrdinal(value, secondaryPhone) == 0), It.Is <int>(value => value == 1), It.Is <Type>(value => value == sut.GetType()), It.Is <string>(value => string.CompareOrdinal(value, "SecondaryPhone") == 0), It.Is <bool>(value => value)), Times.Once); }
private static void RegisterCompanyCommand(this IBelongToCompany document, ICompanyCommand command) { if (document == null || command == null) return; if (string.IsNullOrWhiteSpace(document.CompanyId)) document.CompanyId = command.CommandCompanyId; if (command.CommandCompanyId == null) throw new ApplicationException(string.Format("Command doesn't have company id. {0}, {1}", command.GetType().Name, command.ToJson())); if (document.CompanyId == AdministratorCompany) //HACK: allow updates of admin docs return; if (document.CompanyId == command.CommandCompanyId) return; var msg = string.Format("Attempt to update different company. document: {0}. command {1}", document.ToJson(), command.ToJson()); throw new AccessViolationException(msg); }
private IContactDataCommand CreateSut(INameCommand nameCommand = null, bool hasAddressCommand = true, IAddressCommand addressCommand = null, bool hasHomePhone = true, string homePhone = null, bool hasMobilePhone = true, string mobilePhone = null, bool hasBirthday = true, DateTime?birthday = null, bool hasMailAddress = true, string mailAddress = null, bool hasCompanyCommand = true, ICompanyCommand companyCommand = null, int?contactGroupIdentifier = null, IContactGroup contactGroup = null, int?paymentTermIdentifier = null, bool hasAcquaintance = true, string acquaintance = null, bool hasPersonalHomePage = true, string personalHomePage = null, int?lendingLimit = null, IPaymentTerm paymentTerm = null) { _contactRepositoryMock.Setup(m => m.GetContactGroupAsync(It.IsAny <int>())) .Returns(Task.Run(() => contactGroup ?? _fixture.BuildContactGroupMock().Object)); _accountingRepositoryMock.Setup(m => m.GetPaymentTermAsync(It.IsAny <int>())) .Returns(Task.Run(() => paymentTerm ?? _fixture.BuildPaymentTermMock().Object)); return(_fixture.Build <Sut>() .With(m => m.Name, nameCommand ?? CreateNameCommandMock().Object) .With(m => m.Address, hasAddressCommand ? addressCommand ?? CreateAddressCommandMock().Object : null) .With(m => m.HomePhone, hasHomePhone ? homePhone ?? _fixture.Create <string>() : null) .With(m => m.MobilePhone, hasMobilePhone ? mobilePhone ?? _fixture.Create <string>() : null) .With(m => m.Birthday, hasBirthday ? birthday ?? _fixture.Create <DateTime>() : (DateTime?)null) .With(m => m.MailAddress, hasMailAddress ? mailAddress ?? _fixture.Create <string>() : null) .With(m => m.Company, hasCompanyCommand ? companyCommand ?? CreateCompanyCommandMock().Object : null) .With(m => m.ContactGroupIdentifier, contactGroupIdentifier ?? _fixture.Create <int>()) .With(m => m.Acquaintance, hasAcquaintance ? acquaintance ?? _fixture.Create <string>() : null) .With(m => m.PersonalHomePage, hasPersonalHomePage ? personalHomePage ?? _fixture.Create <string>() : null) .With(m => m.LendingLimit, lendingLimit ?? _fixture.Create <int>()) .With(m => m.PaymentTermIdentifier, paymentTermIdentifier ?? _fixture.Create <int>()) .Create()); }
private IContactDataCommand CreateSut(bool hasNameCommand = true, INameCommand nameCommand = null, bool hasAddressCommand = true, IAddressCommand addressCommand = null, string homePhone = null, string mobilePhone = null, bool hasBirthday = true, DateTime?birthday = null, string mailAddress = null, bool hasCompanyCommand = true, ICompanyCommand companyCommand = null, int?contactGroupIdentifier = null, string acquaintance = null, string personalHomePage = null, int?lendingLimit = null, int?paymentTermIdentifier = null) { return(_fixture.Build <Sut>() .With(m => m.Name, hasNameCommand ? nameCommand ?? CreateNameCommandMock().Object : null) .With(m => m.Address, hasAddressCommand ? addressCommand ?? CreateAddressCommandMock().Object : null) .With(m => m.HomePhone, homePhone ?? _fixture.Create <string>()) .With(m => m.MobilePhone, mobilePhone ?? _fixture.Create <string>()) .With(m => m.Birthday, hasBirthday ? birthday ?? _fixture.Create <DateTime>() : (DateTime?)null) .With(m => m.MailAddress, mailAddress ?? _fixture.Create <string>()) .With(m => m.Company, hasCompanyCommand ? companyCommand ?? CreateCompanyCommandMock().Object : null) .With(m => m.ContactGroupIdentifier, contactGroupIdentifier ?? _fixture.Create <int>()) .With(m => m.Acquaintance, acquaintance ?? _fixture.Create <string>()) .With(m => m.PersonalHomePage, personalHomePage ?? _fixture.Create <string>()) .With(m => m.LendingLimit, lendingLimit ?? _fixture.Create <int>()) .With(m => m.PaymentTermIdentifier, paymentTermIdentifier ?? _fixture.Create <int>()) .Create()); }