Commit Graph

100 Commits

Author SHA1 Message Date
Lasse Bigum
cb19b2c48c Allow 'none' as audio.mixer value
To disable mixing altogether, you can now set the configuration value
 audio/mixer to 'none'.
2015-03-10 00:26:22 +01:00
Lasse Bigum
cf0b666a0a Add tests for PlaybackController get_current_(tl_)track
Add some more test cases for PlaybackController
2015-03-08 04:10:02 +01:00
Lasse Bigum
fbd534efbf Don't change to playing state when seeking in paused state
Do not switch state from paused to playing when seeking
2015-03-01 15:50:17 +01:00
Stein Magnus Jodal
df95a988b7 backend: Move DummyBackend into tests package 2015-02-13 01:37:07 +01:00
Stein Magnus Jodal
886c2b92d8 core: Use a mixer mock in tests 2015-02-13 01:15:25 +01:00
Stein Magnus Jodal
638740541b Merge pull request #981 from adamcik/feature/core-get-images
Add library.get_images()
2015-02-13 00:33:29 +01:00
Thomas Adamcik
ddd872cdea core: Always return an answer for all URIs in get_images
Also make sure that results are tuples instead of lists so we don't
accidentally give out mutable state.
2015-02-13 00:10:14 +01:00
Thomas Adamcik
533948f8f8 core: Make sure we return list of images in get_images tests 2015-02-12 23:10:20 +01:00
Thomas Adamcik
c0b0e3657a core: Add core.library.get_images 2015-02-12 22:38:42 +01:00
Stein Magnus Jodal
42115c56f7 core: Add mixer controller (fixes: #962)
Deprecate volume and mute methods on playback controller.
2015-02-12 10:31:16 +01:00
Thomas Adamcik
fa8547c397 tests: Add noqa markers for setUp/tearDown 2014-12-30 00:23:01 +01:00
Stein Magnus Jodal
dbbb86e6c0 Merge branch 'release/v0.19.x' into develop
Conflicts:
	mopidy/core/playback.py
2014-12-24 00:24:19 +01:00
Stein Magnus Jodal
c6ff9eee86 playback: Remove skipped track on next in consume mode
Also adds core level tests of consume behavior on next/prev/eot.

Fixes #902
2014-12-24 00:04:41 +01:00
Stein Magnus Jodal
496142c201 py3: Use absolute imports by default 2014-12-07 20:17:10 +01:00
Stein Magnus Jodal
7856c14b26 tests: Use with stmt for assertRaises 2014-09-25 23:03:35 +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
d15d66f070 Use 'mute' instead of 'muted', to avoid changing old APIs 2014-07-12 03:14:19 +02:00
Stein Magnus Jodal
a3dc763b29 core: Forward {volume,mute}_changed events, don't trigger them ourselves 2014-07-10 01:15:44 +02:00
Stein Magnus Jodal
6d6bc4b808 core: Use new mixer API 2014-07-08 01:11:25 +02:00
dz0ny
d871ca9128 Remove duplicates from library root.
Closes #708
2014-06-26 16:27:22 +02:00
Stein Magnus Jodal
b754885064 Fix all import order warnings 2014-05-07 20:08:43 +02:00
Stein Magnus Jodal
1ea0978af5 dummy: Move dummy backend back into the mopidy package 2014-01-18 01:38:10 +01:00
Thomas Adamcik
999f478010 core: Update browse to use uri isntead of path 2014-01-17 17:16:24 +01:00
Thomas Adamcik
826419d829 backend/core: Switch to root_directory instead of name 2014-01-16 22:53:18 +01:00
Stein Magnus Jodal
c781f77ef3 Rename test files to pattern expected by test runners 2014-01-15 00:01:50 +01:00
Stein Magnus Jodal
1d108752f6 core: Make events emitted on playback consistent (fixes #629)
This commit does not try to make the events correct/perfect with regard to
GStreamer states, end-of-stream signalling, etc. It only tries to make the
events work consistently across all the methods on the playback controller.

* play(track) while already playing has changed from:

  - playback_state_changed(old_state='playing', new_state='playing')
  - track_playback_started(track=...)

  to:

  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='stopped', new_state='playing')
  - track_playback_started(track=...)

* next() has changed from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=0)
  - playback_state_changed(old_state='stopped', new_state='playing')
  - track_playback_started(track=...)

  to same as play() above.

