Inheritance: IMortgageApplicationSpecification
        public void SutEqualsOther()
        {
            var sut = new AnyAdditionalApplicantsSpecification();
            var other = new AnyAdditionalApplicantsSpecification();

            var actual = sut.Equals(other);

            Assert.True(actual);
        }
        public void SutDoesNotEqualAnonymousObject()
        {
            var sut = new AnyAdditionalApplicantsSpecification();
            var anonymous = new object();

            var actual = sut.Equals(anonymous);

            Assert.False(actual);
        }
        public void IsSatisfiedByAplicationWithNoAdditionalApplicantsReturnsFalse()
        {
            var application = new MortgageApplication();
            var sut = new AnyAdditionalApplicantsSpecification();

            var actual = sut.IsSatisfiedBy(application);

            Assert.False(actual);
        }
        public void IsSatisfiedByApplicationWithAdditionalApplicantsReturnsTrue()
        {
            var application = new MortgageApplication();
            application.AdditionalApplicants.Add(new Applicant());
            application.AdditionalApplicants.Add(new Applicant());
            var sut = new AnyAdditionalApplicantsSpecification();

            var actual = sut.IsSatisfiedBy(application);

            Assert.True(actual);
        }
 public void SutIsMortgageApplicationSpecification()
 {
     var sut = new AnyAdditionalApplicantsSpecification();
     Assert.IsAssignableFrom<IMortgageApplicationSpecification>(sut);
 }