public void TestNameWithTooLongValueDoesNotSave() { SubAccount subAccount = null; try { #region Arrange subAccount = GetValid(9); subAccount.Name = "x".RepeatTimes((40 + 1)); #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act } catch (Exception) { Assert.IsNotNull(subAccount); Assert.AreEqual(40 + 1, subAccount.Name.Length); var results = subAccount.ValidationResults().AsMessageList(); results.AssertErrorsAre(string.Format("The field {0} must be a string with a maximum length of {1}.", "Name", "40")); //Assert.IsTrue(subAccount.IsTransient()); Assert.IsFalse(subAccount.IsValid()); throw; } }
public void TestSubAccountNumberWithSpacesOnlyDoesNotSave() { SubAccount subAccount = null; try { #region Arrange subAccount = GetValid(9); subAccount.SubAccountNumber = " "; #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act } catch (Exception) { Assert.IsNotNull(subAccount); var results = subAccount.ValidationResults().AsMessageList(); results.AssertErrorsAre(string.Format("The {0} field is required.", "SubAccountNumber")); //Assert.IsTrue(subAccount.IsTransient()); Assert.IsFalse(subAccount.IsValid()); throw; } }
public void TestNameWithOneCharacterSaves() { #region Arrange var subAccount = GetValid(9); subAccount.Name = "x"; #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.IsFalse(subAccount.IsTransient()); Assert.IsTrue(subAccount.IsValid()); #endregion Assert }
public void TestIsActiveIsTrueSaves() { #region Arrange var subAccount = GetValid(9); subAccount.IsActive = true; #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.IsTrue(subAccount.IsActive); Assert.IsFalse(subAccount.IsTransient()); Assert.IsTrue(subAccount.IsValid()); #endregion Assert }
public void TestNameWithLongValueSaves() { #region Arrange var subAccount = GetValid(9); subAccount.Name = "x".RepeatTimes(40); #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.AreEqual(40, subAccount.Name.Length); Assert.IsFalse(subAccount.IsTransient()); Assert.IsTrue(subAccount.IsValid()); #endregion Assert }
public void TestAccountNumberWithOneCharacterSaves() { #region Arrange AccountRepository.DbContext.BeginTransaction(); var account = CreateValidEntities.Account(1); account.SetIdTo("x"); AccountRepository.EnsurePersistent(account); var subAccount = GetValid(9); subAccount.AccountNumber = "x"; #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.IsFalse(subAccount.IsTransient()); Assert.IsTrue(subAccount.IsValid()); #endregion Assert }
public void TestAccountNumberWithLongValueSaves() { AccountRepository.DbContext.BeginTransaction(); var account = CreateValidEntities.Account(1); account.SetIdTo("x".RepeatTimes(10)); AccountRepository.EnsurePersistent(account); #region Arrange var subAccount = GetValid(9); subAccount.AccountNumber = "x".RepeatTimes(10); #endregion Arrange #region Act SubAccountRepository.DbContext.BeginTransaction(); SubAccountRepository.EnsurePersistent(subAccount); SubAccountRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.AreEqual(10, subAccount.AccountNumber.Length); Assert.IsFalse(subAccount.IsTransient()); Assert.IsTrue(subAccount.IsValid()); #endregion Assert }