def test_property_data_column_nonexistent(): csv_input = good_data_csv[0] obj = PropertyData.from_csv(StringIO(csv_input), 1) try: obj.get_column("this is not a column") assert False, "Expected failure for bogus column" except KeyError: pass
def test_property_data_column_type(): csv_input = good_data_csv[0] obj = PropertyData.from_csv(StringIO(csv_input), 1) csv_header = csv_input.split("\n")[0].split(",") for i, col in enumerate((csv_header[1], csv_header[3])): units_pos = col.find("(") if units_pos >= 0: col = col[:units_pos].strip() obj.get_column(col) index = obj.get_column_index(col) if i == 0: assert obj.is_state_column(index) else: assert obj.is_property_column(index)
def pd(): # create main propertydata obj return PropData.from_csv(StringIO(test_data["main"]), 1)
def test_property_data_bad(): inputs = map(StringIO, bad_data_csv) for inpfile in inputs: with pytest.raises(Exception): PropertyData.from_csv(inpfile, 0)
def test_property_data_good(): inputs = map(StringIO, good_data_csv) states, total = [1], [2] for inpfile, state_col, ncol in zip(inputs, states, total): obj = PropertyData.from_csv(inpfile, state_col) assert obj.num_columns == ncol
def test_property_table_objinit(): d = PropertyData(dummy_data) m = PropertyMetadata({"bar": "y"}) tbl = PropertyTable(data=d, metadata=m) assert tbl.data.as_list()[0]["units"] == "none" assert tbl.metadata[0].as_dict()["bar"] == "y"
def test_property_table_objinit(): d = PropertyData(dummy_data) m = PropertyMetadata({'bar': 'y'}) tbl = PropertyTable(data=d, metadata=m) assert tbl.data.as_list()[0]['units'] == 'none' assert tbl.metadata[0].as_dict()['bar'] == 'y'