コード例 #1
0
 def test_manager_create_view_zero(self):
     message = {
         "id": 1,
         "table_name": "table1",
         "view_name": "view1",
         "cmd": "view"
     }
     manager = PerspectiveManager()
     table = Table(data)
     manager.host_table("table1", table)
     manager.process(message, self.post)
     assert manager._views["view1"].num_rows() == 3
コード例 #2
0
 def test_manager_create_view_and_update_table(self):
     message = {
         "id": 1,
         "table_name": "table1",
         "view_name": "view1",
         "cmd": "view"
     }
     manager = PerspectiveManager()
     table = Table(data)
     manager.host_table("table1", table)
     manager.process(message, self.post)
     table.update([{"a": 4, "b": "d"}])
     assert manager._views["view1"].num_rows() == 4
コード例 #3
0
 def test_manager_host_table(self):
     message = {
         "id": 1,
         "name": "table1",
         "cmd": "table_method",
         "method": "schema",
         "args": []
     }
     manager = PerspectiveManager()
     table = Table(data)
     manager.host_table("table1", table)
     manager.process(message, self.post)
     assert manager._tables["table1"].schema() == {"a": int, "b": str}
コード例 #4
0
    def test_manager_create_indexed_table(self):
        message = {
            "id": 1,
            "name": "table1",
            "cmd": "table",
            "args": [data],
            "options": {
                "index": "a"
            }
        }
        manager = PerspectiveManager()
        table = Table(data)
        manager.host_table("table1", table)
        manager.process(message, self.post)
        assert manager._tables["table1"].schema() == {"a": int, "b": str}

        assert manager._tables["table1"]._index == "a"
コード例 #5
0
 def test_manager_create_view_one(self):
     message = {
         "id": 1,
         "table_name": "table1",
         "view_name": "view1",
         "cmd": "view",
         "config": {
             "row_pivots": ["a"]
         }
     }
     manager = PerspectiveManager()
     table = Table(data)
     manager.host_table("table1", table)
     manager.process(message, self.post)
     assert manager._views["view1"].to_dict() == {
         "__ROW_PATH__": [[], ["1"], ["2"], ["3"]],
         "a": [6, 1, 2, 3],
         "b": [3, 1, 1, 1]
     }
コード例 #6
0
    def test_manager_to_dict(self):
        def handle_to_dict(msg):
            assert msg["data"] == data

        message = {
            "id": 1,
            "table_name": "table1",
            "view_name": "view1",
            "cmd": "view"
        }
        manager = PerspectiveManager()
        table = Table(data)
        manager.host_table("table1", table)
        manager.process(message, self.post)
        to_dict_message = {
            "id": 2,
            "name": "view1",
            "cmd": "view_method",
            "method": "to_dict"
        }
        manager.process(to_dict_message, handle_to_dict)