Database tests have their own base test class

pull/68/head
Konstantin Gründger 2019-01-26 14:15:13 +01:00
rodzic bd9b67559f
commit b406594ea7
7 zmienionych plików z 54 dodań i 127 usunięć

28
tests/base.py 100644
Wyświetl plik

@ -0,0 +1,28 @@
import unittest
import os
os.environ['OGN_CONFIG_MODULE'] = 'config.test'
class TestCaseDB(unittest.TestCase):
session = None
engine = None
app = None
def setUp(self):
from ogn.commands.dbutils import engine, session
self.session = session
self.engine = engine
from ogn.commands.database import drop
drop(sure='y')
from ogn.commands.database import init
init()
def tearDown(self):
pass
if __name__ == '__main__':
unittest.main()

Wyświetl plik

@ -1,33 +1,12 @@
import unittest import unittest
import os
from tests.base import TestCaseDB
from ogn.model import AircraftBeacon, ReceiverBeacon, Device, Receiver from ogn.model import AircraftBeacon, ReceiverBeacon, Device, Receiver
from ogn.collect.database import add_missing_devices, add_missing_receivers from ogn.collect.database import add_missing_devices, add_missing_receivers
class TestDB(unittest.TestCase): class TestDatabase(TestCaseDB):
session = None
engine = None
app = None
def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test'
from ogn.commands.dbutils import engine, session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
def tearDown(self):
session = self.session
session.execute("DELETE FROM device_infos")
session.execute("DELETE FROM devices")
session.execute("DELETE FROM receivers")
session.execute("DELETE FROM aircraft_beacons")
session.execute("DELETE FROM receiver_beacons")
session.commit()
def test_update_devices(self): def test_update_devices(self):
session = self.session session = self.session

Wyświetl plik

@ -1,23 +1,15 @@
import unittest import unittest
import os
from tests.base import TestCaseDB
from ogn.model import Logbook, Airport, Device, TakeoffLanding from ogn.model import Logbook, Airport, Device, TakeoffLanding
from ogn.collect.logbook import update_logbook from ogn.collect.logbook import update_logbook
class TestDB(unittest.TestCase): class TestLogbook(TestCaseDB):
session = None
engine = None
app = None
def setUp(self): def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test' super(TestLogbook, self).setUp()
from ogn.commands.dbutils import engine, session session = self.session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
# Create basic data and insert # Create basic data and insert
self.dd0815 = Device(address='DD0815') self.dd0815 = Device(address='DD0815')
@ -39,14 +31,6 @@ class TestDB(unittest.TestCase):
self.landing_koenigsdorf_dd0815_later = TakeoffLanding(is_takeoff=False, timestamp='2016-06-02 10:05:00', airport_id=self.koenigsdorf.id, device_id=self.dd0815.id) self.landing_koenigsdorf_dd0815_later = TakeoffLanding(is_takeoff=False, timestamp='2016-06-02 10:05:00', airport_id=self.koenigsdorf.id, device_id=self.dd0815.id)
self.takeoff_ohlstadt_dd4711 = TakeoffLanding(is_takeoff=True, timestamp='2016-06-01 10:00:00', airport_id=self.ohlstadt.id, device_id=self.dd4711.id) self.takeoff_ohlstadt_dd4711 = TakeoffLanding(is_takeoff=True, timestamp='2016-06-01 10:00:00', airport_id=self.ohlstadt.id, device_id=self.dd4711.id)
def tearDown(self):
session = self.session
session.execute("DELETE FROM takeoff_landings")
session.execute("DELETE FROM logbook")
session.execute("DELETE FROM devices")
session.execute("DELETE FROM airports")
session.commit()
def get_logbook_entries(self): def get_logbook_entries(self):
session = self.session session = self.session
return session.query(Logbook).order_by(Logbook.takeoff_airport_id, Logbook.reftime).all() return session.query(Logbook).order_by(Logbook.takeoff_airport_id, Logbook.reftime).all()

Wyświetl plik

@ -1,24 +1,16 @@
import unittest import unittest
import os
from datetime import date from datetime import date
from tests.base import TestCaseDB
from ogn.model import AircraftBeacon, Receiver, ReceiverCoverage, Device from ogn.model import AircraftBeacon, Receiver, ReceiverCoverage, Device
from ogn.collect.ognrange import create_receiver_coverage from ogn.collect.ognrange import create_receiver_coverage
class TestDB(unittest.TestCase): class TestOGNrange(TestCaseDB):
session = None
engine = None
app = None
def setUp(self): def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test' super(TestOGNrange, self).setUp()
from ogn.commands.dbutils import engine, session session = self.session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
# Create basic data and insert # Create basic data and insert
self.dd0815 = Device(address='DD0815') self.dd0815 = Device(address='DD0815')
@ -41,14 +33,6 @@ class TestDB(unittest.TestCase):
session.add(self.ab02) session.add(self.ab02)
session.commit() session.commit()
def tearDown(self):
session = self.session
session.execute("DELETE FROM aircraft_beacons")
session.execute("DELETE FROM receiver_coverages")
session.execute("DELETE FROM devices")
session.execute("DELETE FROM receivers")
session.commit()
def test_update_receiver_coverage(self): def test_update_receiver_coverage(self):
session = self.session session = self.session

