def test_row_from_dict(): td = TabularData(["col1", "col2"]) td.row_from_dict({"col3": "value3", "col4": "value4"}) assert td.keys() == ["col1", "col2", "col3", "col4"] assert dict(td.items()) == { "col1": [""], "col2": [""], "col3": ["value3"], "col4": ["value4"], } td.row_from_dict({"col3": "value3", "col5": "value5", "col6": "value6"}) assert td.keys() == ["col1", "col2", "col3", "col4", "col5", "col6"] assert dict(td.items()) == { "col1": ["", ""], "col2": ["", ""], "col3": ["value3", "value3"], "col4": ["value4", ""], "col5": ["", "value5"], "col6": ["", "value6"], } assert td.shape == (6, 2) assert list(td) == [ ["", "", "value3", "value4", "", ""], ["", "", "value3", "", "value5", "value6"], ]
def _show_table(self): td = TabularData(self.TABLE_COLUMNS, fill_value="-") conf = self.config.read()["machine"] if self.args.name: conf = {self.args.name: conf.get(self.args.name, {})} self._hide_private(conf) for machine, machine_config in conf.items(): machine_config["name"] = machine td.row_from_dict(machine_config) td.dropna("cols", "all") td.render()