public void Setup()
        {
            Mocker.Resolve<QualityUpgradeSpecification>();
            _upgradeDisk = Mocker.Resolve<UpgradeDiskSpecification>();

            firstFile = new EpisodeFile { Quality = QualityTypes.Bluray1080p, Proper = true };
            secondFile = new EpisodeFile { Quality = QualityTypes.Bluray1080p, Proper = true };

            var singleEpisodeList = new List<Episode> { new Episode { EpisodeFile = firstFile }, new Episode { EpisodeFile = null } };
            var doubleEpisodeList = new List<Episode> { new Episode { EpisodeFile = firstFile }, new Episode { EpisodeFile = secondFile }, new Episode { EpisodeFile = null } };

            var fakeSeries = Builder<Series>.CreateNew()
                         .With(c => c.QualityProfile = new QualityProfile { Cutoff = QualityTypes.Bluray1080p })
                         .Build();

            parseResultMulti = new EpisodeParseResult
            {
                Series = fakeSeries,
                Quality = new QualityModel(QualityTypes.DVD, true),
                EpisodeNumbers = new List<int> { 3, 4 },
                SeasonNumber = 12,
                Episodes = doubleEpisodeList
            };

            parseResultSingle = new EpisodeParseResult
            {
                Series = fakeSeries,
                Quality = new QualityModel(QualityTypes.DVD, true),
                EpisodeNumbers = new List<int> { 3 },
                SeasonNumber = 12,
                Episodes = singleEpisodeList
            };
        }
 public AllowedDownloadSpecification(QualityAllowedByProfileSpecification qualityAllowedByProfileSpecification,
     UpgradeDiskSpecification upgradeDiskSpecification, AcceptableSizeSpecification acceptableSizeSpecification,
     AlreadyInQueueSpecification alreadyInQueueSpecification, RetentionSpecification retentionSpecification)
 {
     _qualityAllowedByProfileSpecification = qualityAllowedByProfileSpecification;
     _upgradeDiskSpecification = upgradeDiskSpecification;
     _acceptableSizeSpecification = acceptableSizeSpecification;
     _alreadyInQueueSpecification = alreadyInQueueSpecification;
     _retentionSpecification = retentionSpecification;
 }
 public AllowedDownloadSpecification(QualityAllowedByProfileSpecification qualityAllowedByProfileSpecification,
     UpgradeDiskSpecification upgradeDiskSpecification, AcceptableSizeSpecification acceptableSizeSpecification,
     AlreadyInQueueSpecification alreadyInQueueSpecification, RetentionSpecification retentionSpecification,
     AllowedReleaseGroupSpecification allowedReleaseGroupSpecification, CustomStartDateSpecification customStartDateSpecification,
     LanguageSpecification languageSpecification)
 {
     _qualityAllowedByProfileSpecification = qualityAllowedByProfileSpecification;
     _upgradeDiskSpecification = upgradeDiskSpecification;
     _acceptableSizeSpecification = acceptableSizeSpecification;
     _alreadyInQueueSpecification = alreadyInQueueSpecification;
     _retentionSpecification = retentionSpecification;
     _allowedReleaseGroupSpecification = allowedReleaseGroupSpecification;
     _customStartDateSpecification = customStartDateSpecification;
     _languageSpecification = languageSpecification;
 }
 public AllowedDownloadSpecification(QualityAllowedByProfileSpecification qualityAllowedByProfileSpecification,
                                     UpgradeDiskSpecification upgradeDiskSpecification, AcceptableSizeSpecification acceptableSizeSpecification,
                                     AlreadyInQueueSpecification alreadyInQueueSpecification, RetentionSpecification retentionSpecification,
                                     AllowedReleaseGroupSpecification allowedReleaseGroupSpecification, CustomStartDateSpecification customStartDateSpecification,
                                     LanguageSpecification languageSpecification)
 {
     _qualityAllowedByProfileSpecification = qualityAllowedByProfileSpecification;
     _upgradeDiskSpecification             = upgradeDiskSpecification;
     _acceptableSizeSpecification          = acceptableSizeSpecification;
     _alreadyInQueueSpecification          = alreadyInQueueSpecification;
     _retentionSpecification           = retentionSpecification;
     _allowedReleaseGroupSpecification = allowedReleaseGroupSpecification;
     _customStartDateSpecification     = customStartDateSpecification;
     _languageSpecification            = languageSpecification;
 }