Peter Kessen
c63db558e9
removed useless install of IO capture
...
This was introduced by a copy and paste from other code. I removed it now
2015-09-17 12:55:57 +02:00
Peter Kessen
d607ae7adc
using asserRaises in test instead of previous workaround
...
used a workaround with try and except to check for a raised Exception before
2015-09-17 12:50:30 +02:00
Peter Kessen
57452624ae
using local variable instead of object attribute
2015-09-17 12:47:22 +02:00
Peter Kessen
6fdf93b59d
changed name of method to lowercase: add_item
2015-09-17 12:43:22 +02:00
Peter Kessen
4756f2878a
corrected description of test case
2015-09-16 22:18:24 +02:00
Peter Kessen
be583cd63e
added test for beets.ui.commands
...
* added test of _do_query method
2015-09-16 22:11:39 +02:00
Adrian Sampson
f4a124e7e2
Fix #1605 : parsing bare + and - in queries
2015-09-15 13:53:41 -07:00
Jack Wilsdon
46e5f9d4c8
Update tests to follow PEP 8 coding style
2015-09-11 18:39:15 +01:00
Jack Wilsdon
276c5da913
Remove unused logging import
2015-09-11 18:37:20 +01:00
Jack Wilsdon
0af47bff44
Add tests for hook plugin
2015-09-11 18:11:30 +01:00
Malte Ried
ff9dc07589
Merge branch 'master' into RobustCaseSensitiveDetection
2015-09-11 12:38:50 +02:00
Jack Wilsdon
b1cef2606b
Delete the artwork file if the test failed
2015-09-10 22:48:47 +01:00
Jack Wilsdon
2f333968c5
Add test for removing art files (remove_art_file property) ( #1591 )
2015-09-10 22:18:13 +01:00
Jack Wilsdon
622c5d1e0f
Fix unexpected spaces around keyword / parameter equals
2015-09-10 05:14:07 +01:00
Jack Wilsdon
7a70bd3b81
Add test for custom named music section (library_name property) ( #1595 )
2015-09-10 05:08:16 +01:00
Jack Wilsdon
4a225ee291
Allow a custom music section name to be provided when generating a response
2015-09-10 05:07:14 +01:00
Jack Wilsdon
2b37d8f775
Add library_name parameter to plexupdate tests
2015-09-08 14:50:49 +01:00
Malte Ried
42f99999f2
Improved the case sensitivity detection test.
2015-09-07 12:28:19 +02:00
Malte Ried
58ddecf7af
Added a Patch decorator for the os.path.samefile function to repair some previously failed test cases.
2015-09-04 18:34:43 +02:00
nath@home
9c663432bd
Refactor util/interactive_open: multiple targets
...
interactive_open should now be invoked with at least the list of
targets and optionally the command to open the targets with.
This allows beets-play to pass multiple file paths directly to
the configured command.
The changes to the existing invocations are pretty trivial in
order to comply to this refactor.
2015-09-01 23:42:42 +02:00
Adrian Sampson
6866019cb3
Merge pull request #1558 from raymondwanyoike/unicode-support
...
Support paths with non ASCII characters
2015-08-03 08:43:22 -07:00
Raymond Wanyoike
2490863042
Fix unicode paths in permissions test
2015-08-03 16:21:46 +03:00
Adrian Sampson
7d55126070
Merge pull request #1397 from multikatt/ipfs
...
Ipfs plugin
2015-08-02 18:39:55 -07:00
Adrian Sampson
5bf82f8670
Merge pull request #1545 from nathdwek/fix-jpeg-detection
...
Embedart: fails on some jpegs because imghdr doesn't recognize the mimetype
2015-07-27 11:36:54 -07:00
nath@home
68ec8294e4
smaller test image for fix-jpeg-detection
2015-07-21 21:18:57 +02:00
nath@home
fc507faee2
added comment to the test
2015-07-21 19:53:20 +02:00
nath@home
b444ec496c
simple testing for wider_jpeg_detection now done in test_mediafile_edge.py
2015-07-21 18:40:49 +02:00
David Logie
44a32fe4a9
Remove extra blank line.
2015-07-21 16:54:23 +01:00
David Logie
71d3be238b
zero: optionally update tags in the database.
2015-07-21 16:54:23 +01:00
nath@home
4b63848d51
flake8 fix
2015-07-21 17:51:25 +02:00
nath@home
c8d3a6f6fc
added tests
2015-07-21 15:32:43 +02:00
Adrian Sampson
287f0d8cef
Fix typo and test bug revealed by mock fix
...
Mock used to tolerate a mistyped call like `assert_calledwith` when we meant
`assert_called_with` silently. This seems to be fixed. Fixing the typo
revealed that the assertion was actually wrong, so I fixed that too.
2015-07-13 16:34:09 -07:00
Ben Ockmore
de17d000bd
Rewrote path legalization code to be two module functions rather than class methods. Also made algorithm more predictable, and added an extra test.
2015-07-07 01:17:12 +01:00
Ben Ockmore
d07c8fde69
Added loop to iterate over sanitize/truncate until stable. Enabled test_truncation_does_not_conflict_with_replacement test. Fixes #496 .
2015-07-06 14:57:15 +01:00
Tom Jaspers
18bd4471e4
Fix sorting of track numbers when case insensitive
...
`LOWER()` implicitly converted numerical columns to strings,
causing the ordering of ['1', '10', '2'] to be correct.
The type of the column is now checked in the sql query
using `CASE WHEN..` construct. This ensures the column is
only `LOWER()`'d when dealing with TEXT or BLOB.
- Add a test to check for the track number behavior
- Add changelog entry
Fix #1511
2015-07-05 19:56:14 +01:00
Ed Carroll
f78393aa86
Updated tests to include Plex Token
2015-06-04 01:13:30 +01:00
multikatt
2be0e7715f
Adding tests
2015-06-02 23:03:37 -04:00
Markus Unterwaditzer
f82c7ec5d1
Fix test_thumbnails
2015-06-02 00:40:01 +02:00
Tom Jaspers
be484f2af0
Implement --pretend option for the move command
...
The method `show_path_changes` takes a list of tuples (source, destination)
that will be printed on either single / double line, as proposed in #1405 .
2015-05-20 13:03:18 +02:00
Adrian Sampson
adebb850b5
Tests: fix a leaky error message
...
Caused by inadvertently executing too much at module-import time. By
materializing ArtResizer in a global definition, we triggered a debug log
before the test harness had a chance to capture the logging.
2015-05-19 16:50:05 -07:00
Adrian Sampson
07242f65e2
Convert always uses bytestring args ( #1461 )
2015-05-19 16:38:08 -07:00
Adrian Sampson
36c2241a34
Use bytestring filenames in embedart tests
...
First step on #1461 .
2015-05-19 16:09:39 -07:00
Tom Jaspers
a82dee35cb
fetchart complains if no imaging backend available
...
The `enforce_ratio` and `minwidth` options depend on PIL or ImageMagick.
Previously it silently fails. Now it will log a warning, and accept the
image.
Tests concerning these options are skipped when no imaging backend is available.
Fix #1460
2015-05-18 19:44:40 +02:00
Adrian Sampson
d6348a4da2
tests: Use bytes for mock responses
...
Also, require a newer version of responses that is less sensitive to this.
2015-05-13 18:09:35 -07:00
Adrian Sampson
71d7c0b004
Merge pull request #1450 from tomjaspers/metasync-itunes
...
MetaSync: more OO structure + iTunes support
2015-05-13 15:04:36 -07:00
Tom Jaspers
94edc7a2a4
MetaSync: minor improvements for iTunes source
...
- Use path as an key to find items (over artist/title/album tuples)
- Sensible default library location
2015-05-13 20:02:34 +02:00
Adrian Sampson
dff4feaec2
embedart: Preempt wrong-type error in AAC files
2015-05-11 17:46:21 -07:00
Tom Jaspers
16531b6cf8
MetaSync: fix tests for Windows
2015-05-11 17:42:52 +02:00
Tom Jaspers
afeedd2e70
MetaSync: basic tests
...
No tests for Amarok, unfortunately
2015-05-10 14:46:59 +02:00
Lucas Duailibe
df89a68a99
Fixing sort by path ( fix #1451 )
2015-05-07 23:45:26 -03:00
Cody Reichert
b776a71a8c
handle mpdstats update_rating when item is None / add appropriate tests
2015-04-28 23:23:27 -05:00
Adrian Sampson
ba87ea1f30
Skip symlink tests on Windows
...
... where there is no symlinking.
2015-04-23 17:43:15 -07:00
D Andrew Reynhout
e4dcdfe609
Fix autotag test: duplicated assertion
2015-04-23 15:46:53 -04:00
Tom Jaspers
24e6ba3de8
Tests for case insensitive sort
...
- Changed old values to be capitalized (more natural)
- Introduced specific tests for case sensitivity which adds lower-values
2015-04-18 11:22:01 +02:00
Adrian Sampson
56ca69d63d
Fix #1404 by only writing _media_fields
...
This just makes "date" and "original_date" into ordinary flexible fields,
which is probably the way it should be.
2015-04-16 19:55:48 -07:00
Adrian Sampson
0979148866
Slightly more legible tests
2015-04-16 19:31:27 -07:00
Adrian Sampson
7c1cf6632e
Add test for leading comma ( #1423 )
2015-04-16 19:28:03 -07:00
Tom Jaspers
13eabe25dd
"or"-operator tests on dbcore:parse_sorted_query
2015-04-16 10:04:32 +02:00
Adrian Sampson
a0ff517d17
Guess output encoding from sys.stdout.encoding
...
Rather than using the locale settings. #1419
2015-04-13 11:11:16 -07:00
Bruno Cauet
882844bc77
Echonest conversion command: only use byte strings
...
Temp file name was unicode, so if other parts of the command were
utf8-encoded non-ascii strings the command would fail (in
beets.util.command_output()). Requesting a temp file with a byte string
path fixes the issue.
Fix #1407 .
2015-04-09 18:05:41 +02:00
Frederik “Freso” S. Olesen
0d21e816d4
Fetchart: Remove hard 500px size limit for CAA cover art.
...
Using -500 URLs for coverartarchive.org will only ever return images
where the biggest dimension is (width or height) is 500 pixels,
regardless of what fetchart settings are otherwise set.
This commit removes the -500 from the URL entirely rather than using it
conditionally, since a maxwidth of 500 will allow for a 600 high and 500
wide image, but CAA.org/...-500 would return a 500x417 image instead, so
not enforcing a size is the only way to ensure the user's {max,min}width
settings are properly respected.
2015-04-07 15:24:01 +02:00
Tom Jaspers
7bdcb08ef5
Merge pull request #1394 from tomjaspers/fetchart-minwidth-ratio
...
Fetchart: minwidth and enforce_ratio options
2015-04-06 11:20:33 +02:00
Tom Jaspers
2c6f29bfb6
Add tests for minwidth and enforce_ratio
2015-04-06 11:12:16 +02:00
Adrian Sampson
61ffc165df
Tests: avoid leaking a mock
...
The decorator is now necessary because we're patching a module-global.
2015-04-05 12:28:14 -07:00
Adrian Sampson
0af2cdaa3a
New beets.art image utilities
...
This makes it cleaner to share the high-level image-embedding logic between
the `embedart` and `convert` plugins. This resolves a regression, introduced
in f504c786 , that inadvertently activated the former plugin when the latter
was enabled. I also like avoiding cross-plugin imports.
2015-04-05 12:15:38 -07:00
Bruno Cauet
76be623031
Fix concurrent logging testing
...
Set the verbosity in the config from the beginning.
Use self-made barriers (DummyPlugin.step1, DummyPlugin.step2) and
Thread.join() to ensure everything is going as expected.
2015-04-01 17:38:49 +02:00
Bruno Cauet
2c37602d66
Concurrent logging tests: raise thread exc in main thread
...
In ConcurrentEventsTest.test_concurrent_events listener1 sometimes has a
wrong log level. However the AssertionError is raised in a thread and
not the main one, so the test seems passing while it should fail.
By storing the exception and raising it later we solve that issue,
allowing to fix the random fail.
2015-04-01 17:06:42 +02:00
Bruno Cauet
5e26d483a8
Replace deprecated assertEquals with assertEqual.
2015-04-01 10:48:03 +02:00
Bruno Cauet
c6f6e3164a
Merge branch 'thread-safe-logging2'
2015-04-01 10:45:12 +02:00
Bruno Cauet
05de43a942
Share logging level between beets base logger refs
...
Add BeetsLogger.set_global_level() so the 'beets' logger has the same
level in all threads, which is important for an import session.
2015-03-31 18:03:11 +02:00
Adrian Sampson
882723a0bf
Merge pull request #1387 from brunal/improve-path-query
...
Improve path query: autodetect only if the target exists
2015-03-30 22:36:25 -05:00
Tom Jaspers
c95b89ebc1
Thumbnails: add None check on lib_name
...
`find_library` could return None, which would not cause an OSError
from `loadLibrary`, making the plugin (falsely) think the library is available
Also fixed wrong method call to skip test in that case
See #1277
2015-03-30 19:56:22 +02:00
Bruno Cauet
ad34642877
Improve path query parts detection: test existence
...
Detect path parts of a query with `PathQuery.is_path_query()` which
tests for `os.sep` presence AND query part existence.
Also fix a bug where "my_path/" would not get detected: colon absence would
make search for `os.sep` only happen in "my_path".
Fix #1385 .
2015-03-30 13:08:14 +02:00
Adrian Sampson
e953e6bdcb
Merge branch 'master' of github.com:sampsyo/beets
2015-03-29 14:28:22 -07:00
Adrian Sampson
c37561c74b
Redact by default ( #1376 )
2015-03-29 14:26:16 -07:00
Bruno Cauet
9705c09035
Merge branch 'thumbnails'
2015-03-29 21:44:42 +02:00
Adrian Sampson
eeca2105f9
Merge pull request #1377 from amishb/custom_ft_title
...
ftintitle plugin now allows a custom format to be defined (Correct Branch)
2015-03-29 12:05:53 -07:00
Adrian Sampson
1539af2a07
Fix tests for new redaction
2015-03-27 22:27:03 -04:00
Adrian Sampson
b477f4a53f
Merge pull request #1376 from tomjaspers/config-redacted-fields
...
Config: new option -r redacts sensitive fields
Conflicts:
beets/util/confit.py
2015-03-27 22:11:24 -04:00
Amish Bhadeshia
6365a9b538
Added indice into curly brackets, for py26 compatabiity
2015-03-27 20:54:42 +00:00
Amish Bhadeshia
20debd020e
Fixed travis errors
2015-03-27 20:45:28 +00:00
Amish Bhadeshia
232ff05766
Added tests and simplified implementation method
2015-03-27 17:59:35 +00:00
Bruno Cauet
0b50dc91ef
Fix flake8 error
2015-03-27 14:57:45 +01:00
Tom Jaspers
ce78be3eb6
Config: add docs & tests for --redacted option
2015-03-26 12:49:54 +01:00
Bruno Cauet
35ff1f821d
Test GIO URI results.
...
Complete PR #1277 !
2015-03-25 20:31:34 +01:00
Bruno Cauet
be5f80d51a
Update thumbnails tests
...
Still missing: testing the specific output of GioURI.uri()
2015-03-25 20:14:19 +01:00
Bruno Cauet
265fa962eb
Merge branch 'master' into thumbnails
2015-03-25 18:17:12 +01:00
Bruno Cauet
199844671e
Add concurrent logging tests
...
Should work for PR #1366 as well.
2015-03-25 12:57:26 +01:00
Bruno Cauet
dfa18b1119
Make beets loggers level thread local.
...
This updates the beets logger class. Tests are missing.
2015-03-25 12:55:40 +01:00
Bruno Cauet
998d04d3eb
Update logging tests (taken from sampsyo/thread-safe-logging)
2015-03-25 12:55:37 +01:00
Bruno Cauet
8f5bae26fd
Smartplaylists: improve tests & code modularization
2015-03-25 10:44:33 +01:00
Bruno Cauet
adec09de96
Fix outdated docstring in test.TestHelper
2015-03-23 19:15:14 +01:00
Adrian Sampson
d09c8c66b3
Merge pull request #1359 from brunal/more_info_in_db_changes
...
Smartplaylist only updates playlists that may have changed
2015-03-19 09:42:52 -04:00
Bruno Cauet
7f34c101d7
Plugin events: restore backwards compatibility
...
An event listener that expects too few arguments won't crash, arguments
will be cut off instead. This restores a backwards-compatibility hack
that was removed in commit 327b62b6 .
2015-03-19 13:37:53 +01:00
Bruno Cauet
12c2511b1f
Smartplaylist tests: don't use a dict literal
...
fucking py26!
2015-03-19 13:37:29 +01:00
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
8e25a70e40
summarize_items(): sort format by decr. freq
...
Make the summary deterministic.
2015-03-16 14:41:43 +01:00
Bruno Cauet
1e2d481ac0
Add tests for summarize_items()
2015-03-16 14:29:09 +01:00
Adrian Sampson
cf3388fae7
Merge pull request #1344 from jmwatte/bs1770gainsupport
...
Bs1770gainsupport-tests
2015-03-15 15:35:39 -07: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
jean-marie winters
efb7370e04
Merge branch 'master' of https://github.com/sampsyo/beets into bs1770gainsupport
2015-03-06 22:02:48 +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
jean-marie winters
5d9bb5059a
corrected typo
2015-03-04 07:20:53 +01:00
jean-marie winters
614f8eda88
added tests for bs1770gain
2015-03-03 23:02:02 +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
Bruno Cauet
d267741ff3
Delete 'format' variables that shadow the built-in
...
Also cleanup the 'the' plugin a bit: delete unused variables.
Relates to #1300 .
2015-02-11 16:26:16 +01:00
Tom Jaspers
20ae26dd77
Importer metadata source is set as a field: tests
...
See #1311
2015-02-11 10:14:56 +01:00
Bruno Cauet
f1e13cf886
Offer verbose and very verbose modes
...
'verbose' is now an int and not a boolean. '-v' is level 1, '-vv' level
2. In the configuration it can be set with 'verbose: 1' or 'verbose: 2'.
Improve #1244 : auditing current log levels of plugins remains.
2015-02-10 17:13:15 +01:00
Bruno Cauet
327b62b610
Improve logging management for plugins: fixes
...
Delete the remaining usages of BeetsPlugin.listen().
Since BeetsPlugin.listeners are wrapped by a loglevel-setting function,
we cannot easily check their unicity anymore.
BeetsPlugin._raw_listeners set holds the raw listeners.
Legacy plugins that did not handle enough arguments in their listenings
functions may break: dedicated code is now deleted for it would not work
with the decorated listeners.
Tests got fixed. Some modifications were done empirically: if it passes
then it's okay.
2015-02-10 16:55:06 +01:00
Bruno Cauet
4578c4f0e1
Improve logging management for plugins
...
Listeners get logging level modulations, like import_stages already did.
Add extensive tests:
- explicit plugin commands are logged like core beets (INFO or DEBUG)
- import stages are more silent
- event listeners are like import stages
Delete @BeetsPlugin.listen decorator since listeners need plugin instance
context to set its logging level.
Improve #1244 . Next is multiple verbosity levels.
2015-02-10 15:30:15 +01:00
Bruno Cauet
7476d6be46
InvalidQuery*Error extend ParsingError
...
And InvalidQueryArgumentTypeError does not extend TypeError anymore.
2015-02-09 19:25:23 +01:00
Bruno Cauet
c6455c269f
Merge branch 'master' into thumbnails
...
Conflicts:
docs/changelog.rst
2015-02-09 16:08:29 +01:00
Bruno Cauet
f443e0bfc5
InvalidQueryArgumentTypeError does not extend InvalidQueryError
...
Places where InvalidQueryArgumentTypeError may be raised (i.e. all
current ones) may not know the query therefore it cannot be an
InvalidQueryError. The InvalidQueryArgumentTypeError is caught in
beets.library.Library._fetch() and an InvalidQueryError is then raised.
Improve #1290 .
2015-02-09 15:44:49 +01:00
Bruno Cauet
54887e7655
Widen usage of InvalidQueryError
...
Replace previous InvalidQueryError with InvalidQueryArgumentTypeError
which extends the former as TypeError. However they lack context: the
query that caused the error.
Raise an InvalidQueryError when a shell-like expression cannot be parsed
by shlex.
Improve #1290 .
2015-02-09 15:28:06 +01:00
Tom Jaspers
bbc6d0906b
Merge pull request #1312 from tomjaspers/album-path-queries
...
Album path queries get constructed properly
Fix #1307
2015-02-08 16:43:55 +01:00
Tom Jaspers
0a81aae142
PathQueryTest: rename assert_matched for items
2015-02-08 16:34:28 +01:00
Adrian Sampson
e7f8a627e9
Style fixes for pep8 1.6
2015-02-07 12:51:54 -08:00
Tom Jaspers
3ec44aab3e
Update _types field instead of assigning it
...
Assigning it would override our pre-defined types
(such as `path` in Album._types)
2015-02-06 10:42:46 +01:00
Tom Jaspers
f4d971d3a8
PathQueryTest now also tests Album queries
2015-02-06 10:36:23 +01:00
Adrian Sampson
82e89b8960
Merge pull request #1292 from mried/import-autosingleton
...
Allow plugins to change the created import tasks
2015-02-03 09:49:13 -08:00
Tom Jaspers
6ed0b2e0f3
Expose an Item's filesize as a field
...
- Update test-case for info to make sure the item's path is pointing to an actual file.
See #1291
2015-02-02 21:52:23 +01:00
geigerzaehler
46ba99ce79
Merge pull request #1295 from sampsyo/more-info
...
Info plugin can filter properties in output
2015-02-01 21:19:24 +00:00
Thomas Scholtes
482008bf1d
Info plugin can filter properties in output
...
Resolves #1287
2015-02-01 21:51:26 +01:00
Malte Ried
e681449785
Added documentation
...
FileFilterPlugin uses the new return value feature
Some tweaks to get the code more readable
2015-02-01 17:01:06 +01:00
Malte Ried
754a90dc90
Merge branch 'master' into import-autosingleton
2015-02-01 16:12:59 +01:00
Thomas Scholtes
51ab099145
Extend item.write() to embed images without changing item
...
Fixes #1241 and geigerzaehler/beets-check#14
Before, `embed_item` would add the images to the item and then call
`item.write()` to write the item data, including the image, to the
file. This would trigger `item.store()` in the `after_write` hook of
the check plugin. This would in turn try to persist the temporary
`images` attribute of the item, resulting in an SQL error.
2015-02-01 15:35:24 +01:00
Adrian Sampson
14ce6a557e
Merge pull request #1183 from marcaddeo/refactor-ftintitle
...
Refactor ftintitle
Conflicts:
beetsplug/ftintitle.py
2015-01-31 12:51:15 -08:00
Bruno Cauet
60a89d3a7b
Fix thumbnails test
2015-01-31 21:37:14 +01:00
Adrian Sampson
3f0dbb876d
Tests for #1285 : normalize Unicode filenames
2015-01-31 11:54:32 -08:00
Adrian Sampson
9de9d2497f
Unicode tests for #1285
2015-01-31 11:29:32 -08:00
Adrian Sampson
614fbf20ca
Tests for #1285 : parameterize tests
...
Also remove an errant `print` and use `rb''` literals for regexes.
2015-01-31 11:24:27 -08:00
Bruno Cauet
e99adddb11
Importer: byte strings for multi-disc directories
...
Make regexes from raw byte strings and not unicode.
Update the tests.
Fix #1285
2015-01-31 15:40:49 +01:00
Bruno Cauet
557330e994
Fix open numeric ranges
...
Also improve InvalidQueryError message and update
NumericQuery._convert() docstring.
Fix #1288 .
2015-01-31 14:21:32 +01:00
Malte Ried
a608a5fc36
Plugins are able to return a list of import tasks to create instead of the original import task using the import_task_created event. Needed for #1167
2015-01-31 12:41:01 +01:00
Tom Jaspers
927a53d59b
Merge pull request #1281 from tomjaspers/configurable-colors
...
Colors are now user configurable.
Conflicts:
beets/ui/__init__.py
beets/ui/commands.py
2015-01-30 13:48:19 +01:00
Bruno Cauet
d299f40a72
Fix PNG metadata type: string only
...
instead of int
2015-01-29 16:00:05 +01:00
Tom Jaspers
e7378c77a7
Fix tests to use config['ui']['color'] instead of top-level color
2015-01-29 14:04:37 +01:00
Bruno Cauet
9bdeb01689
Improve thumbnails logging
...
No info message printed twice per cover art (once for the normal
thumbnail and once for the big one)
2015-01-29 13:11:14 +01:00
Bruno Cauet
a78cc65826
Merge freedesktop plugin into thumbnails
...
Add test for that new code, update docs, update the changelog.
2015-01-29 13:08:02 +01:00
Bruno Cauet
bea5ad3f97
thumbnails: fix --force option management
2015-01-29 12:19:19 +01:00
Bruno Cauet
c09b01ce74
Add tests for thumbnails plugin
2015-01-29 12:19:19 +01:00
Adrian Sampson
790c41a73d
write: Do not try to write non-writable fields
...
Fix #1268 .
2015-01-27 15:03:19 -08:00
Bruno Cauet
dbef31776f
Replace ur'' strings by r'' strings
...
Since we use unicode_literals they are equivalent, but ur'' strings are
a syntax error in python 3.0+
2015-01-27 09:02:44 +01:00
Adrian Sampson
b8dab9cf9f
Merge pull request #1247 from brunal/future
...
Use all __future__ imports in beets core
Conflicts:
beetsplug/web/__init__.py
test/test_embedart.py
2015-01-26 17:02:07 -08:00
Bruno Cauet
4e904c78af
Simplify LibModel format management
...
Delete `ui.format_` and then `ui.print_obj`. Simply ensure that when
there is no format it defaults to '' = default format = config option.
2015-01-26 23:09:56 +01:00
Bruno Cauet
060c275fd3
Merge branch 'master' into libmodels-formatting
...
Conflicts:
beetsplug/embedart.py
2015-01-26 10:17:15 +01:00
Bruno Cauet
bd29ab21e1
Delete outdated disabled test in test_library.py
...
TemplateTest.album_fields_override_item_values() never ran because of
its name (missing 'test_' prefix). When run it now fails for it targets
outdated functionality.
2015-01-25 21:38:29 +01:00
Bruno Cauet
73d200184b
Implement __format__ on Album and Item
...
Cut the need to format manually (and often incorrectly) when logging by
implementing the __format__ magic method (see PEP 3101) on LibModel
(the parent class of Album & Item).
Based on a discussion in PR #1262
2015-01-25 19:41:49 +01:00
David Logie
29de697a8d
Fix bug where playlists were not created in subdirs.
...
Playlist names containing path separators would cause beets to crash if
the parent directories for the playlist didn't already exist.
2015-01-24 13:00:25 +00:00
Matthias Kiefer
b16898743d
Fixed IndexError on reading embedded cover art with invalid cover type
2015-01-23 13:44:08 +01:00
Bruno Cauet
268dcb0008
test.helper.log_capture() unicode handling
...
Except unicode message instead of bytes.
Fix #1253
2015-01-21 19:18:57 +01:00
Adrian Sampson
070d4feb62
Remove unused import
2015-01-21 10:10:47 -08:00
Adrian Sampson
6b11c6326e
embedart: Fix test for 433d6b7 ( #1252 )
2015-01-21 09:35:36 -08:00
Bruno Cauet
c2f8cb9983
Merge branch 'master' into future
...
Conflicts:
test/test_plugins.py
2015-01-21 10:04:33 +01:00
David Logie
f458549e4e
mbsync: Set default album/item format for tests.
2015-01-21 08:05:27 +00:00
David Logie
28f616f75d
mbsync: Remove unnecessary decorators.
2015-01-21 08:05:27 +00:00
David Logie
11a21e149e
mbsync: Improve tests.
...
* Move the "skipped item" tests to their own method.
* Add a test for the default format
2015-01-21 08:05:27 +00:00
David Logie
3e9f716b68
Remove unused variable.
2015-01-21 08:05:27 +00:00
David Logie
1380ee79dc
Add basic test for custom mbsync formats.
2015-01-21 08:05:27 +00:00
Adrian Sampson
1a151c2272
Remove redundant config rest in tests
...
teardown_beets resets the configuration already.
2015-01-20 15:22:59 -08:00
Adrian Sampson
07f99e6ab7
Fix up tests for import_task_created ( #1186 )
2015-01-20 14:51:26 -08:00
Adrian Sampson
8e94419c2a
Fix filefilter ( #1186 ) tests for consistent colons
...
I added this to the pretend output a few commits ago.
2015-01-20 14:34:42 -08:00
Adrian Sampson
0a8dcadb75
Rename regexfilefilter to filefilter ( #1186 )
2015-01-20 14:32:22 -08:00
Adrian Sampson
ebc065ecec
Merge branch 'mried-import-filefilter'
...
Merge of PR #1186 .
2015-01-20 14:22:55 -08:00
Malte Ried
a62a152010
Moved the regular expression file filter into a separate plugin.
2015-01-20 19:50:00 +01:00
Bruno Cauet
53c21330c2
All tests use unicode_literals
2015-01-20 15:58:02 +01:00
Bruno Cauet
152e93136b
test._common and test.helper use unicode literals
2015-01-20 15:52:47 +01:00
Bruno Cauet
afb1611cf2
Fix test.helper __future__ imports
2015-01-20 12:51:27 +01:00
Bruno Cauet
02d8e88ef1
Replace all mentions of 'str' with 'bytes'
2015-01-20 12:48:15 +01:00
Bruno Cauet
9c41c39913
Do __name__ comparison with bytes and not unicode
2015-01-20 12:03:57 +01:00
Bruno Cauet
454da9dc7b
Fix print usage in test helper script
2015-01-19 22:08:04 +01:00
Bruno Cauet
2dab8e5fd6
Import unicode_literals in beets package
2015-01-19 21:41:33 +01:00
Bruno Cauet
6fff7a954c
Import unicode_literals in beets.dbcore
2015-01-19 17:18:50 +01:00
Bruno Cauet
8dd7bf0f0b
unicode_literals in beets.ui and beets.autotag
...
Well, that was easy!
2015-01-19 17:18:50 +01:00
Bruno Cauet
90b388b775
Use __future__ imports but unicode_literals everywhere
...
Include import of __future__ features division, absolute_imports and
print_function everywhere. Don't add unicode_literals yet for it is
harder to convert.
Goal is smoothing the transition to python 3.
2015-01-19 12:25:16 +01:00
Bruno Cauet
2902cda036
tests: use absolute imports everywhere
2015-01-19 12:25:15 +01:00
Bruno Cauet
b436e75a9e
embedart: fix behaviour on IM unparseable output, add tests
...
Test all EmbedCoverArtPlugin.check_art_similarity() code paths.
Improve #1241 .
2015-01-19 11:50:51 +01:00
Adrian Sampson
dc5a79e35c
New import_task_created event
...
Part of #1186 .
2015-01-18 15:37:48 -08:00
Malte Ried
0eb185a5e7
Merge branch 'master' into import-filefilter
2015-01-18 18:55:24 +01:00
Adrian Sampson
6fb3b24c31
Merge pull request #1221 from brunal/crash-on-invalid-queries
...
Stop on invalid queries instead of ignoring them
2015-01-15 10:50:05 -08:00
Bruno Cauet
f4b4847919
Rename exception: InvalidQuery → InvalidQueryError
...
Follow PEP8.
2015-01-15 11:47:35 +01:00
Bruno Cauet
b49cd3b73b
Lyrics plugin: fix google backend
...
Give config on backends init so the Google backend can get the API key
and Engine Id.
Fix #1226
2015-01-15 11:28:04 +01:00
Bruno Cauet
0d1fa80651
Smartplaylist: don't utf8-encode the name
...
A Template expression expects an unicode, not an utf8-encoded string.
Add a test for that.
2015-01-14 12:32:00 +01:00
Bruno Cauet
3804eb5b52
Stop on invalid queries instead of ignoring them
...
So far an invalid query won't be applied:
$ beet ls The Beatles year:196a
will be treaded as
$ beet ls The Beatles
With this commit it stops beets, returns 1 and produces
$ invalid query: u'196a' is not an int or a float
This applies to any querying and therefore on many command, plugins and
some configuration options.
Invalid queries exist on numeric fields and on regular expression usage.
Compile regular expression queries upon instantiation instead of upon
each match test.
The reporting can be improved (give more context). Fix #1219 .
2015-01-14 11:28:50 +01:00
Malte Ried
ad65242ebd
Merge branch 'master' into import-filefilter
...
Conflicts:
beets/importer.py
beets/plugins.py
beetsplug/ihate.py
2015-01-14 10:46:03 +01:00
Bruno Cauet
2e57d8660e
Ensure there's no duplicate plugin listeners
...
A same function cannot be registered twice on a given event.
This will permit improvements of some plugins (e.g. smartplaylist)
2015-01-13 11:29:42 +01:00
Bruno Cauet
621ea60af4
Improve importer log unicode-handling test
...
Send unicode instead of utf8-encoded string and check that the
non-ASCII char is correctly handled.
Bonus: use unittest.TestCase.assertIn(A, B) instead of "assert A in B".
2015-01-12 22:20:58 +01:00
Bruno Cauet
8418fb6083
Use a standard logger for the import log
...
The import log now relies on a standard logger, named 'beets.importer'
and configured upon initialization of the import session.
2015-01-12 21:47:44 +01:00
Bruno Cauet
b27c5304d1
Merge branch 'master' into logging
...
Conflicts:
beetsplug/fetchart.py
beetsplug/mpdstats.py
2015-01-09 15:15:27 +01:00
Adrian Sampson
1654fc82ce
Merge pull request #1211 from brunal/fetchart-check-isfile
...
Fetchart: check that the art found is a file
2015-01-08 13:40:21 -08:00
Frederik “Freso” S. Olesen
4b1f0cbf48
Happy 2015. ;)
...
See 7a410f636b
Command used:
git grep -l 'Copyright 201'|xargs sed -i -E 's/Copyright 201./Copyright 2015/'`
2015-01-08 21:37:09 +01:00
Bruno Cauet
2e1b0d589d
Fetchart: check that the art found is a file
...
Fixes issue #1177
2015-01-08 10:58:08 +01:00
Bruno Cauet
974155f2bc
Fix pep8 in test
2015-01-06 22:10:30 +01:00
Bruno Cauet
df82e113e5
Fix embedart tests
2015-01-06 21:42:34 +01:00
Bruno Cauet
30562024d2
Fix Lyrics plugin tests
2015-01-06 21:42:10 +01:00
Bruno Cauet
1f62711221
Fix FetchArt tests
2015-01-06 21:42:10 +01:00
Bruno Cauet
1f0932968e
Simple test fixes
...
importfeeds, lastgenre
2015-01-06 21:42:10 +01:00
Adrian Sampson
f6dc2cd81c
Merge pull request #1198 from brunal/logging
...
Lazy {}-style logging everywhere
2015-01-05 17:34:30 -08:00
Adrian Sampson
59f5fc7f7f
Remove nose dependency
2015-01-05 10:16:10 -08:00
Bruno Cauet
30f158a95e
Move "from beets import logging" statements
...
Move the import next to other beets-related imports
2015-01-05 10:05:21 +01:00
Bruno Cauet
06f0e1dee1
Port beets.logging to python 2.6
...
Multiple hacks :-)
2015-01-05 09:21:11 +01:00
Malte Ried
d71a8227e2
Added documentation and tests
2015-01-04 19:02:22 +01:00
Bruno Cauet
52243269fc
Make test/test_logging work on python 2.6
2015-01-04 17:14:34 +01:00
Bruno Cauet
408afa1b58
Add tests for beets.logging
2015-01-04 17:02:28 +01:00
Bruno Cauet
7df8bef8b7
Update logging imports: logging → beets.logging
2015-01-04 17:02:27 +01:00
Malte Ried
1c4dda4bd3
Merge branch 'master' into import-filefilter
2015-01-04 16:12:36 +01:00
Fabrice Laporte
80038e2a3f
test_bucket: update test_year_single_year
...
2015 was used as an example of date outside of [1970-current year] intervall which is not true anymore
2015-01-03 23:03:29 +01:00
Malte Ried
c560a3d042
Recent changes broke the flake8 rules...
2014-12-31 17:20:47 +01:00
Malte Ried
61a20b3163
Modified the tests to match the new --pretend output.
2014-12-31 17:15:52 +01:00
Malte Ried
ab996a0de0
Merge branch 'master' into import-filefilter
...
Conflicts:
test/test_importer.py
2014-12-31 17:04:16 +01:00
Malte Ried
7f4a06d12c
Instead of emitting the import_task_created event using a pipeline stage, it is fired every time an import task was created.
2014-12-31 16:57:09 +01:00
Adrian Sampson
405726ba13
Merge pull request #1189 from mried/import-pretend-verbose
...
A more detailed output of the `--pretend` option
2014-12-31 08:41:22 -04:00
Malte Ried
0e74c5dbaa
Rearranged regex config options to reduce hierarchies
2014-12-31 11:56:50 +01:00
Malte Ried
bee0a5b9fe
Album tracks are prepended by two spaces to indent them a bit.
2014-12-31 11:38:03 +01:00
Malte Ried
cc82e1cb43
Made the detailed output the default behaviour.
2014-12-31 11:30:46 +01:00
Fabrice Laporte
38b890cdd6
lyrics: add test checking scraping of mocked page
2014-12-31 06:16:06 +01:00
Fabrice Laporte
c34e718ab6
lyrics: introduce empty div in mocked lyrics page
2014-12-31 06:15:41 +01:00
Fabrice Laporte
d4d5c085fa
lyrics : remove empty divs before scraping
...
it may result in \n being inserted that we will strip in
_scrape_strip_cruft
2014-12-30 23:37:23 +01:00
Malte Ried
8addf3ef39
Simplified the configuration of the regular expressions for th ihate plugin
...
Added the docs
2014-12-30 14:11:45 +01:00
Malte Ried
11008494c3
Tests failed on windows
2014-12-30 12:45:29 +01:00
Malte Ried
023c13d292
Updated the test code to ignore the "Sending event" log messages.
2014-12-29 13:22:28 +01:00
Malte Ried
acec078fa3
The new event changed the log so an old import test failed...
2014-12-29 13:15:54 +01:00
Malte Ried
5123a41258
Added a flag --detailed to get a more detailed output of the --pretend option.
2014-12-29 12:54:16 +01:00
Thomas Scholtes
b33d5b577a
Catch exception when program check has non-zero return code
...
See #1175 .
2014-12-29 12:07:57 +01:00
Malte Ried
16abc858e3
Removed some testing code which was checked in accidentally
2014-12-29 12:03:52 +01:00
Malte Ried
7674399a45
Added the import_task_created event
...
Improved the IHatePlugin to filter files based on file names
2014-12-29 12:03:51 +01:00
Marc Addeo
8f41818434
Fix formatting to pass flake8 tests
2014-12-28 20:58:59 -05:00
Marc Addeo
a70820d8a1
Fix a bug in ftintitle with the order of album artist
...
There was a bug in the find_feat_part function that would cause it to
fail if the album artist was the second part of the featured string.
For example, if the Artist field was Alice & Bob, and the Album Artist
field was Bob it would return None due to the order.
This fixes that and adds test cases to ensure it doesn't return.
2014-12-28 20:23:17 -05:00
Marc Addeo
4d4113e3a4
Refactor ftintitle to extract the code to find the featured artist
...
This removes the code that extracts the featured artist from the
original artist field from the ft_in_title function and puts it into its
own.
It also adds a custom ArtistNotFoundException that find_feat_part will
throw if the album artist is not in the artist field.
This allows us to easily test the results of finding a featured artist
in the artist sting, and thus adds tests for the usual test cases that
the split_on_feat gets tested for.
2014-12-28 20:15:09 -05:00
Stig Inge Lea Bjørnsen
a2188d475b
ImportAdded support for in-place and link imports
...
Fix for the `ImportAdded` plugin crashing during in-place imports (#1107 ).
Add support for the new link imports introduced in Beets 1.3.9.
Note that link-imports that preserve file modification times will follow
the links and preserve the mtimes on the link targets. The mtimes on the
links aren't modified.
2014-12-25 21:39:28 +01:00
Adrian Sampson
74466fff89
Merge pull request #1162 from mried/import-pretend
...
Added option --pretend to only print the filenames
2014-12-23 09:08:09 -05:00
Malte Ried
5f67f3ae51
The last commit broke the tests. Repaired...
2014-12-21 21:52:09 +01:00
Malte Ried
440fe9a2ea
Reduced the count of accesses of the pretend config option. Now it's only one place where it is read.
...
Changed the output to use the log system rather than print_.
2014-12-21 21:37:44 +01:00
Malte Ried
2db346388a
Added option --pretend to only print the filenames of files to import without importing them
2014-12-21 15:56:56 +01:00
Adrian Sampson
b15102608c
Fix convert tests
...
Use some shell trickery to get the pipelined command to work.
2014-12-21 09:50:57 -05:00
Thomas Scholtes
ec65408c3e
Escape path queries for SQLite
...
Fixes #1146
2014-12-21 12:26:04 +01:00
Fabrice Laporte
e2506f3d03
change prints to ease sources copy/paste
2014-12-19 00:20:50 +01:00
Fabrice Laporte
c12dd5163d
add lyrics.com and lyrics.wikia.com to google srcs
2014-12-19 00:00:10 +01:00
Fabrice Laporte
01f484712e
change lyrics.com song
2014-12-18 23:59:37 +01:00
Fabrice Laporte
a41106652e
fix lyrics.net song url
2014-12-18 23:58:58 +01:00
Fabrice Laporte
69d3065e56
fix black magic woman lyrics keywords
...
“sticks” is last word of sentence so can be spelled “sticks.”, “magic”
is less ambiguous.
2014-12-18 23:57:46 +01:00
Fabrice Laporte
b89c8e78e3
remove test_util.py
2014-12-17 22:16:23 +01:00
Fabrice Laporte
7d0744d46b
lyrics: update unit tests
2014-12-17 22:04:54 +01:00
Fabrice Laporte
e7a4b92de5
lyrics: add 'sources' option
2014-12-17 00:42:11 +01:00
Fabrice Laporte
0f2f43ca9b
lyrics: add musixmatch source
2014-12-17 00:41:21 +01:00
Adrian Sampson
c2184be679
Merge branch '1060_ft_lang_support'
2014-12-16 11:53:59 +00:00
Adrian Sampson
c2c1e7236d
Simplify word boundaries ( #1060 )
...
Use lookahead/lookbehind matching to ensure there is whitespace around the
token. Replaces the use of \b, which doesn't work for "ft.", etc.
2014-12-16 11:49:54 +00:00
Fabrice Laporte
82de2a55bc
ftintitle unit tests
2014-12-13 23:35:59 +01:00
Fabrice Laporte
5434c028a4
lyrics: add sources to google CSE
2014-12-13 11:15:55 +01:00
Thomas Scholtes
20f809650c
zero: make tests more explicit
2014-12-02 18:07:19 +01:00
Thomas Scholtes
66b81ed081
echonest: test conversion failure
2014-12-02 11:54:36 +01:00
Thomas Scholtes
c248a71494
echonest: mock convert and truncate commands
2014-12-02 11:51:18 +01:00
geigerzaehler
d0e8be45a9
Merge pull request #1128 from geigerzaehler/edit-invalid-config
...
Allow invalid configuration files to be edited
2014-12-02 11:25:35 +01:00
Thomas Scholtes
575740f5a5
echonest: test different methods to fetch songs
2014-12-02 11:19:47 +01:00
Adrian Sampson
c41b8acf82
Merge pull request #1129 from geigerzaehler/zero-images
...
zero: Can delete embedded images
Conflicts:
docs/changelog.rst
2014-12-01 11:40:48 -08:00
Adrian Sampson
4670a8485f
Merge pull request #1127 from geigerzaehler/empty-dir-warning
...
Warn user when no files are imported from a directory
2014-12-01 11:30:26 -08:00
Thomas Scholtes
e2b2a505fc
zero: Can delete embedded images
...
Fixes #1100 .
2014-12-01 17:33:45 +01:00
Thomas Scholtes
9d3729dc5e
mediafile: Test deleting images and implement it for MP3s
2014-12-01 17:20:16 +01:00
Thomas Scholtes
eb8ccef8e6
Fix py26 string format
2014-12-01 13:05:29 +01:00
Thomas Scholtes
a5f097a883
Allow invalid configuration files to be edited
...
Fixes #1123 .
2014-12-01 13:02:21 +01:00
Thomas Scholtes
75c6af6329
Warn user when no files are imported from a directory
...
Fixes #1116 .
2014-12-01 12:31:49 +01:00
Marvin Steadfast
b25393151d
Added plexupdate plugin for refreshing plex music library after importing music.
2014-11-28 11:19:17 +01:00
Adrian Sampson
42228e6d82
Tests: fix unload_plugins
...
Don't mutate the base classes. This was causing plugins to break on the second
test that uses them, since after they were unloaded their class-level fields
were broken (since the modules are not re-loaded).
This makes it more clear than ever that we need to encapsulate plugin loading
state using some manner of PluginManager.
2014-11-24 10:58:32 -08:00
Marvin Steadfast
d3b76d83d2
Permissions plugins listens now for album_imported and item_imported
2014-11-24 18:41:50 +01:00
Adrian Sampson
daeab3d3a9
Add (skipped) tests for #359
2014-11-22 21:48:06 -08:00
Adrian Sampson
671d8d6aa7
Merge pull request #1098 from xsteadfastx/master
...
Added fix_permissions plugin
2014-11-20 07:38:21 -08:00
Marvin Steadfast
8784e8d8ca
plugin now listens for item_copied instead of after_write. now the test works
2014-11-20 11:40:02 +01:00
Fabrice Laporte
c69ad5d243
print google sources url
...
when releasing a beets version, run the script before running test_lyrics.py, and copy/paste the sources listed on stdout as a bulk add on Google CSE so beets engine is up-to-date.
2014-11-19 23:33:06 +01:00
Marvin Steadfast
a01e73d813
added not working test for debugging
2014-11-19 19:43:31 +01:00
David
5f1f6bbd04
Remove function from RmTempTest
2014-11-16 21:53:33 -05:00
David
e1ff258ce5
Move function to increase DRY
2014-11-16 21:39:58 -05:00
David
38f056a30c
Adding tests for #1067
2014-11-16 21:33:03 -05:00
David
b901071e2c
Implment -> Implement
2014-11-16 10:39:50 -05:00
Adrian Sampson
66d02bc289
Add link parameter to Item.move ( #710 )
2014-11-15 12:41:40 -08:00
Adrian Sampson
36d332ab6a
Fix #856 : album dirty tracking
2014-11-13 23:25:16 -08:00
Adrian Sampson
288fb0da4c
Merge pull request #1075 from Kraymer/1066-fetchart_sources
...
fetchart: add 'sources' option
2014-11-11 10:04:45 -08:00
Adrian Sampson
91ad0d9f58
Merge pull request #1069 from Kraymer/1035_no_copyright
...
Remove licensed lyrics from tests resources
2014-11-11 09:58:54 -08:00
Fabrice Laporte
a0579d66cf
lyrics: remove full texts from lyricstext.yaml
...
lyrics are considered valid if they contain a set of
selected keywords picked along the original full text.
2014-11-11 09:06:37 +01:00
Fabrice Laporte
1b0933daa9
fetchart: fix tests to handle generators
2014-11-10 22:37:19 +01:00
Fabrice Laporte
ef6d3efe6d
fetchart: cover engines yield their results
2014-11-10 22:17:34 +01:00
Adrian Sampson
68770f85e3
Update ALAC tests for Mutagen 1.26
...
The metadata extraction is now more accurate for ALACs, but we lost the
ability to distinguish them from AAC.
2014-11-10 10:06:21 -08:00
Fabrice Laporte
09bea52a41
fetchart: fix flake8
2014-11-09 20:55:53 +01:00
Fabrice Laporte
6170c3a179
fetchart: make test_art.py tests pass
2014-11-09 20:41:21 +01:00
Fabrice Laporte
1b694e569e
fetchart: add 'sources' option
...
Fasten cover search by enabling engines selection and prioritisation.
2014-11-08 23:20:44 +01:00
Fabrice Laporte
84c82cc44b
Move script to download pages out of tests_lyrics.py
...
By default (as runned by CI tools), only *fake* example.com page is present in
rsr/lyrics and tests that check content of pages coming from *real* sources are
thus skipped.
Execute lyrics_download_samples.py to download pages from *real* sources. When
done and *real* pages are present on disk, no tests are skipped.
2014-11-08 10:55:48 +01:00
Fabrice Laporte
f5e7bd5d05
Move script to download pages out of tests_lyrics.py
...
By default (as runned by CI tools), only *fake* example.com page is present in
rsr/lyrics and tests that check content of pages coming from *real* sources are
thus skipped.
Execute lyrics_download_samples.py to download pages from *real* sources. When
done and *real* pages are present on disk, no tests are skipped.
2014-11-08 10:48:28 +01:00
Fabrice Laporte
356c1f44b5
nosetests: don't run slow tests by default
2014-11-06 22:46:42 +01:00
Fabrice Laporte
b143ad7e3e
fix #1035 do scraping tests on mock data
...
don’t store scraped pages with licensed lyrics in repo
2014-11-06 22:10:15 +01:00
Adrian Sampson
ddf5511624
Use unittest.SkipTest instead of nose's version
...
I don't *think* this should actually do anything, but it does remove a
dependence on nose.
2014-11-05 10:49:45 -08:00
pscn
291675330d
Allow plugins to define the same flexible fields if they are of the same
...
type #1059
2014-11-04 21:20:35 +01:00
Adrian Sampson
832d658571
Use assertAlmostEqual ( #1054 )
...
Rounding and then comparing could lead to some surprising sensitivity. This
uses a known-good approximate comparison.
2014-11-01 13:08:07 -07:00
Adrian Sampson
256a3b4055
Tiny formatting tweaks ( #1054 )
2014-11-01 12:49:44 -07:00
Stig Inge Lea Bjørnsen
afee48379d
Add tests for the importadded plugin
...
The tests verifies that the `importadded` plugin updates added dates and
mtimes when importing:
* an album
* an album with file mtime preservation on
* singletons
* singletons with file mtime preservation on
It also verifies the the plugin doesn't update added dates when
re-importing:
* an album
* singletons
2014-11-01 15:32:27 +01:00
Adrian Sampson
8ed76298e3
Merge pull request #1043 from kiefermat/mediafile_comments_and_year
...
Added slash separator to DateField and more comments styles to MediaFile
2014-10-28 11:30:07 -07:00
Adrian Sampson
3c748b6cc8
Merge pull request #1042 from kiefermat/apev2_cover_support
...
Support for APEv2 cover tags
2014-10-28 11:03:00 -07:00
Matthias Kiefer
610942b1a5
Fixed getting description for wma file with standard WMA attributes
2014-10-28 10:28:12 +01:00
Matthias Kiefer
b02da5e150
Added test for date with slashed and fixed date regex
2014-10-28 08:52:03 +01:00
Matthias Kiefer
f8abb03b40
Added support for APEv2 cover tags
2014-10-27 16:10:17 +01:00
Thomas Scholtes
464f8cdc04
Types plugin: Field types for albums and documentation example
2014-10-27 10:54:21 +01:00
Adrian Sampson
9137b5c2f3
Fix another lyrics scraper regression ( #1034 )
...
Along with a test.
2014-10-24 20:08:32 -07:00
Adrian Sampson
0325fe2225
lyrics: Remove script tags ( fix #1034 )
2014-10-24 17:33:11 -07:00
Adrian Sampson
c158bb630c
Fix mock function restoration in test :(
...
An argument for using decorators, context managers and stuff so this is
impossible to mess up.
2014-10-24 17:15:09 -07:00
Adrian Sampson
6aa9e60756
Add tests for #1029
...
The mbngs library does not like to be called with whitespace-only criteria.
2014-10-24 16:30:14 -07:00
Adrian Sampson
434280f248
A couple of coverage tweaks
2014-10-11 22:05:22 -07:00