Philipp Wolfer
221c4990e1
PICARD-2584: If AcoustID provides not metadata load the MB recording
...
This resolves problem with AcoustID scan finding no matches or only
standalone-recordings.
2024-01-09 17:57:53 +01:00
Philipp Wolfer
7992d82f79
PICARD-2814: Fix exception on loading embedded cover with invalid ID3 type
2024-01-08 13:23:58 +01:00
Philipp Wolfer
2bff23937a
PICARD-2805: Handle None length in Metadata.length_score
2023-12-22 10:36:15 +01:00
Philipp Wolfer
44bfdb80ce
PICARD-2792: Recordings without releases must score lower than with
...
Apply a weighted scoring based on "Other" release type for recordings
without releases. Otherwise "no release" always gives full score, while
matching against a releases usually always gives some deduction to the
matching score.
2023-12-20 00:26:08 +01:00
Philipp Wolfer
e671c0ec7a
PICARD-2792: Ignore AcoustID sources for recordings without metadata
...
Avoids AcoustID recordings without linked metadata but high source count
getting a disproportional high score.
2023-12-20 00:25:57 +01:00
Philipp Wolfer
35f8fd01e1
Additional test for Metadata.compare_to_track
2023-10-28 00:50:19 +02:00
Philipp Wolfer
618c4f2104
PICARD-2780: Fix checking "video" flag in track comparison
...
The MB API can return "null" for the video flag of a recording. This was
not considered False in the check.
2023-10-28 00:50:19 +02:00
Philipp Wolfer
1e33a4c357
PICARD-2781: Fix matching release type score for releases without type
...
No type should use the "Other" type weight instead of leading to zero
match score.
2023-10-28 00:50:19 +02:00
Philipp Wolfer
eb237c1e01
PICARD-2774: Do not fail loading files with invalid ID3 image types
2023-10-10 16:18:53 +02:00
Laurent Monin
dc851395e0
Merge pull request #2333 from zas/get_qt_enum_generator
...
Make `get_qt_enum()` a generator and extend tests
2023-10-02 18:09:47 +02:00
Laurent Monin
cf3013a353
Make get_qt_enum() a generator and extend tests
2023-10-02 14:02:10 +02:00
Philipp Wolfer
1506462940
Extend asciipunct tests to check for conversion of DOT LEADER
2023-10-02 11:02:49 +02:00
Philipp Wolfer
c965eff013
Additional tests for win_prefix_longpath
2023-09-26 15:13:10 +02:00
Philipp Wolfer
b7d9809506
Hard coded fake "token" in unit test is not a security issue
2023-09-22 07:30:22 +02:00
Bob Swift
bcb98d6665
Add check for missing profile_id keys
2023-09-22 06:59:41 +02:00
Laurent Monin
6e0054d242
TagCoverArtImage(): properly set _repr() and _str() for this subclass
...
Also add matching tests
2023-09-20 13:16:01 +02:00
Laurent Monin
768b392c2f
Merge pull request #2316 from zas/python_audit
...
PICARD-2757: Add a command-line option to enable audit
2023-09-18 15:21:33 +02:00
Philipp Wolfer
31a5d273de
Use raw strings to avoid double backslashes in Windows path strings
2023-09-18 12:03:16 +02:00
Philipp Wolfer
d211e7464d
PICARD-2756: Fix long path support for Windows UNC (network) paths
2023-09-18 12:03:16 +02:00
Laurent Monin
6a8053fcf0
make_prefixes_dict(): split code to list_from_prefixes_string()
2023-09-18 10:54:30 +02:00
Laurent Monin
b8a0002fbe
event_match_prefixes() -> is_matching_a_prefix()
...
This method isn't strictly related to events, but rather to dot-separated keys, use more generic names
2023-09-18 10:54:30 +02:00
Laurent Monin
ea0d4f5a13
make_events_prefixes() -> make_prefixes_dict()
...
Not directly linked to audit events
2023-09-18 10:54:30 +02:00
Laurent Monin
1390ac7f2d
Add a command-line option to enable audit, using Python 3.8 sys.addaudithook()
...
That's a debugging feature.
Try '--audit os.mkdir,open' or '--audit all'
2023-09-18 10:54:30 +02:00
Laurent Monin
9cbc2b4766
Add tests for CoverArtImage __repr__() and __str__()
2023-09-14 14:56:40 +02:00
Philipp Wolfer
cc59c1df76
On plugin import error unset sys.modules again
2023-09-13 08:18:53 +02:00
Philipp Wolfer
b1afa8e121
PICARD-2354: Use MetaPathFinder to find Picard plugins
2023-09-09 16:55:34 +02:00
Philipp Wolfer
83f6b6fc93
PICARD-2690: Move picard/const translations into separate message domain
...
This most prominently moves translations of dropdown lists for locales
and writing systems into a separate component, making it easier to
translate the main UI texts.
2023-08-24 17:36:42 +02:00
Laurent Monin
af6f90d64a
PICARD-2700: fix accumulating series metadata on refresh
2023-08-22 14:20:18 +02:00
Philipp Wolfer
67dc990230
Speed up test_pipe_protocol test
...
Only test a single message, reduce timeouts.
2023-08-20 15:38:31 +02:00
Philipp Wolfer
ddda49c6ff
PICARD-2712: Fix sanitize date removing 0 values
...
Sanitize date cleared zero values in between, such turning "YYYY-00-DD"
into "YYYY-DD", which would be a completely different date.
Fix this by keeping empty values if they are not the last element.
2023-08-17 10:14:45 +02:00
Philipp Wolfer
165cc8519d
Add small delays in test_pipe_protocol tests
2023-08-16 16:55:34 +02:00
Philipp Wolfer
df81f4e48a
Make pipe tests more robust on error
2023-08-15 14:25:34 +02:00
Philipp Wolfer
38ea9d5902
Simplified pipe test case, fixes tests on Windows
2023-08-14 18:44:06 +02:00
Philipp Wolfer
112e0d885e
PICARD-2685: Preserve calculated AcoustID and ReplayGain tags
...
Preserve calculated AcoustID fingerprint and ReplayGain tags set on a file
object when that file object gets moved between tracks.
2023-07-25 00:47:31 +02:00
Philipp Wolfer
c9e728f97d
Added tests for file.copy_metadata
2023-07-25 00:47:31 +02:00
Laurent Monin
497aeae35b
Rework _try_locales(), introduce _try_encodings(), and add tests for them
2023-06-12 23:29:56 +02:00
Philipp Wolfer
27edb07068
Merge pull request #2231 from phw/i18n-tests
...
Refactor loading of locales in i18n module, extended logging and added tests
2023-06-11 17:40:51 +02:00
Laurent Monin
54801d97df
Now that we default to 'C' locale for tests, remove redundant setups
2023-06-11 16:56:37 +02:00
Laurent Monin
386bbd683d
test_existing_locales(): assert the _() changed after setup
2023-06-11 16:56:37 +02:00
Laurent Monin
be393f60af
Default to C locale for all tests
...
It ensures tests aren't locale-dependent.
2023-06-11 16:56:37 +02:00
Laurent Monin
5d486c94fc
WebService: add more tests for queryargs and unencoded_queryargs
2023-06-09 10:20:20 +02:00
Philipp Wolfer
866ef71dce
Skip locale test if locales are not built, build locales in CI tests
2023-06-09 09:19:07 +02:00
Philipp Wolfer
79cbc53f4d
i18n: basic tests for working locales
2023-06-09 08:59:16 +02:00
Laurent Monin
5395cbfc3d
MBAPIHelper: introduce _make_inc_arg() to build inc parameter value
...
- it produces a more stable output (elements are sorted)
- it gets rid of empty elements (preventing a++b case)
- it accepts any iterable
- add a test for it
I also removed 2 useless conversion to tuple() (it can use a set() anyway)
2023-06-09 08:50:34 +02:00
Laurent Monin
58f6b8dc7b
Get rid of APIHelper path list, just pass the path string to append
2023-06-08 16:44:15 +02:00
Laurent Monin
efde79a5e1
API Helpers: use unencoded_queryargs
2023-06-08 16:44:15 +02:00
Philipp Wolfer
c7acf9ea5b
Use base_url in APIHelper instead of separate url and base_path properties
2023-06-08 16:44:15 +02:00
Laurent Monin
944a92eecd
Add an helper method to encode query arguments: encoded_queryargs()
2023-06-08 16:44:15 +02:00
Laurent Monin
16ff3c5c97
Move few functions to new webservice.utils and introduce set_minimum_delay_for_url()
...
- it limits the need to import hostkey_from_url()
- it reduces the size of webservice.py
- it reduces dependencies between files
2023-06-08 16:44:15 +02:00
Laurent Monin
2e54681fd6
Introduce host_port_to_url()
...
This method will help with the move, since we have in many places just host & port (including in Options dialog).
Basically it does its best to convert it to an URL.
2023-06-08 16:44:15 +02:00