public void GivenGeneralLedgerAccount_WhenSettingDefaultCostCenter_ThenDefaultCostCenterMustBeInListOfAllowedCostCenters() { var costCenter = new CostCenterBuilder(this.Session).WithName("costCenter").Build(); var glAccount = new GeneralLedgerAccountBuilder(this.Session) .WithAccountNumber("0001") .WithName("GeneralLedgerAccount") .WithCostCenterAccount(true) .WithCostCenterRequired(true) .WithDefaultCostCenter(costCenter) .WithBalanceSheetAccount(true) .WithSide(new DebitCreditConstants(this.Session).Debit) .WithGeneralLedgerAccountType(new GeneralLedgerAccountTypeBuilder(this.Session).WithDescription("accountType").Build()) .WithGeneralLedgerAccountGroup(new GeneralLedgerAccountGroupBuilder(this.Session).WithDescription("accountGroup").Build()) .Build(); var derivationLog = this.Session.Derive(false); var expectedMessage = ErrorMessages.CostCenterNotAllowed; Assert.Equal(derivationLog.Errors[0].Message, expectedMessage); glAccount.AddCostCentersAllowed(costCenter); Assert.False(this.Session.Derive(false).HasErrors); }
public void GivenCostCenter_WhenDeriving_ThenPostBuildRelationsMustExist() { var costCenter = new CostCenterBuilder(this.Session) .WithName("CostCenter") .Build(); Assert.True(costCenter.ExistUniqueId); }
public void GivenCostCenter_WhenDeriving_ThenPostBuildRelationsMustExist() { var costCenter = new CostCenterBuilder(this.DatabaseSession) .WithName("CostCenter") .Build(); Assert.IsTrue(costCenter.ExistUniqueId); }
public void GivenCostCenter_WhenDeriving_ThenRequiredRelationsMustExist() { var builder = new CostCenterBuilder(this.DatabaseSession); builder.Build(); Assert.IsTrue(this.DatabaseSession.Derive().HasErrors); this.DatabaseSession.Rollback(); builder.WithName("CostCenter"); builder.Build(); Assert.IsFalse(this.DatabaseSession.Derive().HasErrors); }
public void GivenCostCenter_WhenDeriving_ThenRequiredRelationsMustExist() { var builder = new CostCenterBuilder(this.Session); builder.Build(); Assert.True(this.Session.Derive(false).HasErrors); this.Session.Rollback(); builder.WithName("CostCenter"); builder.Build(); Assert.False(this.Session.Derive(false).HasErrors); }
public void GivenGeneralLedgerAccount_WhenSettingDefaultCostCenter_ThenDefaultCostCenterMustBeInListOfAllowedCostCenters() { var costCenter = new CostCenterBuilder(this.DatabaseSession).WithName("costCenter").Build(); var glAccount = new GeneralLedgerAccountBuilder(this.DatabaseSession) .WithAccountNumber("0001") .WithName("GeneralLedgerAccount") .WithCostCenterAccount(true) .WithCostCenterRequired(true) .WithDefaultCostCenter(costCenter) .WithBalanceSheetAccount(true) .WithSide(new DebitCreditConstants(this.DatabaseSession).Debit) .WithGeneralLedgerAccountType(new GeneralLedgerAccountTypeBuilder(this.DatabaseSession).WithDescription("accountType").Build()) .WithGeneralLedgerAccountGroup(new GeneralLedgerAccountGroupBuilder(this.DatabaseSession).WithDescription("accountGroup").Build()) .Build(); var derivationLog = this.DatabaseSession.Derive(); var expectedMessage = ErrorMessages.CostCenterNotAllowed; Assert.AreEqual(derivationLog.Errors[0].Message, expectedMessage); glAccount.AddCostCenterAllowed(costCenter); Assert.IsFalse(this.DatabaseSession.Derive().HasErrors); }