public void InputVideoDecodeConfiguration_MultipleFilters_InvalidConfigDetected() { var parameters = new StackAllOptions { InputVideoFile = "a.mp4", InputVideoArguments = "-vf scale=-1:1080", Filters = new List <string> { "MaxFilter", "MinFilter" }, OutputVideoFile = "a2.mp4" }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ConfigureFilters(parameters.Filters); basicEnvironment.ConfigureOuptutMode(parameters); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.Filters.Should().HaveCount(2); basicEnvironment.CheckConstraints(); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void InputConfiguration_NotSpecified_ThrowMeFlagSet() { var parameters = new StackAllOptions(); var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void FilterConfiguration_NoConfiguration_SetsThrowMeFlag() { var parameters = new StackAllOptions { }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void OutputFileConfiguration_EmptyConfiguration_SetFlagThrowMe() { var parameters = new StackAllOptions { }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureOuptutMode(parameters); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void InputFolderConfiguration_FolderDoesNotExist_ThrowMeFlagSet() { var parameters = new StackAllOptions { InputFolder = "test", }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void FilterConfiguration_AllowsFriendlyInput_InputsParseCorrectly(string input, int expectedFilters) { var parameters = new StackAllOptions { Filters = input.Split(' ') }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); basicEnvironment.Filters.Cast <IFilter <MutableByteImage> >().Should().HaveCount(expectedFilters); }
public void InputStreamConfiguration_SizeNotSpecified_ThrowMeFlagSet() { var parameters = new StackAllOptions { UseInputPipe = true, }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ThrowMe.Should().BeTrue(); }
public void FilterConfiguration_AttackDecayFilter_CreatesAttackDecayFilter() { var parameters = new StackAllOptions { Filters = "--filters AttackDecayFilter Attack=1.0 Decay=0.2".Split(' ') }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); basicEnvironment.Filters.Count.Should().Be(1); basicEnvironment.ThrowMe.Should().BeFalse(); }
public void FilterConfiguration_FilterConfig_CreatesRequestedFilter(string input) { var parameters = new StackAllOptions { Filters = input.Split(' ') }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); basicEnvironment.Filters.Count.Should().Be(1); basicEnvironment.ThrowMe.Should().BeFalse(); }
public void OutputStreamConfiguration_StreamWriter_IsCreated() { var parameters = new StackAllOptions { UseOutputPipe = true }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureOuptutMode(parameters); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.OutputMode.Should().NotBeNull(); }
public void FilterConfiguration_AttackiDecayFilter_ParametersSetCorrectly(string input, string expectedName) { var parameters = new StackAllOptions { Filters = input.Split(' ') }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); var createdFilter = basicEnvironment.Filters.Single().As <IFilter <MutableByteImage> >(); createdFilter.Name.Should().Be(expectedName); }
public void OutputFileConfiguration_FileWriter_IsCreated() { var parameters = new StackAllOptions { OutputFolder = ".", OutputFilePrefix = "timelapse" }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureOuptutMode(parameters); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.OutputMode.Should().NotBeNull(); }
public void InputStreamConfiguration_SizeParseable_InputReaderCreated() { var parameters = new StackAllOptions { UseInputPipe = true, InputSize = "1x20:1080" }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.InputMode.Should().NotBeNull(); }
public void InputFileConfiguration_FileReader_IsCreated() { var parameters = new StackAllOptions { InputFiles = new string[] { "a.jpg", "b.jpg", "c.jpg" }, }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.InputMode.Should().NotBeNull(); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.InputMode.Should().BeOfType <ImageMutliFileOrderedReader <MutableByteImage> >(); }
public void FilterConfiguration_DefaultFilterName_NameIsSet() { var parameters = new StackAllOptions { Filters = "--filters AttackDecayFilter Attack=0.2 Decay=1.0, MaxFilter, MinFilter".Split(' ') }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureFilters(parameters.Filters); var createdFilters = basicEnvironment.Filters.Cast <IFilter <MutableByteImage> >().ToList(); createdFilters.Count.Should().Be(3); createdFilters.Select(x => x.Name).Distinct().Count().Should().Be(3); }
public void InputVideoDecodeConfiguration_ValidConfig_InputReaderCreated() { var parameters = new StackAllOptions { InputVideoFile = "a.mp4", InputVideoArguments = "-vf scale=-1:1080", }; var basicEnvironment = new StackingEnvironment(); basicEnvironment.ConfigureInputMode(parameters); basicEnvironment.ThrowMe.Should().BeFalse(); basicEnvironment.InputMode.Should().NotBeNull(); basicEnvironment.InputMode.Should().BeOfType <ffmpeg.FfmpegVideoReader>(); }