public void WhenDifferentDateTimePassedToEquals_ThenFalseReturned()
        {
            ApproximateDateTime approximateDateTime = new ApproximateDateTime(new LocalDateTime(2017, 5, 18, 5, 28, 20));
            LocalDateTime       dateTime            = new LocalDateTime(2017, 5, 18, 5, 28, 24);

            Assert.IsFalse(approximateDateTime.Equals(dateTime), "Equals should return false");
        }
        public void WhenSameDateTimePassedToEquals_ThenTrueReturned()
        {
            ApproximateDateTime approximateDateTime = new ApproximateDateTime(new LocalDateTime(2017, 5, 18, 5, 28, 20));
            LocalDateTime       dateTime            = new LocalDateTime(2017, 5, 18, 5, 28, 20);

            Assert.IsTrue(approximateDateTime.Equals(dateTime), "Equals should return true");
        }
        public void WhenDifferentDatePassedToEquals_ThenFalseReturned()
        {
            ApproximateDateTime dateTime1 = new ApproximateDateTime(new LocalDateTime(2017, 5, 18, 5, 28, 20));
            ApproximateDateTime dateTime2 = new ApproximateDateTime(new LocalDateTime(2017, 5, 18, 5, 27, 20));

            Assert.IsFalse(dateTime1.Equals(dateTime2), "Equals should return false.");
        }
        public void WhenSameDatePassedToEquals_ThenTrueReturned()
        {
            ApproximateDate date = new ApproximateDate(2017);

            ApproximateDateTime dateTime1 = new ApproximateDateTime(date);
            ApproximateDateTime dateTime2 = new ApproximateDateTime(date);

            Assert.IsTrue(dateTime1.Equals(dateTime2), "Equals should return true.");
        }
        public void WhenNullPassedToEquals_ThenFalseReturned()
        {
            ApproximateDateTime dateTime = new ApproximateDateTime();

            Assert.IsFalse(dateTime.Equals(null), "Equals should return false.");
        }
        public void WhenWrongTypePassedToEquals_ThenFalseReturned()
        {
            ApproximateDateTime dateTime = new ApproximateDateTime();

            Assert.IsFalse(dateTime.Equals(this), "Equals should return false.");
        }