Commit Graph

4544 Commits

Author SHA1 Message Date
Thomas Adamcik
7fc753d167 core/local: Update playback test with review comments.
- Fixes typo.
- Adds assert to better test intermediate state.
2013-10-20 21:16:18 +02:00
Thomas Adamcik
d978005008 core: flake8 fixes 2013-10-20 20:33:48 +02:00
Thomas Adamcik
40754bb2e0 core: Fix handling of shuffle (fixes #453)
- Shuffle internal list when random is enabled
- Use presence of tl_track to determine if this is first run to trigger
  subsequent shuffles.
2013-10-20 19:28:13 +02:00
Thomas Adamcik
66ae1b8eee local/core: Add and fix more random related tests.
- Adds tests for eot_track vs next_track as we were only testing the one code
  path.
- Makes test_random_until_end_of_playlist_and_play_from_start actually test
  random and not repeat.
- Adds test_play_track_then_enable_random which is the underlying bug covered
  by the regression test for issue #17.
2013-10-20 18:39:07 +02:00
Thomas Adamcik
025bafc114 local/core: Update random tests to be more predictable
- Replace setting the random seed with mocking out shuffle with reverse. This
  makes tests easier to reason about while still being able to test correct
  behaviour.
- Increases number of tracks to four to avoid test passing due to symetry in
  plain and reversed lists.
- Made test_eot_track_with_random_after_append_playlist actually test eot and
  not next.
- Found a test failure in handling of test_random_until_end_of_playlist, fix in
  next commit.
2013-10-20 18:39:07 +02:00
Thomas Adamcik
d968244712 docs: Update changelog with scanner info. 2013-10-20 17:19:03 +02:00
Stein Magnus Jodal
cfe93c244b scanner: Reject files with <100ms audio data 2013-10-20 16:43:04 +02:00
Stein Magnus Jodal
96008ca826 Merge pull request #539 from adamcik/fix/bug-527-temp-workaround
local: Temporary workaround for issue #527
2013-10-20 07:31:55 -07:00
Thomas Adamcik
fcd3e5d5cf local: Add test for fallback handling of unknown track uris in playlists
- Checks that adding a non local:track:... uri to a playlist and reading it
  back works.
- Also fixes mistake in API usage where we assumed lookup still raised
  LookupError.
2013-10-20 16:18:03 +02:00
Stein Magnus Jodal
53333f7121 docs: Update changelog 2013-10-20 16:06:08 +02:00
Stein Magnus Jodal
c8886dec49 tests: Sort imports 2013-10-20 16:04:09 +02:00
Stein Magnus Jodal
e6712bac93 Merge pull request #538 from adamcik/feature/gst-discoverer
scanner: Switch to gst.pbutils.Discoverer and refactor API
2013-10-20 07:03:47 -07:00
Thomas Adamcik
2f01fc4e46 scanner: Review comments and flake fixes
- Move ScannerError to exceptions module.
- Subclass ScannerError from MopidyException.
- Fix import sorting.
2013-10-20 15:51:39 +02:00
Stein Magnus Jodal
d8b0952f66 scanner: Remove support for running Python on the mopidy/scanner.py file
See commit 1a02b4d17f for details
2013-10-20 15:46:35 +02:00
Thomas Adamcik
0f6176a3b4 local: Temporary workaround for issue #527
Adds a fallback to `Track(uri=uri` when track lookup fails for playlists. This
means we can at least load metadata less tracks giving users functioning
playlists, instead of only supporting `local:track:...` style URIs.

Issue is not fixed, but this is sufficient to reduce priority until we get to
the larger planed refactor for this and other core API issues.
2013-10-20 13:26:38 +02:00
Thomas Adamcik
a5a55952fb scanner: Switch to gst.pbutils.Discoverer and refactor API
- New API wraps gst.pbutils.Discoverer for mopidy use.
  - Custom scanner code removed.
- Callback based async API switched with simpler synchronous API
  - Scanner is feed one and one URI and returns the result or raises an error.
- Adds new ScannerError exception for error handling in scanner
- Limits local/scan_timeout to 1000-3600000 i.e. 1s to 1h
- Files with zero duration are now excluded.
- Mtime handling moved out of scanner so we can use it for streams etc.
2013-10-20 13:22:00 +02:00
Stein Magnus Jodal
8561e9c815 docs: Remove mopidy.backends.spotify 2013-10-20 10:44:25 +02:00
Stein Magnus Jodal
11a9b5b1f2 docs: Add Mopidy-Notifier to extension list 2013-10-19 23:15:13 +02:00
Stein Magnus Jodal
8edf81dca1 docs: Update changelog 2013-10-19 22:57:13 +02:00
Thomas Adamcik
e0bfe144f8 Merge pull request #532 from jodal/feature/search-by-albumartist
Search filtering by albumartist
2013-10-19 13:46:58 -07:00
Thomas Adamcik
c8f5c1aacf Merge pull request #537 from jodal/tidy-up-core
Core playback and tracklist modularity improvement v2
2013-10-19 13:24:21 -07:00
Stein Magnus Jodal
27a63b1688 local: Remove redundant test asserts 2013-10-19 22:17:08 +02:00
Stein Magnus Jodal
c850ed2698 Merge branch 'develop' into feature/search-by-albumartist
Conflicts:
	tests/backends/local/library_test.py
2013-10-19 22:15:50 +02:00
Stein Magnus Jodal
7d874873bd local: Include albumartist in 'any' searches 2013-10-19 22:14:53 +02:00
Stein Magnus Jodal
9a5d177dda docs: Update authors list 2013-10-19 21:10:16 +02:00
Stein Magnus Jodal
46bd5bc096 docs: Reduce depth of ToC 2013-10-19 21:09:49 +02:00
Stein Magnus Jodal
9446e65b44 Merge pull request #536 from txomon/local_tests_rename
Rename tests
2013-10-19 12:07:29 -07:00
Stein Magnus Jodal
345be9d3ed docs: Update changelog for tidy-up-core changes 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
033e3ab813 jsonrpc: Test application error responses again
The test was modified to not fail after a refactoring, making it not test what
it was intended to test at all. This reverts the changes and updates the test
in another way, keeping the original intention.
2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
d7552b2fe2 tests: Formatting 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
83db750e0a core.tracklist: Formatting 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
9864f55b75 core.tracklist: Improve if check in mark_unplayable() 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
46aeb3bfcc core.tracklist: Move logging into mark_unplayable() 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
67a7e0021a core.tracklist: Add docstrings to mark_* 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
91e718e85f core.tracklist: Rename mark_{starting => playing} 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
0ea4fd6af0 core.tracklist: Rename mark_{consumed => played} 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
aaa3b2e93c core.tracklist: Remove redundant if stmt in index() 2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
9c2f6c2f25 core.tracklist: Tweak docstrings 2013-10-19 20:53:01 +02:00
Stein Magnus Jodal
d9921d9127 core.tracklist: Test changed index() behavior 2013-10-19 20:53:01 +02:00
Stein Magnus Jodal
ff89fc58a9 core.tracklist: Remove pylint comment 2013-10-19 20:53:01 +02:00
Stein Magnus Jodal
e5e1b5fa63 core.playback: Formatting 2013-10-19 20:41:48 +02:00
Stein Magnus Jodal
ce55e0eca5 core.playback: Refactor play() logic 2013-10-19 20:41:47 +02:00
Stein Magnus Jodal
d636f0d228 core.playback: Simplify if stmt
tracklist.tl_tracks is always a list
2013-10-19 20:41:47 +02:00
Stein Magnus Jodal
b6346f1c86 core.playback: Rename next_{ => tl_}track
To make the type of the variable obvious
2013-10-19 20:41:36 +02:00
Javier Domingo Cansino
677c61f398 tests: Rename local tests to describe that they are testing local providers and not core controllers 2013-10-18 16:12:38 +02:00
Javier Domingo Cansino
e9c20d2e59 Correcting flake error on unused import 2013-10-15 12:11:01 +02:00
Javier Domingo Cansino
1d4ff4c9c6 Merging upstream changes in tidy-up-core 2013-10-15 09:37:54 +02:00
Stein Magnus Jodal
61f2d7314e docs: Fix typo 2013-10-13 19:50:04 +02:00
Stein Magnus Jodal
ded783e394 manifest: pylintrc no longer exists, so don't include it in PyPI package 2013-10-12 00:21:25 +02:00
Stein Magnus Jodal
76b70aa0c5 mpd: Make 'list' support 'albumartist' key 2013-10-12 00:16:20 +02:00