fix(filters): check except_releases properly (#62)

This commit is contained in:
Ludvig Lundgren 2022-01-02 00:17:22 +01:00 committed by GitHub
parent 739c80fed9
commit c65c7477fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 81 additions and 1 deletions

View file

@ -534,7 +534,7 @@ func (r *Release) CheckFilter(filter Filter) bool {
return false return false
} }
if filter.ExceptReleases != "" && !checkMultipleFilterStrings(filter.ExceptReleases, r.TorrentName, r.Clean) { if filter.ExceptReleases != "" && checkMultipleFilterStrings(filter.ExceptReleases, r.TorrentName, r.Clean) {
r.addRejection("except_releases: unwanted release") r.addRejection("except_releases: unwanted release")
return false return false
} }

View file

@ -783,6 +783,86 @@ func TestRelease_CheckFilter(t *testing.T) {
}, },
want: true, want: true,
}, },
{
name: "except_release_1",
fields: &Release{
TorrentName: "Good show shift S02 NORDiC 2160p ATVP WEB-DL DDP 5.1 Atmos DV HEVC-GROUP",
Category: "TV",
Uploader: "Uploader1",
},
args: args{
filter: Filter{
Enabled: true,
MatchCategories: "*tv*",
MatchUploaders: "Uploader1,Uploader2",
ExceptUploaders: "Anonymous",
Shows: "Good show shift",
MatchReleaseGroups: "GROUP",
ExceptReleases: "Good show shift",
},
},
want: false,
},
{
name: "except_release_2",
fields: &Release{
TorrentName: "Good show shift S02 NORDiC 2160p ATVP WEB-DL DDP 5.1 Atmos DV HEVC-GROUP",
Category: "TV",
Uploader: "Uploader1",
},
args: args{
filter: Filter{
Enabled: true,
MatchCategories: "*tv*",
MatchUploaders: "Uploader1,Uploader2",
ExceptUploaders: "Anonymous",
Shows: "Good show shift",
MatchReleaseGroups: "GROUP",
ExceptReleases: "NORDiC",
},
},
want: false,
},
{
name: "except_release_3",
fields: &Release{
TorrentName: "Good show shift S02 2160p ATVP WEB-DL DDP 5.1 Atmos DV HEVC-GROUP",
Category: "TV",
Uploader: "Uploader1",
},
args: args{
filter: Filter{
Enabled: true,
MatchCategories: "*tv*",
MatchUploaders: "Uploader1,Uploader2",
ExceptUploaders: "Anonymous",
Shows: "Good show shift",
MatchReleaseGroups: "GROUP",
ExceptReleases: "NORDiC",
},
},
want: true,
},
{
name: "except_release_4",
fields: &Release{
TorrentName: "Good show shift S02 2160p ATVP WEB-DL DDP 5.1 Atmos DV HEVC-GROUP",
Category: "TV",
Uploader: "Uploader1",
},
args: args{
filter: Filter{
Enabled: true,
MatchCategories: "*tv*",
MatchUploaders: "Uploader1,Uploader2",
ExceptUploaders: "Anonymous",
Shows: "Good show shift",
MatchReleaseGroups: "GROUP",
ExceptReleases: "NORDiC,*shift*",
},
},
want: false,
},
} }
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {