public void TestWorkgroupPermissionNewParentWorkgroupDoesNotSave() { var thisFar = false; try { #region Arrange var record = GetValid(9); record.ParentWorkgroup = new Workgroup(); thisFar = true; #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(record); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act } catch (Exception ex) { Assert.IsTrue(thisFar); Assert.IsNotNull(ex); Assert.AreEqual( "object references an unsaved transient instance - save the transient instance before flushing or set cascade action for the property to something that would make it autosave. Type: Purchasing.Core.Domain.Workgroup, Entity: Purchasing.Core.Domain.Workgroup", ex.Message); throw; } }
public void TestWorkgroupPermissionsFieldRoleWithAValueOfNullDoesNotSave() { WorkgroupPermission record = null; try { #region Arrange record = GetValid(9); record.Role = null; #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(record); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act } catch (Exception) { Assert.IsNotNull(record); Assert.AreEqual(record.Role, null); var results = record.ValidationResults().AsMessageList(); results.AssertErrorsAre("The Role field is required."); Assert.IsTrue(record.IsTransient()); Assert.IsFalse(record.IsValid()); throw; } }
public void TestDeletePeoplePostWhenMultipleRolesAvailable3() { #region Arrange SetupDataForPeopleList(); var rolesToRemove = new string[1]; rolesToRemove[0] = Role.Codes.Purchaser; #endregion Arrange #region Act var result = Controller.DeletePeople(3, 21, Role.Codes.Purchaser, new WorkgroupPermission(), rolesToRemove) .AssertActionRedirect() .ToAction <WorkgroupController>(a => a.People(3, Role.Codes.Purchaser)); #endregion Act #region Assert Assert.IsNotNull(result); Assert.AreEqual(3, result.RouteValues["id"]); Assert.AreEqual(Role.Codes.Purchaser, result.RouteValues["roleFilter"]); WorkgroupPermissionRepository.AssertWasCalled(a => a.Remove(Arg <WorkgroupPermission> .Is.Anything)); var args = (WorkgroupPermission)WorkgroupPermissionRepository.GetArgumentsForCallsMadeOn(a => a.Remove(Arg <WorkgroupPermission> .Is.Anything))[0][0]; Assert.IsNotNull(args); Assert.AreEqual(21, args.Id); Assert.AreEqual("1 role removed from FirstName3 LastName3", Controller.Message); WorkgroupService.AssertWasCalled(a => a.RemoveFromCache(WorkgroupPermissionRepository.Queryable.Single(b => b.Id == 21))); #endregion Assert }
public void TestDeletePeoplePostWhenOnlyOneRoleAvailable2() { #region Arrange SetupDataForPeopleList(); #endregion Arrange #region Act var result = Controller.DeletePeople(3, 18, Role.Codes.AccountManager, new WorkgroupPermission(), null) .AssertActionRedirect() .ToAction <WorkgroupController>(a => a.People(3, Role.Codes.AccountManager)); #endregion Act #region Assert Assert.IsNotNull(result); Assert.AreEqual(3, result.RouteValues["id"]); Assert.AreEqual(Role.Codes.AccountManager, result.RouteValues["roleFilter"]); Assert.AreEqual("Person successfully removed from role.", Controller.Message); WorkgroupPermissionRepository.AssertWasCalled(a => a.Remove(Arg <WorkgroupPermission> .Is.Anything)); var args = (WorkgroupPermission)WorkgroupPermissionRepository.GetArgumentsForCallsMadeOn(a => a.Remove(Arg <WorkgroupPermission> .Is.Anything))[0][0]; Assert.IsNotNull(args); Assert.AreEqual(18, args.Id); WorkgroupService.AssertWasCalled(a => a.RemoveFromCache(WorkgroupPermissionRepository.Queryable.Single(b => b.Id == 18))); #endregion Assert }
public void TestIsDefaultForAccountIsTrueSaves() { #region Arrange var workgroupPermission = GetValid(9); workgroupPermission.IsDefaultForAccount = true; #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(workgroupPermission); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.IsTrue(workgroupPermission.IsDefaultForAccount); Assert.IsFalse(workgroupPermission.IsTransient()); Assert.IsTrue(workgroupPermission.IsValid()); #endregion Assert }
public void TestWorkgroupPermissionWithNullParentWorkgroupSaves() { #region Arrange var record = GetValid(9); record.ParentWorkgroup = null; #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(record); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.AreEqual(null, record.ParentWorkgroup); Assert.IsFalse(record.IsTransient()); Assert.IsTrue(record.IsValid()); #endregion Assert }
public void TestWorkgroupPermissionWithExistingParentWorkgroupSaves() { #region Arrange var record = GetValid(9); record.ParentWorkgroup = WorkgroupRepository.Queryable.Single(a => a.Id == 3); #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(record); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.AreEqual(3, record.ParentWorkgroup.Id); Assert.IsFalse(record.IsTransient()); Assert.IsTrue(record.IsValid()); #endregion Assert }
public void TestIsFullFeaturedIsFalseSaves() { #region Arrange WorkgroupPermission workgroupPermission = GetValid(9); workgroupPermission.IsFullFeatured = false; #endregion Arrange #region Act WorkgroupPermissionRepository.DbContext.BeginTransaction(); WorkgroupPermissionRepository.EnsurePersistent(workgroupPermission); WorkgroupPermissionRepository.DbContext.CommitTransaction(); #endregion Act #region Assert Assert.IsFalse(workgroupPermission.IsFullFeatured); Assert.IsFalse(workgroupPermission.IsTransient()); Assert.IsTrue(workgroupPermission.IsValid()); #endregion Assert }