Add tests for black_white and watched
This commit is contained in:
78
test/test_black_white.py
Normal file
78
test/test_black_white.py
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
import sys
|
||||||
|
import os
|
||||||
|
|
||||||
|
# getting the name of the directory
|
||||||
|
# where the this file is present.
|
||||||
|
current = os.path.dirname(os.path.realpath(__file__))
|
||||||
|
|
||||||
|
# Getting the parent directory name
|
||||||
|
# where the current directory is present.
|
||||||
|
parent = os.path.dirname(current)
|
||||||
|
|
||||||
|
# adding the parent directory to
|
||||||
|
# the sys.path.
|
||||||
|
sys.path.append(parent)
|
||||||
|
|
||||||
|
from src.black_white import setup_black_white_lists
|
||||||
|
|
||||||
|
|
||||||
|
def test_setup_black_white_lists():
|
||||||
|
# Simple
|
||||||
|
blacklist_library = "library1, library2"
|
||||||
|
whitelist_library = "library1, library2"
|
||||||
|
blacklist_library_type = "library_type1, library_type2"
|
||||||
|
whitelist_library_type = "library_type1, library_type2"
|
||||||
|
blacklist_users = "user1, user2"
|
||||||
|
whitelist_users = "user1, user2"
|
||||||
|
|
||||||
|
(
|
||||||
|
results_blacklist_library,
|
||||||
|
return_whitelist_library,
|
||||||
|
return_blacklist_library_type,
|
||||||
|
return_whitelist_library_type,
|
||||||
|
return_blacklist_users,
|
||||||
|
return_whitelist_users,
|
||||||
|
) = setup_black_white_lists(
|
||||||
|
blacklist_library,
|
||||||
|
whitelist_library,
|
||||||
|
blacklist_library_type,
|
||||||
|
whitelist_library_type,
|
||||||
|
blacklist_users,
|
||||||
|
whitelist_users,
|
||||||
|
)
|
||||||
|
|
||||||
|
assert results_blacklist_library == ["library1", "library2"]
|
||||||
|
assert return_whitelist_library == ["library1", "library2"]
|
||||||
|
assert return_blacklist_library_type == ["library_type1", "library_type2"]
|
||||||
|
assert return_whitelist_library_type == ["library_type1", "library_type2"]
|
||||||
|
assert return_blacklist_users == ["user1", "user2"]
|
||||||
|
assert return_whitelist_users == ["user1", "user2"]
|
||||||
|
|
||||||
|
# Library Mapping and user mapping
|
||||||
|
library_mapping = {"library1": "library3"}
|
||||||
|
user_mapping = {"user1": "user3"}
|
||||||
|
|
||||||
|
(
|
||||||
|
results_blacklist_library,
|
||||||
|
return_whitelist_library,
|
||||||
|
return_blacklist_library_type,
|
||||||
|
return_whitelist_library_type,
|
||||||
|
return_blacklist_users,
|
||||||
|
return_whitelist_users,
|
||||||
|
) = setup_black_white_lists(
|
||||||
|
blacklist_library,
|
||||||
|
whitelist_library,
|
||||||
|
blacklist_library_type,
|
||||||
|
whitelist_library_type,
|
||||||
|
blacklist_users,
|
||||||
|
whitelist_users,
|
||||||
|
library_mapping,
|
||||||
|
user_mapping,
|
||||||
|
)
|
||||||
|
|
||||||
|
assert results_blacklist_library == ["library1", "library2", "library3"]
|
||||||
|
assert return_whitelist_library == ["library1", "library2", "library3"]
|
||||||
|
assert return_blacklist_library_type == ["library_type1", "library_type2"]
|
||||||
|
assert return_whitelist_library_type == ["library_type1", "library_type2"]
|
||||||
|
assert return_blacklist_users == ["user1", "user2", "user3"]
|
||||||
|
assert return_whitelist_users == ["user1", "user2", "user3"]
|
||||||
@@ -13,7 +13,7 @@ parent = os.path.dirname(current)
|
|||||||
# the sys.path.
|
# the sys.path.
|
||||||
sys.path.append(parent)
|
sys.path.append(parent)
|
||||||
|
|
||||||
from src.main import cleanup_watched
|
from src.watched import cleanup_watched, combine_watched_dicts
|
||||||
|
|
||||||
tv_shows_watched_list_1 = {
|
tv_shows_watched_list_1 = {
|
||||||
frozenset(
|
frozenset(
|
||||||
@@ -299,3 +299,112 @@ def test_mapping_cleanup_watched():
|
|||||||
|
|
||||||
assert return_watched_list_1 == expected_watched_list_1
|
assert return_watched_list_1 == expected_watched_list_1
|
||||||
assert return_watched_list_2 == expected_watched_list_2
|
assert return_watched_list_2 == expected_watched_list_2
|
||||||
|
|
||||||
|
|
||||||
|
def test_combine_watched_dicts():
|
||||||
|
input = [
|
||||||
|
{
|
||||||
|
"test3": {
|
||||||
|
"Anime Movies": [
|
||||||
|
{
|
||||||
|
"title": "Ponyo",
|
||||||
|
"tmdb": "12429",
|
||||||
|
"imdb": "tt0876563",
|
||||||
|
"locations": ("Ponyo (2008) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Spirited Away",
|
||||||
|
"tmdb": "129",
|
||||||
|
"imdb": "tt0245429",
|
||||||
|
"locations": ("Spirited Away (2001) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Castle in the Sky",
|
||||||
|
"tmdb": "10515",
|
||||||
|
"imdb": "tt0092067",
|
||||||
|
"locations": ("Castle in the Sky (1986) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{"test3": {"Anime Shows": {}}},
|
||||||
|
{"test3": {"Cartoon Shows": {}}},
|
||||||
|
{
|
||||||
|
"test3": {
|
||||||
|
"Shows": {
|
||||||
|
frozenset(
|
||||||
|
{
|
||||||
|
("tmdb", "64464"),
|
||||||
|
("tvdb", "301824"),
|
||||||
|
("tvrage", "45210"),
|
||||||
|
("title", "11.22.63"),
|
||||||
|
("locations", ("11.22.63",)),
|
||||||
|
("imdb", "tt2879552"),
|
||||||
|
}
|
||||||
|
): {
|
||||||
|
"Season 1": [
|
||||||
|
{
|
||||||
|
"imdb": "tt4460418",
|
||||||
|
"title": "The Rabbit Hole",
|
||||||
|
"locations": (
|
||||||
|
"11.22.63 S01E01 The Rabbit Hole Bluray-1080p.mkv",
|
||||||
|
),
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{"test3": {"Subbed Anime": {}}},
|
||||||
|
]
|
||||||
|
expected = {
|
||||||
|
"test3": {
|
||||||
|
"Anime Movies": [
|
||||||
|
{
|
||||||
|
"title": "Ponyo",
|
||||||
|
"tmdb": "12429",
|
||||||
|
"imdb": "tt0876563",
|
||||||
|
"locations": ("Ponyo (2008) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Spirited Away",
|
||||||
|
"tmdb": "129",
|
||||||
|
"imdb": "tt0245429",
|
||||||
|
"locations": ("Spirited Away (2001) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Castle in the Sky",
|
||||||
|
"tmdb": "10515",
|
||||||
|
"imdb": "tt0092067",
|
||||||
|
"locations": ("Castle in the Sky (1986) Bluray-1080p.mkv",),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
"Anime Shows": {},
|
||||||
|
"Cartoon Shows": {},
|
||||||
|
"Shows": {
|
||||||
|
frozenset(
|
||||||
|
{
|
||||||
|
("tmdb", "64464"),
|
||||||
|
("tvdb", "301824"),
|
||||||
|
("tvrage", "45210"),
|
||||||
|
("title", "11.22.63"),
|
||||||
|
("locations", ("11.22.63",)),
|
||||||
|
("imdb", "tt2879552"),
|
||||||
|
}
|
||||||
|
): {
|
||||||
|
"Season 1": [
|
||||||
|
{
|
||||||
|
"imdb": "tt4460418",
|
||||||
|
"title": "The Rabbit Hole",
|
||||||
|
"locations": (
|
||||||
|
"11.22.63 S01E01 The Rabbit Hole Bluray-1080p.mkv",
|
||||||
|
),
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Subbed Anime": {},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
assert combine_watched_dicts(input) == expected
|
||||||
Reference in New Issue
Block a user