Wyświetl plik

@ -1,25 +1,17 @@
import unittest import unittest
import os
from datetime import datetime, date from datetime import datetime, date
from tests.base import TestCaseDB
from ogn.model import AircraftBeacon, ReceiverBeacon, Receiver, Device, DeviceStats from ogn.model import AircraftBeacon, ReceiverBeacon, Receiver, Device, DeviceStats
from ogn.collect.stats import create_device_stats from ogn.collect.stats import create_device_stats
class TestDB(unittest.TestCase): class TestStats(TestCaseDB):
session = None
engine = None
app = None
def setUp(self): def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test' super(TestStats, self).setUp()
from ogn.commands.dbutils import engine, session session = self.session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
# Prepare Beacons # Prepare Beacons
self.ab01 = AircraftBeacon(name='FLRDD4711', receiver_name='Koenigsdf', timestamp='2017-12-10 10:00:01') self.ab01 = AircraftBeacon(name='FLRDD4711', receiver_name='Koenigsdf', timestamp='2017-12-10 10:00:01')
@ -42,16 +34,6 @@ class TestDB(unittest.TestCase):
session.add(self.d01) session.add(self.d01)
session.commit() session.commit()
def tearDown(self):
session = self.session
session.execute("DELETE FROM device_infos")
session.execute("DELETE FROM device_stats")
session.execute("DELETE FROM devices")
session.execute("DELETE FROM receivers")
session.execute("DELETE FROM aircraft_beacons")
session.execute("DELETE FROM receiver_beacons")
session.commit()
def test_create_device_stats(self): def test_create_device_stats(self):
session = self.session session = self.session

Wyświetl plik

@ -1,24 +1,16 @@
import unittest import unittest
import os
from tests.base import TestCaseDB
from ogn.model import TakeoffLanding from ogn.model import TakeoffLanding
from ogn.collect.takeoff_landings import update_takeoff_landings from ogn.collect.takeoff_landings import update_takeoff_landings
class TestDB(unittest.TestCase): class TestTakeoffLanding(TestCaseDB):
session = None
engine = None
app = None
def setUp(self): def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test' super(TestTakeoffLanding, self).setUp()
from ogn.commands.dbutils import engine, session session = self.session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
session.execute("INSERT INTO airports(name, location, altitude, style) VALUES('Benediktbeuren','0101000020E6100000D5E76A2BF6C72640D4063A6DA0DB4740',609,4)") session.execute("INSERT INTO airports(name, location, altitude, style) VALUES('Benediktbeuren','0101000020E6100000D5E76A2BF6C72640D4063A6DA0DB4740',609,4)")
session.execute("INSERT INTO airports(name, location, altitude, style) VALUES('Koenigsdorf','0101000020E610000061E8FED7A6EE26407F20661C10EA4740',600,5)") session.execute("INSERT INTO airports(name, location, altitude, style) VALUES('Koenigsdorf','0101000020E610000061E8FED7A6EE26407F20661C10EA4740',600,5)")
@ -27,14 +19,6 @@ class TestDB(unittest.TestCase):
session.execute("INSERT INTO devices(address) VALUES('DDEFF7')") session.execute("INSERT INTO devices(address) VALUES('DDEFF7')")
def tearDown(self):
session = self.session
session.execute("DELETE FROM takeoff_landings")
session.execute("DELETE FROM aircraft_beacons")
session.execute("DELETE FROM airports")
session.commit()
pass
def count_takeoff_and_landings(self): def count_takeoff_and_landings(self):
session = self.session session = self.session
query = session.query(TakeoffLanding) query = session.query(TakeoffLanding)

Wyświetl plik

@ -1,27 +1,13 @@
import unittest import unittest
import os import os
from tests.base import TestCaseDB
from ogn.model import DeviceInfo from ogn.model import DeviceInfo
from ogn.commands.database import import_file from ogn.commands.database import import_file
class TestDB(unittest.TestCase): class TestDatabase(TestCaseDB):
session = None
engine = None
app = None
def setUp(self):
os.environ['OGN_CONFIG_MODULE'] = 'config.test'
from ogn.commands.dbutils import engine, session
self.session = session
self.engine = engine
from ogn.commands.database import init
init()
def tearDown(self):
pass
def test_import_ddb_file(self): def test_import_ddb_file(self):
session = self.session session = self.session