From e25d4ad311388ac5be88db57093dc9217aa592ea Mon Sep 17 00:00:00 2001 From: Keith Edmunds Date: Sun, 5 May 2024 18:38:50 +0100 Subject: [PATCH] Fixup tests --- app/helpers.py | 11 ++++++++++- tests/test_models.py | 6 ++---- tests/test_playlistmodel.py | 11 +++-------- tests/test_playlists.py | 2 -- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/app/helpers.py b/app/helpers.py index bbd1693..7a97030 100644 --- a/app/helpers.py +++ b/app/helpers.py @@ -115,8 +115,17 @@ def get_embedded_time(text: str) -> Optional[dt.datetime]: return None +def get_all_track_metadata(filepath: str) -> Dict[str, str | int | float]: + """Return all track metadata""" + + return ( + get_audio_metadata(filepath) + | get_tags(filepath) + | dict(path=filepath) + ) + def get_audio_metadata(filepath: str) -> Dict[str, str | int | float]: - """Return track metadata""" + """Return audio metadata""" metadata: Dict[str, str | int | float] = {} diff --git a/tests/test_models.py b/tests/test_models.py index db95bf7..22f8b4d 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -33,12 +33,10 @@ class TestMMModels(unittest.TestCase): with db.Session() as session: track1_path = "testdata/isa.mp3" - metadata1 = helpers.get_audio_metadata(track1_path) - self.track1 = Tracks(session, **metadata1) + self.track1 = Tracks(session, **helpers.get_all_track_metadata(track1_path)) track2_path = "testdata/mom.mp3" - metadata2 = helpers.get_audio_metadata(track2_path) - self.track2 = Tracks(session, **metadata2) + self.track2 = Tracks(session, **helpers.get_all_track_metadata(track2_path)) def tearDown(self): db.drop_all() diff --git a/tests/test_playlistmodel.py b/tests/test_playlistmodel.py index 0f777eb..cfb5c45 100644 --- a/tests/test_playlistmodel.py +++ b/tests/test_playlistmodel.py @@ -1,17 +1,14 @@ # Standard library imports import os import unittest -from typing import Optional # PyQt imports from PyQt6.QtCore import Qt, QModelIndex # Third party imports -from sqlalchemy.orm.session import Session # App imports -from app.log import log -from app.helpers import get_audio_metadata +from app.helpers import get_all_track_metadata # Set up test database before importing db # Mark subsequent lines to ignore E402, imports not at top of file @@ -23,7 +20,6 @@ from app import playlistmodel # noqa: E402 from app.models import ( # noqa: E402 db, Playlists, - Settings, Tracks, ) @@ -51,8 +47,7 @@ class TestMMMiscTracks(unittest.TestCase): for row in range(len(self.test_tracks)): track_path = self.test_tracks[row % len(self.test_tracks)] - metadata = get_audio_metadata(track_path) - track = Tracks(session, **metadata) + track = Tracks(session, **get_all_track_metadata(track_path)) self.model.insert_row( proposed_row_number=row, track_id=track.id, note=f"{row=}" ) @@ -113,7 +108,7 @@ class TestMMMiscNoPlaylist(unittest.TestCase): _ = str(model) track_path = self.test_tracks[0] - metadata = get_audio_metadata(track_path) + metadata = get_all_track_metadata(track_path) track = Tracks(session, **metadata) model.insert_row(proposed_row_number=0, track_id=track.id) diff --git a/tests/test_playlists.py b/tests/test_playlists.py index f2b0e67..d0cdfbc 100644 --- a/tests/test_playlists.py +++ b/tests/test_playlists.py @@ -3,14 +3,12 @@ import os import unittest # PyQt imports -from PyQt6.QtCore import Qt # Third party imports import pytest from pytestqt.plugin import QtBot # type: ignore # App imports -from app import helpers # Set up test database before importing db # Mark subsequent lines to ignore E402, imports not at top of file