public void eacoutputservice_can_set_dtsexpress_audio_settings_test()
        {
            //given dts and audio settings
            EAC3ToConfiguration config = new EAC3ToConfiguration()
            {
                BatchFilePath = "c:\\temp"
            };
            BluRaySummaryInfo summaryInfo = new BluRaySummaryInfo()
            {
                Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo()
                {
                    EpisodeNumber = "1", AudioList = new List <BluRayTitleAudio>()
                    {
                        new BluRayTitleAudio()
                        {
                            Id = "3:", AudioType = EnumAudioType.DTSEXPRESS, IsSelected = true, Arguments = "-core"
                        }
                    }
                }
            };
            string        bluRayPath   = "c:\\disc";
            IAudioService audioService = new AudioService();
            AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
            //when I want the output
            IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, summaryInfo);
            //then the dts audio is set
            string output = service.GetAudioStreamPart();

            output.Should().Contain(".dts");
            output.Should().Contain("-core");
        }
        public void eacoutputservice_can_set_progress_numbers_false_settings_test()
        {
            //given
            EAC3ToConfiguration config = new EAC3ToConfiguration()
            {
                BatchFilePath = "c:\\temp", ShowProgressNumbers = false
            };
            BluRaySummaryInfo summaryInfo = new BluRaySummaryInfo()
            {
                Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo()
                {
                    EpisodeNumber = "1", AudioList = new List <BluRayTitleAudio>()
                    {
                        new BluRayTitleAudio()
                        {
                            Id = "3:", AudioType = EnumAudioType.DTSEXPRESS, IsSelected = true, Arguments = "-core"
                        }
                    }
                }
            };
            string        bluRayPath   = "c:\\disc";
            IAudioService audioService = new AudioService();
            AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
            //when
            IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, summaryInfo);
            //then
            string output = service.GetShowProgressNumbersPart();

            output.Should().Be("");
        }
Beispiel #3
0
        public ErrorCollection Write()
        {
            if (this.IsValid())
            {
                try
                {
                    this.Delete();

                    foreach (BluRayDiscInfo disc in _bluRayDiscInfoList.Where(d => d.IsSelected))
                    {
                        foreach (BluRaySummaryInfo summary in disc.BluRaySummaryInfoList.Where(s => s.IsSelected).OrderBy(s => s.EpisodeNumber))
                        {
                            _eac3ToOutputNamingService.SetCurrentBluRaySummaryInfo(summary);
                            IEAC3ToOutputService eacOutputService = new EAC3ToOutputService(_eac3toConfiguration, _eac3ToOutputNamingService, disc.BluRayPath, summary);
                            string eac3ToPathPart          = eacOutputService.GetEAC3ToPathPart();
                            string bluRayStreamPart        = eacOutputService.GetBluRayStreamPart();
                            string chapterStreamPart       = eacOutputService.GetChapterStreamPart();
                            string videoStreamPart         = eacOutputService.GetVideoStreamPart();
                            string audioStreamPart         = eacOutputService.GetAudioStreamPart();
                            string subtitleStreamPart      = eacOutputService.GetSubtitleStreamPart();
                            string logPart                 = eacOutputService.GetLogPart();
                            string showProgressNumbersPart = eacOutputService.GetShowProgressNumbersPart();

                            using (StreamWriter sw = new StreamWriter(_eac3toConfiguration.BatchFilePath, true))
                            {
                                sw.WriteLine(string.Format("{0} {1} {2} {3} {4} {5} {6} {7}", eac3ToPathPart, bluRayStreamPart, chapterStreamPart, videoStreamPart, audioStreamPart,
                                                           subtitleStreamPart, logPart, showProgressNumbersPart));
                                sw.WriteLine();
                                sw.WriteLine();
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    _log.ErrorFormat(Program.GetLogErrorFormat(), ex.Message, ex.StackTrace, MethodBase.GetCurrentMethod().Name);
                    _errors.Add(new Error()
                    {
                        Description = "There was an error while creating the eac3to batch file."
                    });
                }
            }
            return(_errors);
        }
        public void eacoutputservice_can_set_bluray_stream_test()
        {
            //given bluray folder and stream#
            string bluRayPath                     = "c:\\disc";
            EAC3ToConfiguration config            = new EAC3ToConfiguration();
            BluRaySummaryInfo   bluRaySummaryInfo = new BluRaySummaryInfo()
            {
                Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo()
                {
                    EpisodeNumber = "1"
                }
            };
            IAudioService audioService = new AudioService();
            AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
            //when I want the output
            IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, bluRaySummaryInfo);
            //then the bluray path/stream# is set
            string output = service.GetBluRayStreamPart();

            output.Should().Contain(bluRayPath);
            output.Should().Contain("1)");
        }
        public void eacoutputservice_can_set_eac3to_executable_path_test()
        {
            //given eac3to path
            EAC3ToConfiguration config = new EAC3ToConfiguration()
            {
                EAC3ToPath = "c:\\exe\\eac3to"
            };
            BluRaySummaryInfo bluRaySummaryInfo = new BluRaySummaryInfo()
            {
                Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo()
                {
                    EpisodeNumber = "1"
                }
            };
            IAudioService audioService = new AudioService();
            AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
            string bluRayPath = "c:\\temp";
            //when I want the output
            IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, bluRaySummaryInfo);
            //then the eac3to path is set
            string output = service.GetEAC3ToPathPart();

            output.Should().Contain(config.EAC3ToPath);
        }