def testRecordAPIs(self): self.sensor1 = Sensor.Create(self.e, "000-100", self.st.key().id()) self.sensor1.put() now = datetime.now() r1_ts = tools.unixtime(now) r = Record.Create(tools.unixtime(now), self.sensor1, {'location': '51.5033640,-0.1276250'}) r2 = Record.Create( tools.unixtime(now) + 1000, self.sensor1, {'location': '51.5033640,-0.1276250'}) db.put([r, r2]) # Test list params = self.__commonParams() params.update({'sensor_kn': "000-100"}) result = self.get_json("/api/data", params) self.assertTrue(result['success']) self.assertEqual(len(result['data']['records']), 2) # Test detail params = self.__commonParams() result = self.get_json("/api/data/%s/%s" % ("000-100", r1_ts), params) self.assertTrue(result['success']) _r = result['data']['record'] self.assertEqual(_r['sensor_kn'], "000-100") self.assertEqual(_r['ts'], r1_ts) self.assertEqual( _r['kn'], "%s_%s_%s" % (self.e.key().id(), self.sensor1.key().name(), int(r1_ts)))
def __createNewRecords(self, data, first_dt=None, interval_secs=3, sensor=None): if not sensor: sensor = self.vehicle_1 now = first_dt if first_dt else datetime.now() records = [] N = len(data.values()[0]) for i in range(N): _r = {} for column, vals in data.items(): _r[column] = vals[i] now += timedelta(seconds=interval_secs) r = Record.Create(tools.unixtime(now), sensor, _r, allow_future=True) records.append(r) db.put(records) sensor.dt_updated = datetime.now() sensor.put() logging.debug("Created %d records" % len(records)) if records: return records[-1].dt_recorded # Datetime of last record created else: return None
def __createNewRecords(self, data, first_dt=None, interval_secs=3, sensor=None): if not sensor: sensor = self.vehicle_1 now = first_dt if first_dt else datetime.now() records = [] N = len(data.values()[0]) for i in range(N): _r = {} for column, vals in data.items(): _r[column] = vals[i] if 'ts' in data: # If ts passed in record, overrides now = util.ts_to_dt(data['ts']) else: now += timedelta(seconds=interval_secs) r = Record.Create(tools.unixtime(now), sensor, _r, allow_future=True) records.append(r) db.put(records) sensor.dt_updated = datetime.now() sensor.put() logging.debug("Created %d records" % len(records)) return records[-1]