public void Constructor_ExpectedValues()
        {
            // Call
            var locationInput = new MacroStabilityInwardsLocationInputExtreme();

            // Assert
            Assert.IsInstanceOf <MacroStabilityInwardsLocationInputBase>(locationInput);
            Assert.IsInstanceOf <IMacroStabilityInwardsLocationInputExtreme>(locationInput);

            Assert.IsNaN(locationInput.PenetrationLength);
            Assert.AreEqual(2, locationInput.PenetrationLength.NumberOfDecimalPlaces);
        }
        public void Clone_Always_ReturnNewInstanceWithCopiedValues()
        {
            // Setup
            var random   = new Random(21);
            var original = new MacroStabilityInwardsLocationInputExtreme
            {
                PenetrationLength = random.NextRoundedDouble()
            };

            // Call
            object clone = original.Clone();

            // Assert
            CoreCloneAssert.AreObjectClones(original, clone, MacroStabilityInwardsCloneAssert.AreClones);
        }
        public void Constructor_SetPenetrationLength_ExpectedValue()
        {
            // Setup
            var    random            = new Random(21);
            double penetrationLength = random.NextDouble();

            // Call
            var locationInput = new MacroStabilityInwardsLocationInputExtreme
            {
                PenetrationLength = (RoundedDouble)penetrationLength
            };

            // Assert
            Assert.AreEqual(2, locationInput.PenetrationLength.NumberOfDecimalPlaces);
            Assert.AreEqual(penetrationLength, locationInput.PenetrationLength, locationInput.PenetrationLength.GetAccuracy());
        }
 /// <summary>
 /// Method that asserts whether <paramref name="original"/> and <paramref name="clone"/>
 /// are clones.
 /// </summary>
 /// <param name="original">The original object.</param>
 /// <param name="clone">The cloned object.</param>
 /// <exception cref="AssertionException">Thrown when <paramref name="original"/> and
 /// <paramref name="clone"/> are not clones.</exception>
 public static void AreClones(MacroStabilityInwardsLocationInputExtreme original,
                              MacroStabilityInwardsLocationInputExtreme clone)
 {
     AreClones((MacroStabilityInwardsLocationInputBase)original, clone);
     Assert.AreEqual(original.PenetrationLength, clone.PenetrationLength);
 }