Commit Graph

42 Commits

Author SHA1 Message Date
Stein Magnus Jodal
6d82cdb611 tests: Cleanup reset_mock() usage 2015-05-06 21:06:30 +02:00
Stein Magnus Jodal
c4940cbea2 autopep8: Add space after class signature/docstring 2015-04-03 00:05:26 +02:00
Thomas Adamcik
0fb6c620df docs: Add changelog entry for broadcast race 2015-03-02 00:05:58 +01:00
Thomas Adamcik
4ee7dd73bd http: Make WS broadcast more robust against disconnect race
Adds some WebSocketHandler tests that actually connect using a WS client and
plugs a potential race condition.

Any call to write_message could fail, either due to WebSocketClosedError like
in the log below, or simply due to socket errors. To play it safe we catch all
errors and debug log that a broadcast failed.

2015-02-26 21:24:02,266 ERROR    [HttpServer] /home/adamcik/dev/mopidy/mopidy/http/handlers.py:116
  mopidy.http.handlers WebSocket request error: deque index out of range
2015-02-26 21:24:10,098 ERROR    [HttpFrontend-11] build/bdist.linux-x86_64/egg/pykka/actor.py:268
  pykka Unhandled exception in HttpFrontend (urn:uuid:e376bd95-c32e-4e17-ad20-7d0b3c0cf2b2):
Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/pykka/actor.py", line 200, in _actor_loop
    response = self._handle_receive(message)
  File "build/bdist.linux-x86_64/egg/pykka/actor.py", line 294, in _handle_receive
    return callee(*message['args'], **message['kwargs'])
  File ".../dev/mopidy/mopidy/http/actor.py", line 77, in on_event
    on_event(name, **data)
  File ".../dev/mopidy/mopidy/http/actor.py", line 84, in on_event
    handlers.WebSocketHandler.broadcast(message)
  File ".../dev/mopidy/mopidy/http/handlers.py", line 78, in broadcast
    client.write_message(msg)
  File ".../dev/mopidy-virtualenv/local/lib/python2.7/site-packages/tornado/websocket.py", line 183, in write_message
    raise WebSocketClosedError()
WebSocketClosedError
2015-03-02 00:05:21 +01:00
Stein Magnus Jodal
496142c201 py3: Use absolute imports by default 2014-12-07 20:17:10 +01:00
Stein Magnus Jodal
1ebe1151fc http: Make event emitting testable 2014-07-17 01:14:06 +02:00
Stein Magnus Jodal
3fac0cb8de http: Split socket and server creation 2014-07-17 01:13:48 +02:00
Stein Magnus Jodal
aed8670797 http: Fix flake8 warnings 2014-06-22 09:53:03 +02:00
Stein Magnus Jodal
9f925570d2 http: Redirect from root to /mopidy/ if no static_dir app 2014-06-22 01:24:57 +02:00
Stein Magnus Jodal
6596871918 http: Test serving og legacy static_dir apps 2014-06-22 01:22:22 +02:00
Stein Magnus Jodal
5861071bb1 http: List installed web clients at /mopidy/ 2014-06-22 00:39:54 +02:00
Stein Magnus Jodal
59760bb36c web: Remove WebSocket demo page 2014-06-21 23:27:35 +02:00
Stein Magnus Jodal
fbcc73004d http: Redirect from /app to /app/ 2014-06-21 16:36:16 +02:00
Stein Magnus Jodal
6c6600c37b http: Group HTTP server tests 2014-06-21 16:21:39 +02:00
dz0ny
7c428ce8d2 Fix http router so it can handle /{ext_name} same as /{ext_name}/ 2014-06-21 15:05:13 +02:00
Stein Magnus Jodal
720a403439 http: Remove unused Router class 2014-06-04 21:32:54 +02:00
Stein Magnus Jodal
33228f2528 http: Simplify app registration 2014-06-04 21:32:19 +02:00
Stein Magnus Jodal
b6ab29eed4 http: Remove unused code 2014-06-04 21:02:33 +02:00
Stein Magnus Jodal
d13194dfa4 http: Remove static file serving from the Router 2014-06-04 20:55:28 +02:00
Stein Magnus Jodal
eea6138b3d http: Simplify static files serving 2014-06-04 20:47:49 +02:00
Stein Magnus Jodal
684a64405d http: Move MopidyHttpRouter into handlers module 2014-05-22 21:03:42 +02:00
Stein Magnus Jodal
1223103e8f http: Test that routers can mount WSGI apps 2014-05-21 00:38:38 +02:00
Stein Magnus Jodal
fe9a126a2a http: Enforce router's URL namespace 2014-05-20 23:53:26 +02:00
Stein Magnus Jodal
4b383c1762 http: Move Mopidy request handlers to a MopidyHttpRouter 2014-05-20 23:49:22 +02:00
Stein Magnus Jodal
5d1f8f2203 http: Give routers access to the core API 2014-05-20 23:30:49 +02:00
Stein Magnus Jodal
5897675eab http: Split tests into three files 2014-05-20 23:07:28 +02:00
Stein Magnus Jodal
e9ff16fe63 http: Simplify test imports 2014-05-20 22:55:37 +02:00
Stein Magnus Jodal
6d04aaf3e4 http: More consistent use of 'request handler' 2014-05-20 22:50:45 +02:00
Stein Magnus Jodal
ea5a317b00 http: Avoid tornado import before extension is loaded, group all handlers 2014-05-20 22:36:15 +02:00
Stein Magnus Jodal
1a72f68707 http: Import modules, not attributes 2014-05-20 22:32:45 +02:00
Stein Magnus Jodal
1838f10dcf http: Rename 'setup_routes()' to 'get_request_handlers()' 2014-05-20 22:28:18 +02:00
Stein Magnus Jodal
e8291d471e http: Rename 'linkify()' to 'get_root_url()' 2014-05-20 22:16:01 +02:00
Stein Magnus Jodal
cad0207ef8 http: Rename 'path' to 'static_file_path' 2014-05-20 22:12:06 +02:00
dz0ny
031c7c8e93 Add: Tornado as required dependency
Fix: Remove draft76
Fix: Remove class attributes for ws handler
Revert: default to /ws/ for for mopidy.html
2014-05-12 16:16:08 +02:00
dz0ny
73721c77ad Fix: Fields order doesn't matter for json. Test for valid dict and data only 2014-05-12 15:14:42 +02:00
dz0ny
26833b4093 Fix: Import order for whole PR 2014-05-12 14:54:50 +02:00
dz0ny
f1d1a4713b Squashed commit of the following:
commit dbb7005aa866cdc337bde9c8169e9bf15e5c8042
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 11 22:12:58 2014 +0200

    Fix: Make PR mergable

