public void Update_UpdatedNodeWithChangedState_StateIsTheSame(NodeState state) { // Arrange const string TEXT = "text"; var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid(), State = state }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var updatedNode = new TreeNode { Id = root.Id, Value = TEXT }; // Act dbTreeRepository.Update(updatedNode); // Assert Assert.That(treeContext.Tree[root.Id].State, Is.EqualTo(state)); }
public void Update_UpdatedNodeWithDeleteState_UpdatesNode() { // Arrange const string TEXT = "text"; var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid(), IsDeleted = true, State = NodeState.Deleted }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var updatedNode = new TreeNode { Id = root.Id, Value = TEXT }; // Act dbTreeRepository.Update(updatedNode); // Assert Assert.That(treeContext.Tree[root.Id].Value, Is.EqualTo(TEXT)); }
public void Update_NodeIsValid_UpdatesNode() { // Arrange const string TEXT = "text"; var treeContext = new DbTreeContext(); var root = new TreeNode { Id = Guid.NewGuid() }; treeContext.Tree.Add(root.Id, root); var dbTreeRepository = new DbTreeRepository(treeContext); var updatedNode = new TreeNode { Id = root.Id, Value = TEXT }; // Act dbTreeRepository.Update(updatedNode); // Assert Assert.That(treeContext.Tree[root.Id].Value, Is.EqualTo(TEXT)); Assert.That(treeContext.Tree[root.Id].State, Is.EqualTo(NodeState.Modified)); }
public void Update_NodeNotExists_ThrowsKeyNotFoundException() { // Arrange var treeContext = new DbTreeContext(); var dbTreeRepository = new DbTreeRepository(treeContext); var updatedNode = new TreeNode { Id = Guid.NewGuid() }; // Act // Assert Assert.That(() => dbTreeRepository.Update(updatedNode), Throws.TypeOf <KeyNotFoundException>()); }
public void Update_NodeIsDeleted_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 updatedNode = new TreeNode { Id = root.Id, Value = "text" }; // Act // Assert Assert.That(() => dbTreeRepository.Update(updatedNode), Throws.InvalidOperationException); }