示例#1
0
 def test_widget_client_clear(self):
     data = {"a": np.arange(0, 50)}
     widget = PerspectiveWidget(data, client=True)
     mocked_post = partial(mock_post, assert_msg={"cmd": "clear"})
     widget.post = MethodType(mocked_post, widget)
     widget.clear()
     assert widget._data is None
示例#2
0
 def test_widget_delete(self):
     data = {"a": np.arange(0, 50)}
     widget = PerspectiveWidget(data)
     mocked_post = partial(mock_post, assert_msg={"cmd": "delete"})
     widget.post = MethodType(mocked_post, widget)
     widget.delete()
     assert widget.table is None
示例#3
0
    def test_widget_delete_with_view(self):
        data = {"a": np.arange(0, 50)}
        widget = PerspectiveWidget(data)

        # create a view on the manager
        table_name, table = list(widget.manager._tables.items())[0]
        make_view_message = {
            "id": 1,
            "table_name": table_name,
            "view_name": "view1",
            "cmd": "view",
            "config": {
                "group_by": ["a"]
            }
        }
        widget.manager._process(make_view_message, lambda x: True)

        assert len(widget.manager._views) == 1

        mocked_post = partial(mock_post, assert_msg={"cmd": "delete"})

        widget.post = MethodType(mocked_post, widget)
        widget.delete()

        assert widget.table is None
示例#4
0
 def test_widget_delete_view(self):
     data = {"a": np.arange(0, 50)}
     table = Table(data)
     view = table.view()
     widget = PerspectiveWidget(view)
     mocked_post = partial(mock_post, assert_msg={"cmd": "delete"})
     widget.post = MethodType(mocked_post, widget)
     widget.delete()
     assert widget._view is None
     assert widget.table is None
示例#5
0
 def test_widget_client_replace(self):
     data = {"a": np.arange(0, 50)}
     new_data = {"a": [1]}
     widget = PerspectiveWidget(data, client=True)
     mocked_post = partial(mock_post,
                           assert_msg={
                               "cmd": "replace",
                               "data": new_data
                           })
     widget.post = MethodType(mocked_post, widget)
     widget.replace(new_data)
     assert widget._data is new_data
示例#6
0
 def test_widget_client_update(self):
     data = {"a": np.arange(0, 50)}
     comparison_data = {"a": [i for i in range(50)]}
     widget = PerspectiveWidget(data, client=True)
     mocked_post = partial(mock_post,
                           assert_msg={
                               "cmd": "update",
                               "data": comparison_data
                           })
     widget.post = MethodType(mocked_post, widget)
     widget.update(data)
     assert widget.table is None
示例#7
0
 def test_widget_client_update_cached(self):
     data = {"a": [1, 2]}
     widget = PerspectiveWidget(data, client=True)
     mocked_post = partial(mock_post,
                           assert_msg={
                               "cmd": "update",
                               "data": data
                           })
     widget.post = MethodType(mocked_post, widget)
     widget.update(data)
     assert widget._predisplay_update_cache == [data]
     widget._displayed = True
     widget.update(data)
     assert widget._predisplay_update_cache == [data]
示例#8
0
 def test_widget_delete_client(self):
     data = {"a": np.arange(0, 50)}
     widget = PerspectiveWidget(data, client=True)
     mocked_post = partial(mock_post, assert_msg={"cmd": "delete"})
     widget.delete()
     widget.post = MethodType(mocked_post, widget)