commit 5bb27da72c4276a930bf33955e6583f6781d23f6
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Thu May 8 23:31:54 2014 +0200

    Add: helper method for extensin url

commit 8a348b26b65102084a606ff73384a478bb785cf1
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Thu May 8 00:35:50 2014 +0200

    Add: Refactor ws and rpc to handlers, reuse code

commit 677c809d2b39a6c982ab835368fdb8a3ad9d1a92
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Thu May 8 00:18:10 2014 +0200

    Fix: Return proper HTTP headers

commit fe5fea2fc2a0d28a39532d6d4cd2b21013d57d24
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Wed May 7 23:48:19 2014 +0200

    Add: RPC post handler
    Add: tests for http post handler

commit e77e60310853b368758b09b303a96a95ff1b9b93
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 4 22:15:04 2014 +0200

    Add: Documentation on how to extend http api

commit a3a14fb5d15f095e5bab23a590e0a8360a039f9a
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 4 19:48:34 2014 +0200

    Add: HTTP tests for default router and static handler

commit 0d9544256bcb8f048eaedb5cdd57b1de027d387b
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 4 15:44:32 2014 +0200

    Fix: Move StaticFileHandler to main http package

commit c83c9f661e658e4a843dc5c8c6ba5dc3f1ea9c1e
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 4 15:29:49 2014 +0200

    Add: default Router implementation

commit 258cb7210bdf13833884c04cfb7fb4fa704394a7
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sun May 4 15:00:46 2014 +0200

    Add: Switch to registry for router registration

commit b7bfe7b814235b030d7ac30de90e2331e3d809d3
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sat May 3 21:52:58 2014 +0200

    Fix: Private methods
    Fix: Point to mopidy.html instead main.html
    Fix: Less noise in console

commit 232abe3029e93f78ce25db0c1bd44743cc23ed2d
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sat May 3 21:32:07 2014 +0200

    Fix: Start IOLoop in separate thread, so actor can stop it

commit d686892c2fa993cbedc99c8e8e7f9c961ac6f35a
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sat May 3 19:30:49 2014 +0200

    Fix: Router load order
    Fix: JS helper library WSS default url
    Add: Handlers from extensions

commit a1b0f5673a6719f229df27feccb284324675e9d1
Author: dz0ny <dz0ny@ubuntu.si>
Date:   Sat May 3 14:53:30 2014 +0200

    Add: Switch to Tornado framework
2014-05-12 14:54:50 +02:00
Stein Magnus Jodal
b754885064 Fix all import order warnings 2014-05-07 20:08:43 +02:00
Stein Magnus Jodal
2979de0f94 http: Polish Mopidy-HTTP Zeroconf service
Builds upon #725 to:

- Remove extra config for Mopidy-HTTP Zeroconf service
- Refactor Zeroconf setup code in the HTTP frontend a bit
- Add documentation
2014-05-06 23:20:14 +02:00
Sam Willcocks
05089fba3b Update tests to add zeroconf-websocket config option 2014-04-27 17:50:41 +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
621aff22c9 http: Move mopidy.{frontends => }.http 2013-12-31 14:04:25 +01:00