def test_add_attribute_with_value(self): db = PhilDB(self.test_tsdb) db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_attribute('provider', 'Data provider') db.add_attribute_value('provider', 'EXAMPLE_PROVIDER') db.add_timeseries_instance('410730', 'D', 'Foo', measurand='Q', source='EXAMPLE_SOURCE') Session.configure(bind=db._PhilDB__engine) session = Session() timeseries = db._PhilDB__get_record_by_id('410730', session) measurand = db._PhilDB__get_attribute('measurand', 'Q', session) source = db._PhilDB__get_attribute('source', 'EXAMPLE_SOURCE', session) provider = db._PhilDB__get_attribute('provider', 'EXAMPLE_PROVIDER', session) query = session.query(TimeseriesInstance). \ filter_by(measurand = measurand, source=source, timeseries=timeseries) record = query.one() self.assertEqual(record.timeseries.primary_id, '410730') self.assertEqual(record.measurand.short_id, 'Q') self.assertEqual(record.source.short_id, 'EXAMPLE_SOURCE')
def test_add_source(self): db = PhilDB(self.test_tsdb) db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_timeseries_instance('410730', 'D', 'Foo', measurand = 'Q', source = 'EXAMPLE_SOURCE') Session.configure(bind=db._PhilDB__engine) session = Session() timeseries = db._PhilDB__get_record_by_id('410730', session) measurand = db._PhilDB__get_attribute('measurand', 'Q', session) source = db._PhilDB__get_attribute('source', 'EXAMPLE_SOURCE', session) query = session.query(TimeseriesInstance). \ filter_by(measurand = measurand, source=source, timeseries=timeseries) record = query.one() self.assertEqual(record.timeseries.primary_id, '410730') self.assertEqual(record.measurand.short_id, 'Q') self.assertEqual(record.source.short_id, 'EXAMPLE_SOURCE')
def test_add_ts_instance_alternate_freq(self): db = PhilDB(self.test_tsdb) db.add_timeseries_instance('410730', 'M', 'Foo', measurand = 'Q', source = 'DATA_SOURCE') Session.configure(bind=db._PhilDB__engine) session = Session() timeseries = db._PhilDB__get_record_by_id('410730', session) measurand = db._PhilDB__get_attribute('measurand', 'Q', session) source = db._PhilDB__get_attribute('source', 'DATA_SOURCE', session) query = session.query(TimeseriesInstance). \ filter_by(measurand = measurand, source=source, timeseries=timeseries, freq='M') record = query.one() self.assertEqual(record.timeseries.primary_id, '410730') self.assertEqual(record.measurand.short_id, 'Q') self.assertEqual(record.source.short_id, 'DATA_SOURCE') self.assertEqual(record.freq, 'M')
def test_add_ts_instance_alternate_freq(self): db = PhilDB(self.test_tsdb) db.add_timeseries_instance('410730', 'M', 'Foo', measurand='Q', source='DATA_SOURCE') Session.configure(bind=db._PhilDB__engine) session = Session() timeseries = db._PhilDB__get_record_by_id('410730', session) measurand = db._PhilDB__get_attribute('measurand', 'Q', session) source = db._PhilDB__get_attribute('source', 'DATA_SOURCE', session) query = session.query(TimeseriesInstance). \ filter_by(measurand = measurand, source=source, timeseries=timeseries, freq='M') record = query.one() self.assertEqual(record.timeseries.primary_id, '410730') self.assertEqual(record.measurand.short_id, 'Q') self.assertEqual(record.source.short_id, 'DATA_SOURCE') self.assertEqual(record.freq, 'M')