Commit Graph

1752 Commits

Author SHA1 Message Date
Thomas Adamcik
dcaa0f6732 local: Move musicbrainz cover art helper to translator 2014-12-18 23:28:14 +01:00
Thomas Adamcik
90fdd46109 local: Cleanup translator tests 2014-12-14 23:14:11 +01:00
Thomas Adamcik
671ee5ee6a audio: Switch to using converted taglists instead of raw data. 2014-12-14 22:25:52 +01:00
Thomas Adamcik
2c3217685b utils: Switch to exceptions.FindError for errors. 2014-12-14 14:08:45 +01:00
Stein Magnus Jodal
4e508cd017 mpd: Enable browsing of empty dirs
This was disabled together with a bunch of other changes without any
explanation in commit f24ca36e5a. I'm
guessing that this wasn't intentional, and no test covered the case.
2014-12-13 01:27:14 +01:00
Stein Magnus Jodal
4f428b8601 py3: Move compat module out of utils 2014-12-07 21:36:15 +01:00
Stein Magnus Jodal
7a1bb224f7 py3: Avoid indexing exception objects
It doesn't work on Python 3.
2014-12-07 20:26:09 +01:00
Stein Magnus Jodal
58527406c1 py3: Use compat.text_type instead of unicode 2014-12-07 20:17:10 +01:00
Stein Magnus Jodal
496142c201 py3: Use absolute imports by default 2014-12-07 20:17:10 +01:00
Thomas Kemmer
63277c4db3 Add unit tests for artist browsing 2014-11-04 19:22:45 +01:00
Thomas Adamcik
063c757570 utils/path: Add support for handling sym/hardlink loops 2014-10-15 23:46:08 +02:00
Thomas Adamcik
54a89038d3 utils/path: Don't skip hidden files and folders in generic find code
Updates the local scan code to do this instead.
2014-10-15 23:45:49 +02:00
Thomas Adamcik
9b1d20677d tests: Cleanup find tests to use tempfile all over.
This should make it more clear what structure we expect.
2014-10-15 23:45:27 +02:00
Thomas Adamcik
69fa6f4674 tests: Test symlink that points to it's own parent. 2014-10-15 23:45:22 +02:00
Thomas Adamcik
93c0d6cc44 tests: Update no permission test to use tempfile. 2014-10-15 23:45:12 +02:00
Thomas Adamcik
b2419f9814 tests: Add test case for a symlink pointing at itself 2014-10-15 23:45:03 +02:00
Thomas Adamcik
ebb62885cd util/path: Add basic support for following symlinks 2014-10-15 23:44:48 +02:00
Thomas Adamcik
682af27348 tests: Add test case for file without permissions. 2014-10-15 23:44:41 +02:00
Thomas Adamcik
d219bab0b2 tests: Add test for directory without permission behaviour 2014-10-15 23:44:01 +02:00
Thomas Adamcik
de5fe5ebab tests: Add test for current find symlink handling 2014-10-15 23:43:13 +02:00
Thomas Adamcik
a8017dfef1 tests: Start adding checks for find errors 2014-10-15 23:42:36 +02:00
Thomas Adamcik
de4bdbec03 tests: Minor cleanup of the existing find tests 2014-10-15 23:42:15 +02:00
Thomas Adamcik
2447e2fa40 util/path: Expose errors to callers of find helper 2014-10-15 23:42:12 +02:00
Stein Magnus Jodal
7856c14b26 tests: Use with stmt for assertRaises 2014-09-25 23:03:35 +02:00
Stein Magnus Jodal
07d088fc18 models: Use with stmts in exception tests 2014-09-24 18:26:25 +02:00
Stein Magnus Jodal
5317834baf history: Change size property to get_length() method
For consistency with tracklist.get_length() and our goal of aligning Python
and JS APIs by using less properties in the core API.
2014-09-23 18:47:54 +02:00
Stein Magnus Jodal
5a67339855 history: Cleanup history entry test 2014-09-23 18:47:39 +02:00
Stein Magnus Jodal
d30cf68efd history: Raise TypeError if non-Tracks are added 2014-09-23 18:42:41 +02:00
Stein Magnus Jodal
718405421d history: Rename class to HistoryController
For consistency with other core controllers.
2014-09-23 18:32:37 +02:00
Arjun Naik
c38b9f378f Use assertIn instead of assertTrue to test membership. 2014-09-23 18:09:12 +02:00
Arjun Naik
9006968f75 TrackHistory stores Ref instances. Timestamp as epoch in milliseconds also stored. 2014-09-23 18:09:12 +02:00
Arjun Naik
ed87ab8dd1 Added a playback history object to the core. 2014-09-23 18:09:11 +02:00
Stein Magnus Jodal
1fcc75ba1e Merge pull request #840 from tkem/feature/local-library-lookup-multiple
local: Return multiple tracks from lookup()
2014-09-23 14:14:22 +02:00
Stein Magnus Jodal
abed15b9e4 models: Make all fields default to None or empty collection 2014-09-22 22:25:42 +02:00
Stein Magnus Jodal
bdd1fb983b models: Fix equality for fields set to the default
Fixes #837
2014-09-22 22:01:50 +02:00
Stein Magnus Jodal
305a76486d models: Hide empty lists from repr() 2014-09-22 21:42:57 +02:00
Stein Magnus Jodal
f58fe9a192 py3: Replace xrange() with range() 2014-09-17 20:28:07 +02:00
Thomas Adamcik
d049b07fa9 Merge branch 'develop' into feature/audio-message-handler 2014-09-07 21:38:19 +02:00
Thomas Kemmer
806174916d Change JsonLibrary.lookup to return a list 2014-09-05 05:35:18 +02:00
Stein Magnus Jodal
d41deb1844 Merge branch 'release/v0.19.x' into develop
Conflicts:
	docs/changelog.rst
