public void Add_ToDeletedParentWithChangedState_AddsNodeAndIsDeletedTrue(NodeState state) { // Arrange var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid(), IsDeleted = true, State = state }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var newNode = new TreeNode { ParentId = root.Id }; // Act dbTreeRepository.Add(newNode); // Assert Assert.That(treeContext.Tree[newNode.Id], Is.EqualTo(newNode)); Assert.That(treeContext.Tree[newNode.Id].IsDeleted, Is.True); }
public void Add_NodeIdIsEmpty_SetsNewId() { // Arrange var treeContext = new DbTreeContext(); var dbTreeRepository = new DbTreeRepository(treeContext); var newNode = new TreeNode(); // Act dbTreeRepository.Add(newNode); // Assert Assert.That(newNode.Id, Is.Not.EqualTo(Guid.Empty)); }
public void Add_NodeIdIsNotEmpty_DoesNotSetNewId() { // Arrange var treeContext = new DbTreeContext(); var dbTreeRepository = new DbTreeRepository(treeContext); var id = Guid.NewGuid(); var newNode = new TreeNode { Id = id }; // Act dbTreeRepository.Add(newNode); // Assert Assert.That(newNode.Id, Is.EqualTo(id)); }
public void Add_OneMoreRoot_ThrowsArgumentException() { // Arrange var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid() }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var newNode = new TreeNode(); // Act // Assert Assert.That(() => dbTreeRepository.Add(newNode), Throws.ArgumentException); }
public void Add_ToDeletedParent_ThrowsInvalidOperationException() { // Arrange var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid(), IsDeleted = true }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var newNode = new TreeNode { ParentId = root.Id }; // Act // Assert Assert.That(() => dbTreeRepository.Add(newNode), Throws.InvalidOperationException); }
public void Add_NodeIsValid_AddsNode() { // Arrange var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid() }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var newNode = new TreeNode { ParentId = root.Id }; // Act dbTreeRepository.Add(newNode); // Assert Assert.That(treeContext.Tree[newNode.Id], Is.EqualTo(newNode)); }