def test_proc_dict_to_schema_vals(self): dd = test_instantiate_dialect_detector() se = test_instantiate_schema_engine() headers = dd.sniff_for_headers(INV_TEST_REG) csv_reader = SchemaEngine.build_csv_reader(INV_TEST_REG) processed = se._proc_rows_to_dict(headers, csv_reader) schema_values = se._proc_dict_to_schema_vals(processed, processed) assert isinstance(schema_values, list) for pair in schema_values: assert isinstance(pair, tuple) for part in pair: assert isinstance(part, str) assert ('Cost', 'Double') in schema_values assert ('Description', 'LongChar Width 5000') in schema_values assert ('Year', 'Double') not in schema_values
def test_proc_rows_to_dict(self): dd = test_instantiate_dialect_detector() headers = dd.sniff_for_headers(INV_TEST_REG) csv_reader = SchemaEngine.build_csv_reader(INV_TEST_REG) processed = SchemaEngine()._proc_rows_to_dict(headers, csv_reader) assert isinstance(processed, defaultdict) assert isinstance(processed["FileType"], list) assert isinstance(processed["FileType"][0], tuple) for _, det_type in processed["Cost"]: assert det_type is float for _, det_type in processed["Year"]: assert det_type is int for _, det_type in processed["Description"]: assert det_type is str or not det_type for _, det_type in processed["SoldDate"]: assert not det_type