public void EnsureExceptionWhenNoOutputFileInGiven() { var portAllocator = MockRepository.GenerateMock<IPortAllocator>(); portAllocator.Expect(x => x.NewPort()).Return(42); var job = new VlcVideoJob(new VideoConfiguration(), new AudioConfiguration(), portAllocator, MockRepository.GenerateMock<IStatusParser>(), MockRepository.GenerateMock<IVlcStatusSource>(), new TimeSouce(), MockRepository.GenerateMock<ILogger>()) { InputFile = new FileInfo("in.txt") }; job.GetVlcArguments(); }
public void EnsureVlcVideoArgumentsArePassedCorrectly() { var audioConfig = MockRepository.GenerateMock<IAudioConfiguration>(); audioConfig.Expect(x => x.GetPartArguments()).Return("!!AFOO!!"); var videoConfig = MockRepository.GenerateMock<IVideoConfiguration>(); videoConfig.Expect(x => x.GetPartArguments()).Return("!!VFOO!!"); var portAllocator = MockRepository.GenerateMock<IPortAllocator>(); portAllocator.Expect(x => x.NewPort()).Return(42); var job = new VlcVideoJob(videoConfig, audioConfig, portAllocator, MockRepository.GenerateMock<IStatusParser>(), MockRepository.GenerateMock<IVlcStatusSource>(), new TimeSouce(), MockRepository.GenerateMock<ILogger>()); var inputfile = TestUtilities.GetTestFile("SampleVideo_720x480_1mbH264.mp4"); job.InputFile = inputfile; var expectedOutputFile = Path.Combine(TestUtilities.GetTestOutputDir(), "output.mp4"); job.OutputFile = new FileInfo(expectedOutputFile); var expectedArguments = string.Format("-I http --http-password goose --http-port 42 \"{0}{2}SampleVideo_720x480_1mbH264.mp4\" \":sout=#transcode{{!!VFOO!!,!!AFOO!!}}:std{{dst='{1}{2}output.mp4',access=file}}\"", TestUtilities.GetTestDir(), TestUtilities.GetTestOutputDir(), Path.DirectorySeparatorChar); var actualArguments = job.GetVlcArguments(); Assert.AreEqual(expectedArguments, actualArguments); }