public void Should_return_valid_node_calling_PrepareForInsertNode() { // arrange var parentNode = new HierarchyNode { Id = 0, LeftId = 1, RightId = 2 }; var childNode = new HierarchyNode { Id = 0, LeftId = 0, RightId = 0, TargetId = 345 }; var mockHierarchyDataProvider = new Mock<IHierarchyDataProvider>(); mockHierarchyDataProvider.Setup(p => p.PrepareForInsertNode(It.IsAny<HierarchyEntry>(), It.IsAny<HierarchyNode>())); var mockHierarchyEntryRepository = new Mock<IHierarchyEntryRepository>(); var mockTargetEntryRepository = new Mock<ITargetEntryRepository>(); var mockTargetRepository = new Mock<ITargetRepository>(); var mockTargetTypes = new List<Type>(); var service = new HierarchyService(mockHierarchyDataProvider.Object, mockHierarchyEntryRepository.Object, mockTargetEntryRepository.Object, mockTargetRepository.Object, mockTargetTypes); // act var newHierarchyNode = service.PrepareForInsertNode(hierarchyEntry, parentNode, childNode); // assert Assert.That(newHierarchyNode, Is.Not.Null); Assert.That(newHierarchyNode.LeftId, Is.EqualTo(parentNode.RightId)); Assert.That(newHierarchyNode.RightId, Is.EqualTo(parentNode.RightId + 1)); Assert.That(newHierarchyNode.Id, Is.EqualTo(0)); mockHierarchyDataProvider.Verify(p => p.PrepareForInsertNode(It.IsAny<HierarchyEntry>(), It.IsAny<HierarchyNode>())); }