public void ValidateSrcAndResolveFileName_ResolvesFileName(string dummySrc, string expectedFileName)
        {
            // Arrange
            Mock <IDummyMediaBlockOptions> mockMediaBlockOptions = _mockRepository.Create <IDummyMediaBlockOptions>();

            mockMediaBlockOptions.Setup(m => m.Src).Returns(dummySrc);
            ExposedMediaBlockFactory testSubject = CreateExposedMediaBlockFactory();

            // Act
            string result = testSubject.ExposedValidateSrcAndResolveFileName(mockMediaBlockOptions.Object);

            // Assert
            _mockRepository.VerifyAll();
            Assert.Equal(expectedFileName, result);
        }
        public void ValidateSrcAndResolveFileName_ThrowsOptionsExceptionIfSrcDoesNotPointToAFile(string dummySrc)
        {
            // Arrange
            Mock <IDummyMediaBlockOptions> mockMediaBlockOptions = _mockRepository.Create <IDummyMediaBlockOptions>();

            mockMediaBlockOptions.Setup(m => m.Src).Returns(dummySrc);
            ExposedMediaBlockFactory testSubject = CreateExposedMediaBlockFactory();

            // Act and assert
            OptionsException result = Assert.Throws <OptionsException>(() => testSubject.ExposedValidateSrcAndResolveFileName(mockMediaBlockOptions.Object));

            _mockRepository.VerifyAll();
            Assert.Equal(string.Format(Strings.OptionsException_OptionsException_InvalidOption,
                                       nameof(IDummyMediaBlockOptions.Src),
                                       string.Format(Strings.OptionsException_Shared_ValueMustPointToAFile, dummySrc)),
                         result.Message);
        }