Bruno Cauet
bcd57bd2b5
Test queries building sort management in smartplaylist
...
Slighly modify Sort parsing: avoid building MultiplSort() instances
comptised of a single sort, but return that sort instead, since it wraps
things with any gain.
2015-03-18 18:53:41 +01:00
Bruno Cauet
45c0c9b3cb
Deal with sorting
...
Try to follow any sort found & manage absence of sort. When there are
multiple sort directives given, concatenate them.
Tests not extended yet.
2015-03-18 18:09:42 +01:00
Bruno Cauet
65b52b9c48
python 2.6 compat: don't use set literals
...
In smartplaylist and test_smartplaylist.
2015-03-16 19:42:54 +01:00
Bruno Cauet
b79c025142
CLI tests for smartplaylist plugin
...
No import CLI test.
2015-03-16 18:36:08 +01:00
Bruno Cauet
8b6b938a37
SmartPlaylistPlugin: add unit tests
...
They're not exhaustive but still quite heavy.
2015-03-16 18:04:00 +01:00
Bruno Cauet
4151e81969
Implement __eq__ for all Query subclasses
...
Tests are a bit light.
2015-03-16 17:01:14 +01:00
Bruno Cauet
40e793cdb1
Fix flake8 errors
2015-03-16 16:25:43 +01:00
Bruno Cauet
f06c33cb71
Smartplaylist: update only if item changed
2015-03-16 15:16:40 +01:00
Bruno Cauet
02855a44bd
Fix exception construction in util.command_output()
...
`cmd` being a byte string array, it should be joined by b" " and not
u" ".
2015-03-13 11:51:26 +01:00
Bruno Cauet
58b39f1000
Merge branch 'master' into subcommand-auto-format-path
2015-03-05 17:53:31 +01:00
Bruno Cauet
167f067961
Improve behavior of --path: store_true-like
...
Availability of the 'path' presence in arguments can be important for
some plugins such as duplicates, and therefore should be conserved.
2015-03-05 17:40:32 +01:00
Bruno Cauet
650305c9a1
All suitable plugins use CommonOptionsParser features
2015-03-05 17:03:02 +01:00
Bruno Cauet
38ca99498d
Bypass sequential args. parsing for --album
...
When setting format and using --album we *need* to know whether we're in
album mode. Naively if --album happens after "--format fmt" then we'll
set Item format instead of Album format.
By looking forward for -a/--album we bypass that problem.
2015-03-05 16:42:33 +01:00
Bruno Cauet
5623d26a91
Add tests for the CommonOptionsParser
...
Unit test both the features & do real behaviour tests with the 'list'
command.
2015-03-05 16:42:03 +01:00
Bruno Cauet
f14f47f059
Renamed list_format_* into format_*
2015-03-04 16:51:28 +01:00
Bruno Cauet
5a355201d3
test_replaygain: fix except a, b: → except (a, b):
2015-03-04 15:29:19 +01:00
Bruno Cauet
f8e2ca2c94
Replaygain tests: more careful plugins unloading
...
When plugins loading as failed plugins unloading may fail in
consequence, swallowing the loading error. This fixes it.
2015-03-04 15:05:22 +01:00
Bruno Cauet
69786b8538
Fix test.helper.has_program(): encode command
...
subprocess.subprocess.check_call() should receive a byte string command
otherwise it fails with a UnicodeDecodeError on systems with non-ascii
elements in the system path.
Discovered while reviewing PR #1344 .
2015-03-04 15:05:17 +01:00
Adrian Sampson
9c4492752f
Fix a test fix 😳 for #1330
2015-03-01 17:33:11 -08:00
Adrian Sampson
31c7c4a877
Avoid a little global state ( #1330 )
...
For even clearer interaction with the environment.
2015-03-01 17:11:59 -08:00
Adrian Sampson
e14f28fdda
Merge pull request #1330 from brunal/path-query-case-sensitivity
...
Fix path query case sensitivity
Conflicts:
docs/changelog.rst
2015-03-01 17:01:45 -08:00
Bruno Cauet
9efcfbb8fa
PathQuery: add 'case_sensitivity' param
...
- fully tested
- default value is platform-aware
2015-03-01 18:10:07 +01:00
Bruno Cauet
cb504ad163
library.parse_query_string: assert query is unicode
2015-03-01 15:01:27 +01:00
Bruno Cauet
952081e5ed
Revert "InvalidQueryError: resist to any query"
...
This reverts commit 9e5e7a28e5 .
2015-03-01 14:52:31 +01:00
Adrian Sampson
a4dd46dea3
Merge pull request #1333 from brunal/improve-art-detection
...
Improve art detection
2015-02-28 19:12:52 -05:00
Adrian Sampson
ccbe907971
Add (skipped) test for #496
2015-02-24 22:18:05 -08:00
Bruno Cauet
88baf1979e
Revert "Sometimes the extract art test failed because the file type of the extracted image might be PNG or JPG. Belongs to #1328."
...
This reverts commit c91e8cb782 .
2015-02-20 12:56:43 +01:00
Bruno Cauet
a8477264ac
MediaFile: improve cover art detection
...
Filter media file images on their type.
Detection is still not deterministic when 0 or multiple image
have type ImageType.front.
Fix #1332 .
2015-02-20 12:53:43 +01:00
Bruno Cauet
2dec90de7a
Fix assertTags() in mediafile tests
2015-02-20 12:52:59 +01:00
mried
c91e8cb782
Sometimes the extract art test failed because the file type of the extracted image might be PNG or JPG. Belongs to #1328 .
2015-02-19 19:43:07 +01:00
Adrian Sampson
ccd8a7e1d4
Merge pull request #1328 from mried/extractart-unicode
...
Fix a crash when extracting album art
2015-02-18 10:33:33 -08:00
Bruno Cauet
9e5e7a28e5
InvalidQueryError: resist to any query
...
Even though queries may not contain non-utf8 code points
InvalidQueryError ought to be prudent, for such an invalid query would
raise an InvalidQueryError which therefore has to be able to manipulate
the invalid query.
2015-02-18 19:31:07 +01:00
Bruno Cauet
e00d7b7ddc
PathQuery: simple utf8 comparison
...
Test usqge of SQL's substr() with a UTF8 example. The ideal would be to
test with non-UTF8 code points, however it is impossible to perform such
a query: queries can only be unicode or utf8.
2015-02-18 19:28:03 +01:00
Adrian Sampson
6089fb7899
Remove unused import
2015-02-17 17:23:02 -05:00
Adrian Sampson
ca0e9a8c03
Merge pull request #1329 from brunal/play-interactive
...
play command is now interactive
Conflicts:
docs/changelog.rst
2015-02-17 17:22:03 -05:00
Adrian Sampson
171ded17b6
Merge pull request #1320 from brunal/multiple-logging-levels
...
Multiple logging levels
2015-02-17 17:10:31 -05:00
Bruno Cauet
eae98aff0e
PathQuery is case-{,in}sensitive on {UNIX,Windows}
...
PathQuery use LIKE on Windows and instr() = 1 on UNIX.
Fix #1165 .
2015-02-17 13:09:04 +01:00
Marvin Steadfast
dd0de2f04b
Made the permissions plugin simpler. Got rid of some non-needed code and use the ancestors function instead of writing something new.
2015-02-17 11:41:15 +01:00
Marvin Steadfast
21aedeb51a
Updated permissions plugin to change directory permissions too.
2015-02-17 11:41:15 +01:00
Tom Jaspers
12ecb2ce35
Fix formatting to new PEP8 version (1.6.2)
...
PEP8 1.6.2 (2015-02-15):
- added check for breaking around a binary operator
This caused Travis to fail on "W503 line break before binary operator"
2015-02-16 18:21:56 +01:00
Bruno Cauet
c47221555f
Add beets.util.interactive_open() find cmd + execute
...
interactive_open() takes a target and an optional command, if it does not
receive a command then it uses open_anything().
It parses command and lexes it with shlex.split(), revieling the client
from that task.
"config -e" command uses it, and gives a better error message in case of
problem. "play" plugin uses it as well, as side-effect being that the
command is now interactive, as requested in issue #1321 .
Fix issue #1321 .
2015-02-16 12:26:17 +01:00
Bruno Cauet
489b6b2e7e
Move many tests from test_library to test_util
...
Sice they only test functions from beets/util/__init__.py there's not
reason for them to reside in test/test_library.py.
2015-02-16 11:53:01 +01:00
Bruno Cauet
5d9128aff3
util.interactive_open() return open/xdg-open/start
...
Depending on the platform return the correct automatic execution
command.
2015-02-16 11:35:13 +01:00
Malte Ried
b3fc489305
Fixed the flake8 check...
2015-02-15 19:50:11 +01:00
Malte Ried
eafdd9e379
Extraction of cover art of albums with non ascii characters lead to a crash.
2015-02-15 19:39:39 +01:00
Adrian Sampson
494990a7a2
Merge pull request #1322 from tomjaspers/import-metadata-source
...
Set importer metadata source as field
2015-02-15 09:45:12 -08:00
Tom Jaspers
1555d3fe17
Importer metadata source is saved as flex attr
...
Saving a file "as is" keeps the data_source attribute unset
2015-02-15 17:46:00 +01:00
Adrian Sampson
296c2fc3de
Merge pull request #1325 from brunal/master
...
Delete 'format' variables that shadow the built-in
2015-02-13 17:50:46 -08:00
Tom Jaspers
9cdd541943
Error handling for 'filesize' field
...
- Logs a warning and returns 0 if getsize fails
- Add tests for this
Fix #1326
2015-02-13 12:24:21 +01:00
Bruno Cauet
e1e46df1b3
Fix path truncation test: really use bytes
...
Test is to use bytes but because of __future__.unicode_literals it used
unicode.
2015-02-12 11:56:54 +01:00