public void Clone_Always_ReturnNewInstanceWithCopiedValues() { // Setup var original = new CalculationGroup { Name = "Random group name", Children = { new TestCalculationBase { Name = "Random item name 1" }, new TestCalculationBase { Name = "Random item name 2" } } }; // Call object clone = original.Clone(); // Assert CoreCloneAssert.AreObjectClones(original, clone, CommonCloneAssert.AreClones); }