public void CreateWithMailAddressRequestReturnsCorrectResultUsingLocalPartAndDomainNameFromContext() { // Fixture setup var request = typeof(MailAddress); var expectedLocalPart = new EmailAddressLocalPart(Guid.NewGuid().ToString()); var expectedDomainName = new DomainName(Guid.NewGuid().ToString()); var context = new DelegatingSpecimenContext() { OnResolve = r => { Assert.True(typeof(EmailAddressLocalPart).Equals(r) || typeof(DomainName).Equals(r)); if (typeof(EmailAddressLocalPart).Equals(r)) { return expectedLocalPart; } else { return expectedDomainName; } } }; var sut = new MailAddressGenerator(); // Exercise system var result = (MailAddress)sut.Create(request, context); // Verify outcome Assert.Equal(expectedLocalPart.LocalPart, result.User); Assert.Equal(expectedDomainName.Domain, result.Host); // Teardown }
public void SutDoesNotEqualOtherObjectWhenLocalPartsDiffer() { // Fixture setup var sut = new EmailAddressLocalPart(Guid.NewGuid().ToString()); object other = new EmailAddressLocalPart(Guid.NewGuid().ToString()); // Exercise system bool result = sut.Equals(other); // Verify outcome Assert.False(result); // Teardown }
public void SutDoesNotEqualAnonymousObject() { // Fixture setup var sut = new EmailAddressLocalPart(Guid.NewGuid().ToString()); var anonymousObject = new object(); // Exercise system bool result = sut.Equals(anonymousObject); // Verify outcome Assert.False(result); // Teardown }
public void ToStringReturnsCorrectResult() { // Fixture setup string expected = Guid.NewGuid().ToString(); var sut = new EmailAddressLocalPart(expected); // Exercise system var result = sut.ToString(); // Verify outcome Assert.Equal(expected, result); // Teardown }
public void SutEqualsOtherSutWhenLocalPartsAreEqual() { // Fixture setup var localPart = Guid.NewGuid().ToString(); var sut = new EmailAddressLocalPart(localPart); var other = new EmailAddressLocalPart(localPart); // Exercise system bool result = sut.Equals(other); // Verify outcome Assert.True(result); // Teardown }
public void GetHashCodeReturnsCorrectResult() { // Fixture setup var localPart = Guid.NewGuid().ToString(); var sut = new EmailAddressLocalPart(localPart); // Exercise system int result = sut.GetHashCode(); // Verify outcome int expectedHashCode = localPart.GetHashCode(); Assert.Equal(expectedHashCode, result); // Teardown }
public void CreateReturnsNoSpecimenWhenEmailAddressLocalPartIsInvalidForMailAddress() { // Fixture setup var localPart = new EmailAddressLocalPart("@Invalid@"); var anonymousDomainName = new DomainName(Guid.NewGuid().ToString()); var request = typeof(MailAddress); var context = new DelegatingSpecimenContext() { OnResolve = r => { Assert.True(typeof(EmailAddressLocalPart).Equals(r) || typeof(DomainName).Equals(r)); if (typeof(EmailAddressLocalPart).Equals(r)) { return localPart; } else { return anonymousDomainName; } } }; var sut = new MailAddressGenerator(); // Exercise system var result = sut.Create(request, context); // Verify outcome var expectedResult = new NoSpecimen(request); Assert.Equal(expectedResult, result); // Teardown }
public void CreateWithMailAddressRequestReturnsNoSpecimenWhenContextReturnsNullDomainName() { // Fixture setup var request = typeof(MailAddress); var anonymousLocalPart = new EmailAddressLocalPart(Guid.NewGuid().ToString()); var context = new DelegatingSpecimenContext() { OnResolve = r => { Assert.True(typeof(EmailAddressLocalPart).Equals(r) || typeof(DomainName).Equals(r)); return typeof(EmailAddressLocalPart).Equals(r) ? anonymousLocalPart : null; } }; var sut = new MailAddressGenerator(); // Exercise system var result = sut.Create(request, context); // Verify outcome var expectedResult = new NoSpecimen(request); Assert.Equal(expectedResult, result); // Teardown }