* previous() has changed in the same way as next().

* on_end_of_track() has changed from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='playing')
  - track_playback_started(track=...)

  to same as play() above.

* stop() has reordered its events from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='stopped')

  to:

  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=...)
2014-01-14 01:18:39 +01:00
Stein Magnus Jodal
05632c3b8b backend: Update backend API imports 2014-01-11 18:20:45 +01:00
Stein Magnus Jodal
d724001f5b tests: Move mopidy.backends.dummy to tests.dummy_backend 2014-01-11 15:49:22 +01:00
Stein Magnus Jodal
fe28311324 models: Use new Ref constructors 2014-01-09 08:54:33 +01:00
Stein Magnus Jodal
1fd1a38013 Merge branch 'develop' into feature/library-browse
Conflicts:
	mopidy/backends/local/json/library.py
	mopidy/core/actor.py
	tests/backends/local/library_test.py
2014-01-09 08:39:38 +01:00
Stein Magnus Jodal
252f4792a0 core: Check if library is browsable at startup 2014-01-03 23:12:03 +01:00
Stein Magnus Jodal
69836d2e16 backend: Rename library.name to library.root_directory_name 2014-01-03 23:10:02 +01:00
Stein Magnus Jodal
af3b0e40fd models: Add Ref.type constants 2014-01-03 22:19:54 +01:00
Stein Magnus Jodal
048c3bb544 core: Use library name instead of URI scheme in browse() 2014-01-02 23:10:15 +01:00
Stein Magnus Jodal
6027ed1fac core: Add library.browse() 2014-01-02 22:06:33 +01:00
Thomas Adamcik
e82ce6256d core: Re-add one uri scheme per backend constraint. 2013-12-31 14:45:57 +01:00
Stein Magnus Jodal
3859448e06 core: Test version property, fix typo in changelog 2013-12-15 22:49:33 +01:00
Thomas Adamcik
3bbcb4d121 local: Review comment fixes 2013-11-28 23:20:03 +01:00
Thomas Adamcik
04044d035f core: Refactor core Backends helper
Replaces the jungle of extra dicts/lists with an OrderedDict per backend
feature type. Also makes sure that each type/scheme is unique instead of
the scheme alone.
2013-11-27 00:04:51 +01:00
Stein Magnus Jodal
04788abaac core: Change tracklist.{filter,remove} usage
The criterias are now a mapping between field names and one or more values.
This aligns tracklist.{filter,remove} with the API of
library.{find_exact,search}, and allows for e.g. batch removals.

An exception is raised immediately if the API is used in the old way to ease
migration and debugging.
2013-11-12 00:00:22 +01:00
Stein Magnus Jodal
863f7e0430 mpd: Trigger 'output' idle event on mute_changed()
This is required for e.g. ncmpcpp to detect that an enableoutput/disableoutput
command worked, making it possible to toggle the output back without restarting
ncmpcpp.
2013-10-09 23:52:59 +02:00
Stein Magnus Jodal
447864774e core: Add volume arg to volume_changed() event
It was already called with the argument, and both the MPD and HTTP frontends
handled it/expected it. It was just the default implementation in CoreListener
that lacked the argument.
2013-10-09 23:51:01 +02:00
Stein Magnus Jodal
6a3e322845 core: Tweak mute docs, add simple test case 2013-10-09 23:24:17 +02:00
Stein Magnus Jodal
52ee456692 tests: Import unittest directly from the stdlib 2013-04-29 19:45:25 +02:00