def test_changing_datatype(conn): with closing(conn.cursor()) as cursor: datasource = name_to_datasource(cursor, "storagetest") entitytype = name_to_entitytype(cursor, "UtranCell") timestamp = pytz.utc.localize(datetime.utcnow()) attribute_names = ['site_nr', 'height'] datapackage_a = DataPackage( attribute_names=attribute_names, rows=[ (10023, timestamp, ('10023', '15')) ] ) datapackage_b = DataPackage( attribute_names=attribute_names, rows=[ (10023, timestamp, ('10023', '25.6')) ] ) attributes = datapackage_a.deduce_attributes() attributestore = AttributeStore(datasource, entitytype, attributes) attributestore.create(cursor) conn.commit() attributestore.store_txn(datapackage_a).run(conn) attributestore.store_txn(datapackage_b).run(conn) conn.commit() column_names = get_column_names(conn, "attribute_history", attributestore.table_name()) eq_(len(column_names), 6)
def test_extra_column(conn): with closing(conn.cursor()) as cursor: datasource = name_to_datasource(cursor, "storagetest") entitytype = name_to_entitytype(cursor, "UtranCell") timestamp = pytz.utc.localize(datetime.utcnow()) datapackage_a = DataPackage( attribute_names=['test0', 'test1'], rows=[ (10023, timestamp, ('10023', '0.9919')) ] ) datapackage_b = DataPackage( attribute_names=['test0', 'test1', "test2"], rows=[ (10023, timestamp, ('10023', '0.9919', '17')) ] ) attributes = datapackage_a.deduce_attributes() attributestore = AttributeStore(datasource, entitytype, attributes) attributestore.create(cursor) conn.commit() attributestore.store_txn(datapackage_a).run(conn) attributestore.store_txn(datapackage_b).run(conn) conn.commit() column_names = get_column_names(conn, 'attribute_history', attributestore.table_name()) eq_(len(column_names), 7)