public void Constructor_CalledWithNullTransformer_ThrowsException()
        {
            TextWriter mockTextWriter = mocks.StrictMock <TextWriter>();

            mocks.ReplayAll();

            TransformingTextWriter writer = new TransformingTextWriter(mockTextWriter, null);

            mocks.VerifyAll();
        }
        public void Write_WhenCalled_CallsUnderlyingTransformAndTextWriter()
        {
            TextWriter   mockTextWriter  = mocks.StrictMock <TextWriter>();
            ITransformer mockTransformer = mocks.StrictMock <ITransformer>();

            int    dummyNumber       = 12;
            string transformedNumber = "Transformed";

            Expect.Call(mockTransformer.Transform(dummyNumber)).Return(transformedNumber);

            mockTextWriter.WriteLine(transformedNumber);

            mocks.ReplayAll();

            TransformingTextWriter writer = new TransformingTextWriter(mockTextWriter, mockTransformer);

            writer.Write(dummyNumber);

            mocks.VerifyAll();
        }