Skip to content

Commit

Permalink
improve coverage
Browse files Browse the repository at this point in the history
  • Loading branch information
sigma67 committed Jan 2, 2024
1 parent f9ce325 commit 21d0dbd
Show file tree
Hide file tree
Showing 6 changed files with 18 additions and 27 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,5 @@ build
dist
.pdm-python
.venv
*.log
*.xml
15 changes: 0 additions & 15 deletions tests/__init__.py
Original file line number Diff line number Diff line change
@@ -1,15 +0,0 @@
from importlib.metadata import PackageNotFoundError, version

from ytmusicapi.setup import setup, setup_oauth
from ytmusicapi.ytmusic import YTMusic

try:
__version__ = version("ytmusicapi")
except PackageNotFoundError:
# package is not installed
pass

__copyright__ = "Copyright 2023 sigma67"
__license__ = "MIT"
__title__ = "ytmusicapi"
__all__ = ["YTMusic", "setup_oauth", "setup"]
10 changes: 7 additions & 3 deletions tests/mixins/test_browsing.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,15 @@ def test_get_user(self, yt):
results = yt.get_user("UC44hbeRoCZVVMVg5z0FfIww")
assert len(results) == 3

def test_get_user_playlists(self, yt_auth):
results = yt_auth.get_user("UCPVhZsC2od1xjGhgEc2NEPQ") # Vevo playlists
results = yt_auth.get_user_playlists("UCPVhZsC2od1xjGhgEc2NEPQ", results["playlists"]["params"])
def test_get_user_playlists(self, yt, yt_auth):
channel = "UCPVhZsC2od1xjGhgEc2NEPQ" # Vevo playlists
user = yt_auth.get_user(channel)
results = yt_auth.get_user_playlists(channel, user["playlists"]["params"])
assert len(results) > 100

results_empty = yt.get_user_playlists(channel, user["playlists"]["params"])
assert len(results_empty) == 0

def test_get_album_browse_id(self, yt, sample_album):
warnings.filterwarnings(action="ignore", category=DeprecationWarning)
browse_id = yt.get_album_browse_id("OLAK5uy_nMr9h2VlS-2PULNz3M3XVXQj_P3C2bqaY")
Expand Down
6 changes: 3 additions & 3 deletions tests/mixins/test_search.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@


class TestSearch:
def test_search_exceptions(self):
def test_search_exceptions(self, yt_auth):
query = "edm playlist"
with pytest.raises(Exception):
with pytest.raises(Exception, match="Invalid filter provided"):
yt_auth.search(query, filter="song")
with pytest.raises(Exception):
with pytest.raises(Exception, match="Invalid scope provided"):
yt_auth.search(query, scope="upload")

@pytest.mark.parametrize("query", ["Monekes", "qllwlwl", "heun"])
Expand Down
8 changes: 4 additions & 4 deletions ytmusicapi/mixins/_protocol.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ class MixinProtocol(Protocol):
proxies: Optional[Dict[str, str]]

def _check_auth(self) -> None:
pass
"""checks if self has authentication"""

def _send_request(self, endpoint: str, body: Dict, additionalParams: str = "") -> Dict:
pass
"""for sending post requests to YouTube Music"""

def _send_get_request(self, url: str, params: Optional[Dict] = None) -> Response:
pass
"""for sending get requests to YouTube Music"""

@property
def headers(self) -> Dict[str, str]:
pass
"""property for getting request headers"""
4 changes: 2 additions & 2 deletions ytmusicapi/navigation.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,12 @@

@overload
def nav(root: Dict[str, Any], items: List[Any], none_if_absent: Literal[False] = False) -> Any:
...
"""overload for mypy only"""


@overload
def nav(root: Dict, items: List[Any], none_if_absent: Literal[True] = True) -> Optional[Any]:
...
"""overload for mypy only"""


def nav(root: Dict, items: List[Any], none_if_absent: bool = False) -> Optional[Any]:
Expand Down

0 comments on commit 21d0dbd

Please sign in to comment.