2018-01-07 13:33:04 +00:00
|
|
|
import unittest
|
2019-01-06 20:03:29 +00:00
|
|
|
from datetime import date
|
2018-01-07 13:33:04 +00:00
|
|
|
|
2019-01-26 13:15:13 +00:00
|
|
|
from tests.base import TestCaseDB
|
|
|
|
|
2018-01-07 13:33:04 +00:00
|
|
|
from ogn.model import AircraftBeacon, Receiver, ReceiverCoverage, Device
|
2019-01-06 20:03:29 +00:00
|
|
|
from ogn.collect.ognrange import create_receiver_coverage
|
2018-01-07 13:33:04 +00:00
|
|
|
|
|
|
|
|
2019-01-26 13:15:13 +00:00
|
|
|
class TestOGNrange(TestCaseDB):
|
2018-01-07 13:33:04 +00:00
|
|
|
def setUp(self):
|
2019-01-26 13:15:13 +00:00
|
|
|
super(TestOGNrange, self).setUp()
|
|
|
|
session = self.session
|
2018-01-07 13:33:04 +00:00
|
|
|
|
|
|
|
# Create basic data and insert
|
|
|
|
self.dd0815 = Device(address='DD0815')
|
|
|
|
self.dd4711 = Device(address='DD4711')
|
|
|
|
|
|
|
|
self.r01 = Receiver(name='Koenigsdf')
|
|
|
|
self.r02 = Receiver(name='Bene')
|
|
|
|
|
|
|
|
session.add(self.dd0815)
|
|
|
|
session.add(self.dd4711)
|
|
|
|
session.add(self.r01)
|
|
|
|
session.add(self.r02)
|
|
|
|
|
|
|
|
session.commit()
|
|
|
|
|
|
|
|
# Create beacons and insert
|
2019-01-23 12:06:50 +00:00
|
|
|
self.ab01 = AircraftBeacon(name='FLRDD0815', receiver_name='Koenigsdf', device_id=self.dd0815.id, receiver_id=self.r01.id, timestamp='2017-12-10 10:00:00', location_mgrs_short='89ABC1267', altitude=800)
|
|
|
|
self.ab02 = AircraftBeacon(name='FLRDD0815', receiver_name='Koenigsdf', device_id=self.dd0815.id, receiver_id=self.r01.id, timestamp='2017-12-10 10:00:01', location_mgrs_short='89ABC1267', altitude=850)
|
2018-01-07 13:33:04 +00:00
|
|
|
session.add(self.ab01)
|
|
|
|
session.add(self.ab02)
|
|
|
|
session.commit()
|
|
|
|
|
|
|
|
def test_update_receiver_coverage(self):
|
|
|
|
session = self.session
|
|
|
|
|
2019-01-06 20:03:29 +00:00
|
|
|
create_receiver_coverage(session, date=date(2017, 12, 10))
|
2018-01-07 13:33:04 +00:00
|
|
|
|
|
|
|
coverages = session.query(ReceiverCoverage).all()
|
|
|
|
self.assertEqual(len(coverages), 1)
|
|
|
|
coverage = coverages[0]
|
2019-01-23 14:33:33 +00:00
|
|
|
self.assertEqual(coverage.location_mgrs_short, '89ABC1267')
|
2018-01-07 13:33:04 +00:00
|
|
|
self.assertEqual(coverage.receiver_id, self.r01.id)
|
|
|
|
self.assertEqual(coverage.min_altitude, 800)
|
|
|
|
self.assertEqual(coverage.max_altitude, 850)
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
unittest.main()
|