2014-09-01 23:17:00 +02:00
Stein Magnus Jodal
e1ab70e1e9 Bump version to 0.19.4 2014-09-01 23:08:59 +02:00
Thomas Kemmer
f90671fe96 Fixed flake8: I201 Missing newline between sections or imports 2014-08-30 14:10:39 +02:00
Thomas Kemmer
380223bb96 local: Return multiple tracks from lookup() 2014-08-30 14:02:43 +02:00
Stein Magnus Jodal
c50641230d Merge branch 'release/v0.19.x' into develop 2014-08-29 14:03:11 +02:00
Stein Magnus Jodal
a244761abc mpd: Replace / with | instead of whitespace in playlist names 2014-08-17 23:25:09 +02:00
Trygve Aaberge
15597b3c60 tests: Test call order in test_recv_callback_gets_no_data 2014-08-14 12:43:42 +02:00
Trygve Aaberge
265951bf00 network: disable_recv before telling actor to close connection
As of d62ad96, when the connection can't receive more data from the
client, it tells the actor to stop the connection and calls
disable_recv(). The actor operates in it's own thread and when it stops
the connection, disable_recv is being called again from a different
thread. Since the actor is told to stop the connection before
disable_recv is called, the two calls to disable_recv may happen
simultaneously.

This causes a race condition issue where both threads can reach past the
check that recv_id is not None before either of them set it to None. If
one of them set it to None before the other one tries to use it, an
error is raised.

This commit calls disable_recv before telling the actor to stop the
connection. Since disable_recv is a blocking call, this ensures that
recv_id is being set to None before the actor thread begins to stop the
connection.

Fixes #781
2014-08-14 01:58:48 +02:00
Stein Magnus Jodal
ae3a932ed3 Merge branch 'release/v0.19.x' into develop
Conflicts:
	mopidy/config/__init__.py
2014-08-12 23:54:14 +02:00
Thomas Adamcik
ac5bf9af17 audio: Move most of event handling out of audio.
Some of the signal handling still needs to be moved.
2014-08-11 22:33:49 +02:00
Thomas Adamcik
101b2a9817 audio: Make stream-changed correctly handle tee setup
For the purposes of this event we consider the outputs sink the final element.
If we don't do this we would get one event per branch, and we don't want to
track when each of them actually switches any way. So just tracking when the
tee/outputs bin gets the event is good enough for us.

As part of this I've also added 'testoutput' as a special cased output value.
This is now needed as outputs are always synced to the clock, making testing
a lot less practical.
2014-08-11 22:33:49 +02:00