def test_normal_file( self, tmpdir, json_text, filename, table_name, expected_table_name, expected_attr_names, expected_data_matrix, ): p_db = tmpdir.join("tmp.db") p_json = tmpdir.join(filename) with open(str(p_json), "w") as f: f.write(json_text) con = SimpleSQLite(str(p_db), "w") try: con.create_table_from_json(str(p_json), table_name) except ImportError: pytest.skip("requires pytablereader") assert con.fetch_table_names() == [expected_table_name] assert expected_attr_names == con.fetch_attr_names(expected_table_name) result = con.select(select="*", table_name=expected_table_name) result_matrix = result.fetchall() assert len(result_matrix) == 3 assert result_matrix == expected_data_matrix
def test_normal_file( self, tmpdir, json_text, filename, table_name, expected_table_name, expected_attr_names, expected_data_matrix, ): p_db = tmpdir.join("tmp.db") p_json = tmpdir.join(filename) with open(str(p_json), "w") as f: f.write(json_text) con = SimpleSQLite(str(p_db), "w") con.create_table_from_json(str(p_json), table_name) assert con.fetch_table_names() == [expected_table_name] assert expected_attr_names == con.fetch_attr_names(expected_table_name) result = con.select(select="*", table_name=expected_table_name) result_matrix = result.fetchall() assert len(result_matrix) == 3 assert result_matrix == expected_data_matrix
def main(): file_path = "sample_data_multi.json" # create sample data file --- with open(file_path, "w") as f: f.write("""{ "table_a" : [ {"attr_b": 4, "attr_c": "a", "attr_a": 1}, {"attr_b": 2.1, "attr_c": "bb", "attr_a": 2}, {"attr_b": 120.9, "attr_c": "ccc", "attr_a": 3} ], "table_b" : [ {"a": 1, "b": 4}, {"a": 2 }, {"a": 3, "b": 120.9} ] }""") # create table --- con = SimpleSQLite("sample.sqlite", "w") con.create_table_from_json(file_path) # output --- for table_name in con.fetch_table_names(): print("table: " + table_name) print(con.fetch_attr_names(table_name)) result = con.select(select="*", table_name=table_name) for record in result.fetchall(): print(record) print()
def test_normal_text(self, tmpdir, json_text, table_name, expected_table_name, expected_attr_name_list, expected_data_matrix): p_db = tmpdir.join("tmp.db") con = SimpleSQLite(str(p_db), "w") con.create_table_from_json(json_text, table_name) assert con.get_table_name_list() == [expected_table_name] assert expected_attr_name_list == con.get_attr_name_list( expected_table_name) result = con.select(select="*", table_name=expected_table_name) result_matrix = result.fetchall() assert len(result_matrix) == 3 assert result_matrix == expected_data_matrix
# create sample data file --- with open(file_path, "w") as f: f.write( """{ "table_a" : [ {"attr_b": 4, "attr_c": "a", "attr_a": 1}, {"attr_b": 2.1, "attr_c": "bb", "attr_a": 2}, {"attr_b": 120.9, "attr_c": "ccc", "attr_a": 3} ], "table_b" : [ {"a": 1, "b": 4}, {"a": 2 }, {"a": 3, "b": 120.9} ] }""" ) # create table --- con = SimpleSQLite("sample.sqlite", "w") con.create_table_from_json(file_path) # output --- for table_name in con.fetch_table_names(): print("table: " + table_name) print(con.fetch_attr_names(table_name)) result = con.select(select="*", table_name=table_name) for record in result.fetchall(): print(record) print()