public void SutIsSpecimenBuilder()
        {
            // Arrange
            // Act
            var sut = new TerminatingSpecimenBuilder();

            // Assert
            Assert.IsAssignableFrom <ISpecimenBuilder>(sut);
        }
        public void SutIsSpecimenBuilder()
        {
            // Fixture setup
            // Exercise system
            var sut = new TerminatingSpecimenBuilder();

            // Verify outcome
            Assert.IsAssignableFrom <ISpecimenBuilder>(sut);
            // Teardown
        }
        public void CreateThrowsCorrectException()
        {
            // Arrange
            var sut          = new TerminatingSpecimenBuilder();
            var dummyRequest = new object();
            var dummyContext = new DelegatingSpecimenContext();

            // Act & assert
            Assert.Throws <ObjectCreationException>(() =>
                                                    sut.Create(dummyRequest, dummyContext));
        }
        public void CreateThrowsCorrectException()
        {
            // Fixture setup
            var sut          = new TerminatingSpecimenBuilder();
            var dummyRequest = new object();
            var dummyContext = new DelegatingSpecimenContext();

            // Exercise system and verify outcome
            Assert.Throws <ObjectCreationException>(() =>
                                                    sut.Create(dummyRequest, dummyContext));
            // Teardown
        }
        public void ExceptionContainsInformationAboutRequest()
        {
            // Arrange
            var sut          = new TerminatingSpecimenBuilder();
            var request      = Guid.NewGuid();
            var dummyContext = new DelegatingSpecimenContext();
            // Act
            var e = Assert.Throws <ObjectCreationException>(() =>
                                                            sut.Create(request, dummyContext));

            // Assert
            Assert.Contains(request.ToString(), e.Message);
        }
        public void ExceptionContainsInformationAboutRequest()
        {
            // Fixture setup
            var sut          = new TerminatingSpecimenBuilder();
            var request      = Guid.NewGuid();
            var dummyContext = new DelegatingSpecimenContext();
            // Exercise system
            var e = Assert.Throws <ObjectCreationException>(() =>
                                                            sut.Create(request, dummyContext));

            // Verify outcome
            Assert.Contains(request.ToString(), e.Message);
            // Teardown
        }