BatchGuy.App.Shared.Services.EAC3ToCommonRulesValidatorService.IsAtLeastOneSummarySelected C# (CSharp) Метод

IsAtLeastOneSummarySelected() публичный Метод

public IsAtLeastOneSummarySelected ( ) : bool
Результат bool
        public bool IsAtLeastOneSummarySelected()
        {
            bool isValid = false;

            foreach (BluRayDiscInfo disc in _bluRayDiscInfoList.Where(d => d.IsSelected))
            {
                if (disc.BluRaySummaryInfoList.Where(s => s.IsSelected).Count() > 0)
                {
                    isValid = true;
                }
            }

            if (!isValid)
            {
                if (!_eac3toConfiguration.IfIsExtractForRemuxIsItForAMovie)
                    this._errors.Add(new Error() { Description = "No episodes selected." });
                else
                    this._errors.Add(new Error() { Description = "No movies selected." });
            }
            return isValid;
        }

Usage Example

 public void eac3tocommonrulesvalidatorservice_has_no_episodes_selected_error_when_no_episodes_selected_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() { new BluRayDiscInfo() { Id = 1, IsSelected = true, BluRayPath = @"c:\temp\disc1",
         BluRaySummaryInfoList = new List<BluRaySummaryInfo>() { new BluRaySummaryInfo() { IsSelected = false } } } };
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(true);
     IEAC3ToCommonRulesValidatorService service = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     bool isValid = service.IsAtLeastOneSummarySelected();
     service.Errors[0].Description.Should().Be("No episodes selected.");
 }