Commit Graph

813 Commits

Author SHA1 Message Date
Alok Saboo
aeaab7320d Merge branch 'master' into edit 2026-07-12 20:14:33 -04:00
Alok Saboo
210ca09637 ignore item-only fields configured in albumfields 2026-07-12 20:14:11 -04:00
Šarūnas Nejus
8020c07acf Track instrumental lyrics metadata
- Leave lyrics text empty when a backend reports an instrumental track and
  persist that state in lyrics_instrumental.
2026-07-13 01:07:59 +01:00
Alok Saboo
f91ba3a315 Merge branch 'master' into edit 2026-07-12 09:12:02 -04:00
Alok Saboo
55199bf365 harden edit-plugin id matching against duplicate ids and header reordering 2026-07-10 17:52:55 -04:00
Ross Williams
6afc0f282a test: add importer test for fetchart plugin
Test whether fetchart is run during the import phase and, specifically,
whether the `fetch_for_asis` setting is honored. Mock boundary is
between `FetchArtPlugin` and `ArtSource`, an already-existing internal
API boundary.
2026-07-10 22:19:44 +01:00
Ross Williams
77405266eb test: convert test_fetchart to TestHelper
Signed-off-by: Ross Williams <ross@ross-williams.net>
2026-07-10 22:15:39 +01:00
Alok Saboo
094e38e002 Merge remote-tracking branch 'upstream/master' into edit
# Conflicts:
#	docs/changelog.rst
2026-07-10 16:31:13 -04:00
Alok Saboo
855434792c refactor code to remove duplication 2026-07-10 08:27:24 -04:00
Alok Saboo
c30dd28238 address reviewer comment; match track to items by id 2026-07-10 08:27:24 -04:00
Alok Saboo
bf94ae66ef sync branch 2026-07-10 08:27:23 -04:00
Trey Turner
5d2280013a test(ftintitle): remove mostly redundant test_trackinfo_received_preserves_collaborative_artist_credit 2026-07-08 22:02:12 -05:00
Trey Turner
617bfd6a92 fix(ftintitle): remove singleton handling as out of scope 2026-07-08 21:53:00 -05:00
Trey Turner
6132297fa1 test(ftintitle): remove item_data["artist"] assertion from artist_credit test 2026-07-08 21:53:00 -05:00
Trey Turner
b88390fc32 refactor(ftintitle): abstract ft_in_info into ft_in_title 2026-07-08 21:52:52 -05:00
Trey Turner
5738a8a0f1 test(ftintitle): remove artist_credit tests 2026-07-08 21:10:48 -05:00
Trey Turner
9abe96355b fix(ftintitle): defer inclusion of artist_credit, review cleanup 2026-07-08 21:10:48 -05:00
Trey Turner
61f8c94e7f fix(hooks): remove cached property invalidation 2026-07-08 21:10:48 -05:00
Trey Turner
1160d31cfa feat(ftintitle): hook metadata events, fixing mbsync 2026-07-08 21:10:47 -05:00
Šarūnas Nejus
230bf19c7f Remove redundant test logic exposed by full coverage
- Removing the coverage omit configuration exposed unused branches, helpers, and
  fixtures across the test suite.
- Delete that redundant logic and simplify affected tests while preserving their
  behavior.
2026-07-07 15:57:35 +01:00
Šarūnas Nejus
7cf8896597 Make the global config fixture function-scoped 2026-07-03 21:21:19 +01:00
Šarūnas Nejus
7c8924d8c9 Cache config.source in ConfigMixin for test speedup 2026-07-03 21:21:19 +01:00
Temitope S Olugbemi
65a01c2c2a fix(importfeeds): keep import going when a symlink can't be created
When `formats` includes `link`, importfeeds creates a symlink per imported
item. A failed symlink (lacking privilege on Windows, a read-only directory, or
a filesystem without symlink support) raised beets.util.FilesystemError out of
the import pipeline and aborted the whole `beet import` run, even though the
tracks were already imported.

Catch FilesystemError around the link() call, log a per-item warning, and
continue with the remaining items. Add regression tests for the
warn-and-continue behaviour, that only FilesystemError is caught, and that a
successful link still creates the symlink. Add a changelog entry.

