public void CannotCreateWithUnknownCurrency() { var productSpec = DataGenerator.NewProductSpec(); productSpec.PriceQuoteCurrency = "XYZ"; using (var dbContext = fixture.NewDbContext()) { dbContext.ProductSpecifications.Add(productSpec); var exception = Assert.Throws <DbUpdateException>(() => dbContext.SaveChanges()); Assert.Contains("FOREIGN KEY", exception.ToString()); } }
public void ClearingAccountIdIsAutogenerated() { var account = DataGenerator.NewClearingAccount(); using (var dbContext = fixture.NewDbContext()) { dbContext.ClearingAccounts.Add(account); dbContext.SaveChanges(); Assert.True(account.Id > 0); } using (var dbContext = fixture.NewDbContext()) { Assert.True(dbContext.ClearingAccounts.Any(ca => ca.Id == account.Id)); } }
public void SubAccountNameIsUnique() { var account = GivenUnsavedSubAccount(); using (var dbContext = fixture.NewDbContext()) { dbContext.SubAccounts.Add(account); dbContext.SaveChanges(); } using (var dbContext = fixture.NewDbContext()) { dbContext.SubAccounts.Add(new SubAccount { Name = account.Name, AccountOwner = "WTG" }); Assert.Throws <DbUpdateException>(() => dbContext.SaveChanges()); } }
public void CannotCreateCurrencyWithExistingCode() { using (var dbContext = fixture.NewDbContext()) { dbContext.UnitsOfMeasure.Add(new UnitOfMeasure { Code = "XXX", Name = "Some" }); dbContext.SaveChanges(); } using (var dbContext = fixture.NewDbContext()) { dbContext.UnitsOfMeasure.Add(new UnitOfMeasure { Code = "XXX", Name = "Some other" }); Assert.Throws <DbUpdateException>(() => dbContext.SaveChanges()); } }
public void SymbolShouldBeUnique() { var existingProduct = GivenASavedProduct(); using var dbContext = fixture.NewDbContext(); var newProduct = DataGenerator.NewProduct(); newProduct.Symbol = existingProduct.Symbol; dbContext.Products.Add(newProduct); Assert.Throws <DbUpdateException>(() => dbContext.SaveChanges()); }