Commit Graph

158 Commits

Author SHA1 Message Date
Philipp Wolfer
b2861cdeb6 Renamed File.parent to File.parent_item
This avoids hiding QObject.parent()
2024-06-03 08:27:14 +02:00
Laurent Monin
cbfda11da6 Move script functions extension point to extension_points 2024-05-10 10:56:19 +02:00
Laurent Monin
52c01f36d3 test_script: use mock.patch and drop hacky copy/restore/reset of ScriptParser._function_registry 2024-05-10 10:38:16 +02:00
Laurent Monin
e24d4f7e8a Move remaining DEFAULT_* constants to const.defaults
Some imports are made locally to avoid circular import issues (mainly in `util` module)
2024-04-26 18:11:51 +02:00
Laurent Monin
fada4f0a40 Import gettext-related methods, instead of monkeypatching builtins 2024-04-21 23:24:03 +02:00
Philipp Wolfer
41026017c5 PICARD-2568: Fix $cleanmulti with hidden variables 2022-10-02 21:49:23 +02:00
Bob Swift
99883515a6 Reduce code duplication as reported by Codacy 2022-05-29 19:48:42 -06:00
Bob Swift
724793c4ed Change ncase type option name to nocase and add auto type option:
- Change `ncase` type to `nocase` for consistency between functions
- Add `auto` type to auto select between `int`, `float` and `text`
2022-05-29 15:53:40 -06:00
Bob Swift
56a4272252 Automatically expand multi-value args and add ncase type to min/max 2022-05-29 09:11:00 -06:00
Bob Swift
6e61ac6ce4 Add case-insensitive testing option to $lt, $lte, $gt and $gte 2022-05-26 11:59:40 -06:00
Bob Swift
ea4ab0d993 Add different processing types to functions 2022-05-26 11:30:28 -06:00
Bob Swift
b67485b855 Add argument to existing comparison functions to process inputs as text 2022-05-25 11:50:23 -06:00
Bob Swift
8c443aa757 Add text-based comparison script functions 2022-05-24 13:53:50 -06:00
Laurent Monin
2f6479747d Update headers 2022-02-07 09:41:57 +01:00
Philipp Wolfer
5b58e15cfc Merge pull request #2029 from rdswift/allow_empty_strings_in_multi-value
PICARD-2392: Allow empty strings in multi-value variables
2022-01-20 08:18:43 +01:00
Bob Swift
b804208123 Make 'end' argument optional for $substr() function 2022-01-20 08:18:16 +01:00
Bob Swift
975dfdffa9 PICARD-2382: Add option to keep duplicates in $copymerge() function. (#2020) 2022-01-14 07:58:35 +01:00
Bob Swift
c1cbb17a76 PICARD-2349: Standardize on "Standalone recordings" rather than "Non-album tracks" 2022-01-14 07:55:49 +01:00
Bob Swift
d0f512f79f Additional tests to ensure that changes don't break other functions 2022-01-07 09:30:58 -07:00
Bob Swift
49c6c0f2ec Remove underscore from clean_multi for consistency with other functions 2022-01-07 08:56:45 -07:00
Bob Swift
63fa1633f1 Allow empty strings in multi-value variables
- Keep empty strings in multi-value lists
- Add scripting function to remove empty strings from multi-value
- Update tests
2022-01-06 10:43:47 -07:00
Bob Swift
9d5597f9ff Make $slice() 'end' parameter optional 2021-12-22 12:23:27 +01:00
Laurent Monin
14ce07756e Update Copyright headers, with the help of fix-headers.py script 2021-11-10 21:38:54 +01:00
Philipp Wolfer
6af426afe7 PICARD-2254: Added tests for performer tags with multiple colons 2021-08-04 08:24:36 +02:00
Bob Swift
0196b87198 Add tests for $is_multi() 2021-07-24 11:08:13 -06:00
Bob Swift
4956789de4 Allow entering variables as arguments to $dateformat() 2021-07-23 10:03:30 -06:00
Bob Swift
816fcd8022 Use re to split date string. Remove separator parameter. 2021-07-23 09:48:02 -06:00
Bob Swift
3f893dfa84 Add tests 2021-07-23 09:01:01 -06:00
Philipp Wolfer
0209b5ed28 PICARD-2218: Support setting regex flags in $performer pattern 2021-06-02 23:18:45 +02:00
Philipp Wolfer
bdfd5b8156 PICARD-2218: Regex in $performer need to be explicitly enclosed in /.../
Reuse pattern_as_regex to parse the pattern expression
2021-06-02 23:02:48 +02:00
Philipp Wolfer
4aae0bcc2c PICARD-2218: Allow regular expressions in $performer(pattern) 2021-06-02 22:03:58 +02:00
Philipp Wolfer
f79e72b14b PICARD-2216: $performer(pattern) should match only the performance part of tag names
Extended tests to properly test for this condition and also proper handling of multi-value tags.
2021-06-02 22:03:58 +02:00
Bob Swift
3b6dbb7427 Add comments and additional test. Update mocked functions. 2021-06-01 08:36:35 -06:00
Bob Swift
4f4605d2ce Manually add gettext_countries to builtins if it is missing 2021-05-31 14:46:48 -06:00
Bob Swift
7c2be76c75 Use mock for all locale tests 2021-05-31 14:46:48 -06:00
Bob Swift
93519739d7 Use mock for Russian locale tests 2021-05-31 14:46:48 -06:00
Bob Swift
7592a894da Add option to determine whether or not the output is translated. 2021-05-31 14:46:47 -06:00
Bob Swift
7ee6b44241 Disable failing test using Russia as locale. 2021-05-31 14:46:47 -06:00
Bob Swift
75583f3e9f Test using both Russian and English locales 2021-05-31 14:46:47 -06:00
Bob Swift
eb34f66c1a Return country name in currently active UI language. 2021-05-31 14:46:47 -06:00
Bob Swift
27324e8259 Add script $countryname() function. 2021-05-31 14:46:46 -06:00
Philipp Wolfer
c80e7ea758 PICARD-2214: Fix exception if script ends with backslash 2021-05-28 13:14:07 +02:00
Philipp Wolfer
2acdeb77d9 PICARD-2204: Handle EOF when reading "\u" 2021-05-05 12:45:42 +02:00
Philipp Wolfer
5f6e8a0a25 PICARD-2204: Allow Unicode escape sequences in tagger script
This allows specifying Unicode characters as 4 digit hex values with e.g. \uFFFF.
2021-05-05 12:45:42 +02:00
Bob Swift
83074c3c9a Strip empty elements in MultiValue class. Fix $replacemulti() test. 2021-04-12 09:54:39 -06:00
Bob Swift
ba862a14f8 Add one test line to better check the return value of the function 2021-04-11 13:29:23 -06:00
Bob Swift
61f9a6e04e Refactor code slightly and improve test to better reflect the process 2021-04-11 13:13:30 -06:00
Bob Swift
65afbbf2a1 Remove duplication from test 2021-04-11 12:03:01 -06:00
Bob Swift
58148d6118 Remove empty elements from $map() output 2021-04-11 11:46:46 -06:00
Wieland Hoffmann
0d92ddbdaf PICARD-2182: Fix the no-op codepath of $replacemulti
Previously,

> $replacemulti(%foo%,A,,)

fails with

> "Expected str instance, ScriptExpression found"

Eval the ScriptExpression to get the real value.
2021-04-11 11:41:57 +02:00