Fixes #840.
2026-07-03 10:26:17 -07:00
Šarūnas Nejus
aef9c64cb0 Move DummyIMBackend to fixtures 2026-06-30 21:48:40 +01:00
Šarūnas Nejus
900543baca Move test modules under folders that they belong to 2026-06-30 21:48:40 +01:00
Sebastian Mohr
54a2bd20e1 Removed This file is part of beets... headers. 2026-06-29 11:20:15 +02:00
Alok Saboo
a0f092ff14 fix test_parse_artwork_url placement into TestStaticHelpers class 2026-06-24 14:10:11 -04:00
Alok Saboo
01b12dca3b rename CoverArt types to Artwork to match Tidal API 2026-06-24 14:10:11 -04:00
Alok Saboo
26d90bbcfa make cover_art_by_id required and remove broken fallback URL 2026-06-24 14:10:10 -04:00
Alok Saboo
d26cfdedbc fix cover art types and parsing to match API response 2026-06-24 14:03:58 -04:00
Alok Saboo
659ee7df0b add cover art support 2026-06-24 14:03:56 -04:00
Šarūnas Nejus
8fe9c2e576 Set albumtypes instead of albumtype 2026-06-24 16:44:10 +01:00
Šarūnas Nejus
368d2c0a6d Normalize albumtype 2026-06-24 16:44:10 +01:00
Šarūnas Nejus
fca1aafdd0 Remove misplaced implementation test
Two issues with this one:
1. It tests implementation.
2. It was part of `TidalPluginTest` base class, so it ran multiple times
   in every class that used this mixin:

   $ pytest -vv test/plugins/test_tidal.py | grep flex_field_types
   test/plugins/test_tidal.py::TidalPluginTest::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestAlbumParsing::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestTrackParsing::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestTrackForID::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestTracksForIDs::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestAlbumForID::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestAlbumsForIDs::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestCandidates::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestItemCandidates::test_flex_field_types_are_scoped_correctly PASSED
   test/plugins/test_tidal.py::TestTidalsync::test_flex_field_types_are_scoped_correctly PASSED
2026-06-24 16:44:10 +01:00
Šarūnas Nejus
499e8dc8cb Use a single data-driven test for parsing 2026-06-24 16:44:10 +01:00
Sebastian Cao
755ca6f139 convert: skip missing album art instead of crashing 2026-06-24 16:45:23 +08:00
Šarūnas Nejus
faad463521 Merge branch 'master' into rest-directory-config 2026-06-23 10:02:32 +01:00
Pieter Lenaerts
ec4286d4cf Merge remote-tracking branch 'upstream/master' 2026-06-23 06:59:28 +02:00
Blake Hakkila
9e693fbfa4 Removed no output test and simplified assert logic 2026-06-22 12:18:55 -07:00
Blake Hakkila
ecad4811c6 Merge branch 'master' into rest-directory-config 2026-06-20 17:20:18 -07:00
Blake Hakkila
dc07242840 Simplified tests by removing path variations, kept edge case test for user home path in config 2026-06-20 17:18:54 -07:00
Sebastian Mohr
579c79b1ab Removed plugin: prefix from logging specific tests. 2026-06-20 13:28:47 +02:00
Blake Hakkila
a7aeb6db92 Fixed tests to remove confuse testing and add mock for RestFiles 2026-06-19 15:42:10 -07:00
Blake Hakkila
05ecfc8bc6 Merge branch 'master' into rest-directory-config 2026-06-19 15:18:28 -07:00
Alok Saboo
4e60f86dae Merge branch 'master' into tidal 2026-06-19 09:42:54 -04:00
Trey Turner
c1de81d59c fix(ftintitle): parenthetical features 2026-06-18 19:47:43 -05:00
Blake Hakkila
6080faf5dc Merge branch 'master' into rest-directory-config 2026-06-17 16:07:18 -07:00
Alok Saboo
027f688007 Merge branch 'master' into tidal 2026-06-17 14:06:35 -04:00
Šarūnas Nejus
f3550d3c96 Remove some unused test defs 2026-06-17 18:56:27 +01:00
Šarūnas Nejus
132cd55e21 Remove unused plugin test helpers
- Dropped unused MusicBrainZ and Subsonic test helpers and imports.
- Keeps plugin test modules focused on the behavior they still exercise.
2026-06-17 18:56:27 +01:00