Exemple #1
0
    def test_bad_launch(self):
        client = FakeClient()
        app = ApplicationControl(client)

        client.setup_response("ssap://system.launcher/launch",
                              {"returnValue": False})
        with raises(IOError):
            app.launch(Application({"id": "123"}))
Exemple #2
0
    def test_get_current(self):
        client = FakeClient()
        app = ApplicationControl(client)

        client.setup_response(
            "ssap://com.webos.applicationManager/getForegroundAppInfo",
            {"returnValue": True, "appId": "123"})
        assert app.get_current() == "123"
Exemple #3
0
    def test_bad_list_apps(self):
        client = FakeClient()
        app = ApplicationControl(client)

        client.setup_response("ssap://com.webos.applicationManager/listApps",
                              {"returnValue": False})
        with raises(IOError):
            app.list_apps()
Exemple #4
0
    def test_exec_command_blocking(self):
        client = FakeClient()
        control_base = WebOSControlBase(client)
        control_base.COMMANDS = {
            "test": {"uri": "/test"}
        }

        client.setup_response("/test", {"resp": True})
        assert control_base.test() == {"resp": True}
Exemple #5
0
    def test_bad_mouse_socket(self):
        client = FakeClient()
        inp = InputControl(client, ws_class=FakeMouseClient)

        client.setup_response(
            "ssap://com.webos.service.networkinput/getPointerInputSocket",
            {"socketPath": ""})
        with raises(IOError):
            inp.connect_input()
Exemple #6
0
    def test_list_apps(self):
        client = FakeClient()
        app = ApplicationControl(client)

        appInfo = {"id": "1", "key": "value"}
        fake_response = {
            "returnValue": True,
            "apps": [appInfo]
        }
        client.setup_response("ssap://com.webos.applicationManager/listApps",
                              fake_response)
        assert app.list_apps()[0].data == appInfo
Exemple #7
0
    def test_exec_timeout(self):
        client = FakeClient()
        control_base = WebOSControlBase(client)
        control_base.COMMANDS = {
            "test": {
                "uri": "/test",
            },
        }

        client.setup_response("/another-uri", {"resp": True})
        with raises(Exception):
            control_base.test(timeout=1)
Exemple #8
0
    def test_input_commands(self, command, args, kwargs, data):
        client = FakeClient()
        inp = InputControl(client, ws_class=FakeMouseClient)

        client.setup_response(
            "ssap://com.webos.service.networkinput/getPointerInputSocket",
            {"socketPath": "x"})
        inp.connect_input()
        getattr(inp, command)(*args, block=False, **kwargs)
        inp.disconnect_input()

        split = data.split()
        expected = [x + ":" + y for x, y in zip(split[::2], split[1::2])]
        inp.mouse_ws.assert_sent_message("\n".join(expected) + "\n\n")
Exemple #9
0
    def test_exec_command_failed_blocking(self):
        client = FakeClient()
        control_base = WebOSControlBase(client)
        control_base.COMMANDS = {
            "test": {
                "uri": "/test",
                "validation": lambda *args: (False, "err"),
                "validation_error": "Error"
            },
        }

        client.setup_response("/test", {"resp": True})
        with raises(IOError):
            control_base.test(block=True)
Exemple #10
0
    def test_close(self):
        client = FakeClient()
        app = ApplicationControl(client)

        client.setup_response("ssap://system.launcher/close",
                              {"returnValue": True})
        app.close({"123": "435"})

        client.assert_sent_message_without_id({
            "type": "request",
            "uri": "ssap://system.launcher/close",
            "payload": {
                "123": "435",
            }
        })
Exemple #11
0
    def test_launch(self):
        client = FakeClient()
        app = ApplicationControl(client)

        client.setup_response("ssap://system.launcher/launch",
                              {"returnValue": True})
        application = Application({"id": "123"})
        app.launch(application, content_id="1", params={"a": "b"})

        client.assert_sent_message_without_id({
            "type": "request",
            "uri": "ssap://system.launcher/launch",
            "payload": {
                "id": "123",
                "contentId": "1",
                "params": {"a": "b"}
            }
        })
Exemple #12
0
    def test_exec_command_callback(self):
        client = FakeClient()
        control_base = WebOSControlBase(client)
        control_base.COMMANDS = {
            "test": {"uri": "/test"}
        }

        response = []
        event = Event()

        def callback(status, resp):
            response.append((status, resp))
            event.set()

        client.setup_response("/test", {"resp": True})
        control_base.test(callback=callback)
        event.wait()

        assert response == [(True, {"resp": True})]
Exemple #13
0
    def test_exec_command_failed_callback(self):
        client = FakeClient()
        control_base = WebOSControlBase(client)
        control_base.COMMANDS = {
            "test": {
                "uri": "/test",
                "validation": lambda *args: (False, "err"),
                "validation_error": "Error"
            }
        }

        response = []
        event = Event()

        def callback(status, resp):
            response.append((status, resp))
            event.set()

        client.setup_response("/test", {"resp": True})
        control_base.test(callback=callback)
        event.wait()

        assert response == [(False, "err")]
Exemple #14
0
 def test_get_volume(self):
     client = FakeClient()
     res = dict(returnValue=True, volume=1, mute=True, scenario="")
     client.setup_response("ssap://audio/getVolume", res)
     media = MediaControl(client)
     assert media.get_volume(block=True)["volume"] == 1