def test_remove_methods(self): table = OutputTable(headers=TEST_HEADERS) for row in TEST_ROWS: table.add_row(row) # Pick a row row_idx = 4 self.assertEqual(table.get_row(index=row_idx), [f"value 4{j}" for j in range(10)]) # remove row and check that the next one is in its place table.remove_row_by_index(index=row_idx) self.assertEqual(table.get_row(index=row_idx), [f"value 5{j}" for j in range(10)]) table = OutputTable(headers=TEST_HEADERS) for row in TEST_ROWS: table.add_row(row) # Pick column, remove and check that is replaced col_idx = 7 self.assertEqual(table.get_column(index=col_idx), ["Column 7"] + [f"value {i}7" for i in range(10)]) table.remove_column_by_index(index=col_idx) self.assertEqual(table.get_column(index=col_idx), ["Column 8"] + [f"value {i}8" for i in range(10)]) table.remove_column_by_header(header="Column 8") self.assertEqual(table.get_column(index=col_idx), ["Column 9"] + [f"value {i}9" for i in range(10)])
def test_add_get_methods(self): table = OutputTable(headers=["Column 0"]) # add/get single row/col table.add_row(["value 0,0"]) self.assertEqual(table.get_row(index=0), ["value 0,0"]) table.add_column(["Column 1", "value 0,1"]) self.assertEqual(table.headers(), ["Column 0", "Column 1"]) self.assertEqual(table.get_row(index=0), ["value 0,0", "value 0,1"]) self.assertEqual(table.get_column(index=1), ["Column 1", "value 0,1"]) # add/get row and column by index table.add_row(["value -1,0", "value -1,1"], index=0) self.assertEqual(table.get_row(index=0), ["value -1,0", "value -1,1"]) self.assertEqual(table.get_column(index=0), ["Column 0", "value -1,0", "value 0,0"]) self.assertEqual(table.get_column(index=1), ["Column 1", "value -1,1", "value 0,1"]) table.add_column(["Column 0.5", "value -1,0.5", "value 0,0.5"], index=1) self.assertEqual(table.get_column(index=1), ["Column 0.5", "value -1,0.5", "value 0,0.5"]) self.assertEqual(table.get_row(index=0), ["value -1,0", "value -1,0.5", "value -1,1"]) self.assertEqual(table.get_row(index=1), ["value 0,0", "value 0,0.5", "value 0,1"])