Adrian Sampson
7af40db050
Merge branch 'master' into formatted-modify
2022-08-20 16:37:52 -07:00
Jan Holthuis
3e37d0163e
test(import): Add test for _paths_from_logfile method
2022-06-28 00:17:34 +02:00
mousecloak
0132067a29
Fix @unittest.skipIf annotations to ignore only win32
2022-01-07 21:29:44 -08:00
Duncan Overbruck
0456c8f790
test multiple items in test_modify_formatted
2021-12-15 14:32:11 +01:00
Duncan Overbruck
636e36ef7a
allow templates/formatting when setting fields with modify
2021-10-27 00:10:25 +02:00
Andrew Rogl
f04059bfee
Commit #4038
2021-09-26 15:54:13 +10:00
Andrew Rogl
1ec87a3bdd
pyupgrade beetsplug and tests
...
All tests working
More tidy up to be done
2021-08-26 19:12:51 +10:00
Adrian Sampson
af1eaf5062
Merge remote-tracking branch 'origin/windows-ci' into drop-py2
2021-08-19 16:48:46 -04:00
Adrian Sampson
75c41c0546
Remove most six.PY2 checks
2021-08-19 16:45:11 -04:00
wisp3rwind
1978484504
don't assume items are queried in any specific order in interactive delete test
...
The previous test worked (on my machine, and on Github CI and AppVeyor),
but it is not obvious whether the order is really guaranteed (given that
the full beets database stack and sqlite are involved). Thus, to prevent
this from exploding at some point, only verify the number of deletions
for now.
2020-09-13 15:55:09 +02:00
wisp3rwind
822bc1ce88
add possibility to select individual items to the remove CLI command
2020-09-13 14:26:00 +02:00
Jacob Pavlock
96b9e7caa5
skip broken windows tests
2020-08-03 13:42:59 -07:00
soergeld
7c71bb87a2
cleaning up, renaming dup_XXInfo() to copy()
2020-05-08 16:32:12 +02:00
soergeld
2bc0027adf
remove some prints, unused libraries, __setitem__ method
2020-04-27 16:08:47 +02:00
soergeld
048b5c2151
remove need for deepcopy, simplify __init__
2020-04-27 15:55:12 +02:00
soergeld
f507f04639
reintroduce default arguments, adapt all occurences of TrackInfo and AlbumInfo to the absence of positional arguments
2020-04-27 11:21:13 +02:00
Adrian Sampson
5a3157d85d
Try to make a test more reliable
...
As @arcresu pointed out on Gitter, this openSUSE patch adds a safeguard
to this test, which was apparently failing for them:
https://build.opensuse.org/package/view_file/openSUSE:Factory/beets/fix_test_command_line_option_relative_to_working_dir.diff?expand=1
Reading the configuration once here to make sure that we're in a clean
state seems harmless enough. The culprit is likely that a previous test
was modifying the configuration and not properly cleaning up. This
change defends against that kind of mistake.
2019-06-02 20:16:51 -04:00
Carl Suster
d2f13bf65c
confit: replace with confuse in tests
2019-06-01 10:13:13 +10:00
Carl Suster
546bf3af7e
mediafile: import from standalone module
2019-05-29 09:35:14 +10:00
Carl Suster
bed89df69a
Fix test_ui:test_version under pytest
...
The test `CommonOptionsParserCliTest.test_version` was passing with nose
but failing with pytest (see output below). The reason for the failure
seemed to be that the `test` plugin was loaded when it wasn't expected
to be loaded, changing the output of the `version` command. I'm not sur
exactly why that was happening, but since that test already inherited
from `TestHelper`, just invoking the plugin load/unload helper was
enough to fix it. I also removed the line setting the `self.lib`
variable since that's already done in the helper.
---
self = <test.test_ui.CommonOptionsParserCliTest testMethod=test_version>
def test_version(self):
l = self.run_with_output(u'version')
self.assertIn(u'Python version', l)
> self.assertIn(u'no plugins loaded', l)
E AssertionError: 'no plugins loaded' not found in 'beets version 1.4.8\nPython version 3.7.3rc1\nplugins: test\n'
test/test_ui.py:1292: AssertionError
2019-03-31 20:22:44 +11:00
jroitgrund@gmail.com
ea307f62d1
Don't move album art twice
2019-03-27 01:41:42 +00:00
Adrian Sampson
dc45119a8d
Avoid comparing patterns in a test
...
As pointed out here:
https://github.com/beetbox/beets/pull/3028#issuecomment-420257867
2018-09-16 20:52:31 -04:00
zigarrre
b376139663
Refactored move functions for clarity according to #2682
...
The move functions in library.py and manipule_files in importer.py where
changed to use a single parameter for the file operation instead of
multiple boolean flags.
A typo in the documentation of the Album.move and Item.move functions
confusing True and False when describing the store parameter was fixed
as well.
2017-09-11 17:03:44 +02:00
Adrian Sampson
ca4f96e33c
Consolidate export tests into MoveTest
...
Just one new flag.
2017-06-10 20:26:41 -04:00
Adrian Sampson
730c84e5e5
Correct tests for export mode
...
The old tests were wrong but the incorrectness was hidden by the incorrect
parameter passing fixed in the previous commit. Now we actually test that the
item's path did not change.
2017-06-10 20:25:48 -04:00
Adrian Sampson
714560aace
Fix parameter order and binding
...
The calls didn't match up with the parameter order.
2017-06-10 20:19:27 -04:00
Adrian Sampson
b25eb87f60
Remove unnecessary output capture
2017-06-10 20:05:17 -04:00
Adrian Sampson
29d6c27d02
Fix some spurious whitespace changes
2017-06-10 20:03:01 -04:00
SpirosChadoulos
8f62e8bc68
Requested changes done
2017-05-12 14:49:03 +03:00
SpirosChadoulos
c4ef23d9f7
Minor Flake fixes
2017-05-11 12:45:03 +03:00
SpirosChadoulos
51835e762f
Minor fixes to move tests
2017-05-11 12:30:21 +03:00
SpirosChadoulos
0dc948d9d3
Made sure that the destination directory will exist
2017-05-11 12:11:21 +03:00
SpirosChadoulos
f5b23fffd4
Replaced all AssertNotExists with AssertExists
2017-05-06 15:03:42 +03:00
SpirosChadoulos
a88192240e
ExportTest correction
2017-04-30 15:14:17 +03:00
SpirosChadoulos
bab99f546f
Added a test for the new export feature
2017-04-30 15:02:50 +03:00
Adrian Sampson
7c6eafa285
Refactor manual search options to use Proposal
...
This is the first step to making them behave like plugin actions.
2016-12-28 13:50:53 -05:00
Adrian Sampson
ae5e55cad6
Always use syspath to construct MediaFile
...
Related to #1966 . Previously, we used a `syspath` call inside MediaFile, which
probably wasn't right: the constructor should behave like `open` in that we
need to use pass an OS path.
2016-12-04 21:00:56 -05:00
Adrian Sampson
a88682e7bb
Undo from _common import unittest indirection
...
This was a vestige from when we used to need the unittest2 library for pre-2.7
compatibility. Now that we require Python 2.7, we aren't using that library
and this indirection wasn't doing any good.
2016-11-26 18:46:44 -05:00
Adrian Sampson
d54ef99ea5
Fix a forgotten test
2016-11-25 21:33:44 -05:00
Dang Mai
04560bd88e
Stop passing in fields to be stored for Item.move and Album.move
2016-10-23 15:52:27 -04:00
Dang Mai
f42f558db2
Fix long line for flake8
2016-10-20 21:21:50 -04:00
Dang Mai
406f3ce843
Add tests and make sure they pass
2016-10-20 21:07:12 -04:00
Dang Mai
679918f191
Fix some test failures
2016-10-20 00:28:28 -04:00
Johnny Robeson
49fc2ac5e9
Use run_with_command in write_cmd in test_ui.py
2016-09-18 03:31:00 -04:00
Johnny Robeson
da0e15b71e
fold capture_stdout into _run_list() in test_ui
2016-09-09 18:55:47 -04:00
Johnny Robeson
7a2bdf502f
s/utf8/utf-8/ in all encoding/decoding contexts
...
This matches up with the python documentation.
2016-09-06 23:10:24 -04:00
Johnny Robeson
304df82361
rename/move ui._arg_encoding to util.arg_encoding
...
We use this for more than ui concerns, so it should be in util.
It is also no longer marked as a "private" method.
2016-08-04 17:16:11 -04:00
Johnny Robeson
15a8409535
add python version to beet --version
2016-07-31 02:48:07 -04:00
Adrian Sampson
6772b4d1fd
Leave captured stdout as Unicode on Python 3
2016-07-25 13:24:51 -04:00
Adrian Sampson
0e2b8a5b60
Use native strings for IO in a test
2016-07-25 13:22:57 -04:00
Adrian Sampson
b73bbf0b3e
In completion tests, don't load system scripts
...
On my machine, the "leak" of other bash_completion scripts here recently
started doing a *lot* of work for other packages. Most damningly, it started
compiling a bunch of stuff with rustc! Now we only load beets' own completion
stuff.
2016-07-25 12:57:44 -04:00
Adrian Sampson
e65e7a6716
Fix minor style in completion test
2016-07-25 12:45:32 -04:00
Johnny Robeson
ba26b7d26f
replace calls to _raw_main in test_ui with run_command
2016-07-25 01:04:06 -04:00
Johnny Robeson
20321feda7
read and write pipes as bytes in completion tests
...
The stdin/stdout for subprocess are bytes, so treat them that way
2016-07-23 04:34:07 -04:00
Johnny Robeson
0377a4e26b
open completion files in test_ui in binary mode
2016-07-23 04:24:15 -04:00
Jesse Weinstein
8474ae3f66
Fix patcher to always be correctly cleaned up
2016-07-21 23:55:07 -07:00
Johnny Robeson
bb15829b17
add missing b' to config.yaml files in ui tests
...
I'd not gotten around to doing this because of other py3 test
issues, but here we go now!
2016-07-07 03:44:19 -04:00
Johnny Robeson
35d0e81949
add missing bytestring_paths for python -bb
2016-07-03 22:25:47 -04:00
Johnny Robeson
9020dc1f45
use text_string() in a few places for io output
2016-07-02 00:03:46 -04:00
Johnny Robeson
aa0a0a0f22
use util.py3_path for confit and env paths in tests
2016-06-30 22:24:17 -04:00
Johnny Robeson
dd729f0ce8
mark more paths as bytestrings in tests
2016-06-30 22:21:56 -04:00
Adrian Sampson
c532860613
Apply simple type consistency changes from #2096
...
These are the changes from that PR that just enforce the path type invariants
we already want---they're a good idea regardless of Python 3.
2016-06-30 14:22:16 -07:00
Adrian Sampson
d5205915cc
Avoid dangerous string conversions ( #2094 )
...
This rolls back the places in #2094 where `six.text_type(s)` was used where
`s` might be a bytestring. We almost never want that conversion, because it
uses the default encoding (almost always ASCII). The need for it indicates a
problem somewhere else, where bytes were produced when we were expecting
unicode strings.
2016-06-29 10:30:26 -07:00
Adrian Sampson
5efd5b21c5
Use new as_str method
...
Instead of `get(six.text_type)`, which was a surprisingly large portion of our
uses of six.
2016-06-25 19:16:14 -07:00
Johnny Robeson
e8afcbe7ec
replace unicode with six.text_type
2016-06-24 05:53:49 -04:00
Adrian Sampson
133c82b1ab
Fix #2063 : properly decode format CLI argument
2016-06-21 15:15:24 -07:00
Adrian Sampson
351b6f8c9d
Remove raw Unicode literals ( fix #2069 )
...
PEP 414 didn't add `ur"..."` literals to Python 3. So for hybrid 2/3
compatibility, these had to be replaced with ordinary Unicode string literals.
This was only painful for one string; the others were only raw strings by
convention. (All were regexes.)
2016-06-21 14:29:14 -07:00
Johnny Robeson
ffa46a185c
bytestring normalization
...
Make sure many/most strings that touch the filesystem are
converted explicitly to bytestrings rather than implictly.
2016-06-13 05:39:09 -04:00
Johnny Robeson
f8bdf7498f
use _common.PLUGINPATH in one more place
...
Not sure how I missed it, but I did
2016-06-11 03:33:50 -04:00
Johnny Robeson
e97d93b8f5
introduce a PLUGINPATH attr to _common test
...
I consider this a test global option. It should help split up the
ui tests a bit
2016-06-11 03:00:43 -04:00
Jack Wilsdon
26a17a3703
Remove trailing whitespace added in a45dcdc
2016-06-09 19:23:54 +01:00
Adrian Sampson
a45dcdc674
Fix Windows env vars for config test
2016-06-09 09:58:10 -07:00
Jack Wilsdon
3f8a85c825
Add tests for force deletion (without input)
2016-06-08 19:26:42 +01:00
Jack Wilsdon
34b3cf36b7
Add --force option to beet remove
2016-06-08 19:22:24 +01:00
Adrian Sampson
93e614c739
Tests for _{in,out}_encoding ( #2041 )
2016-06-08 09:47:45 -07:00
Adrian Sampson
a5b7489dd1
Use new assertion in config tests
2016-06-06 11:40:04 -07:00
Adrian Sampson
71b9fd785c
Revert "Do __name__ comparison with bytes and not unicode"
...
This reverts commit 9c41c39913 .
That commit used byte strings for the `if __name__ == '__main__'` pattern,
which was necessary when we were doing unicode_literals. But it is wrong on
Python 3, and now that we're liberated from unicode_literals, we need to go
back to native strings for this comparison.
2016-05-29 19:19:59 -07:00
Jack Wilsdon
b1c58e99ec
Update code to match pep8 naming standards
2016-04-27 20:15:10 +01:00
Adrian Sampson
e54c7eec3d
Standardize __future__ imports without parentheses
...
Since the list is short enough now, we don't need parentheses for the line
wrap. This is a little less ugly.
2016-02-28 15:03:51 -08:00
Adrian Sampson
c16201a795
Keep raw literals for regular expressions
2016-02-28 14:10:11 -08:00
Markus Unterwaditzer
a07b98ad24
Fix leftover literals
2016-02-28 19:21:59 +01:00
Peter Kessen
b6e0696041
Removed unicode_literals from test_ui
...
* nosetests ´test.test_ui´ fails for two tests
2016-02-28 13:47:22 +01:00
Peter Kessen
c28eaee7d0
implemented interactive selection in modify
2016-01-28 21:50:37 +01:00
Peter Kessen
7b2de49274
added test for abort of modify action
2016-01-28 19:03:33 +01:00
Peter Kessen
a707715b81
added testcase with no write and no move
...
improves coverage
2016-01-28 18:59:46 +01:00
Peter Kessen
e0ffae3be0
added test case for Modify without any change
2016-01-28 18:59:34 +01:00
Peter Kessen
8954f1a494
split of modify function in modify_test
2016-01-28 18:59:11 +01:00
Peter Kessen
c7fff52324
Fixed bug when running subset of testcases
...
Happens when invoking `tox -e py27 test.test_ui` directly.
`os.environ.get('HOME')` seems to return None and raises an Exception
in tearDown of class
2016-01-27 19:12:49 +01:00
Adrian Sampson
a07cb837aa
Fix #1826 : include test_completion.sh in sdist
2016-01-22 15:25:43 -08:00
Adrian Sampson
a18d0e4b3b
Make bash-completion test more robust
...
I found some infelicities while investigating #1826 . This test was hard-coding
a specific path for bash-completion, which was the wrong one for my system, so
it was being skipped every time. This searches the list of paths used by the
actual command.
2016-01-22 15:22:48 -08:00
Jesse Weinstein
72ce9ea3eb
use underscore in name for pep-8s sake
2016-01-12 22:14:12 -08:00
Jesse Weinstein
d93f723263
Convert SKIP_SLOW_TESTS to its own decorator
2016-01-12 21:53:52 -08:00
Jesse Weinstein
760298b8e4
Mark slow tests to be skipped if SKIP_SLOW_TESTS env var is defined
...
Saves over 100 seconds.
2016-01-10 23:18:47 -08:00
Jesse Weinstein
1111ab9fdf
Add tests for stats and version
2016-01-06 01:02:07 -08:00
Jesse Weinstein
28257db654
Add test for help command
2016-01-05 00:03:34 -08:00
Jack Wilsdon
12cd5306b7
Update copyright dates to 2016
2015-12-30 15:42:06 +00:00
Peter Kessen
3eb8008b11
added encoding as comment in files
...
added line like
# -*- coding: utf-8 -*-
to all files with correct license in header
2015-11-19 18:41:01 +01:00
Peter Kessen
b980c60941
corrected another testcase for previous commit
2015-09-29 17:40:57 +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
Bruno Cauet
8e25a70e40
summarize_items(): sort format by decr. freq
...
Make the summary deterministic.
2015-03-16 14:41:43 +01:00