Handle session rollbacks during tests session

pull/68/head
Konstantin Gründger 2019-01-26 20:14:18 +01:00
rodzic b406594ea7
commit 23cc34da0a
7 zmienionych plików z 30 dodań i 22 usunięć

Wyświetl plik

@ -4,15 +4,15 @@ import os
os.environ['OGN_CONFIG_MODULE'] = 'config.test' os.environ['OGN_CONFIG_MODULE'] = 'config.test'
class TestCaseDB(unittest.TestCase): class TestBaseDB(unittest.TestCase):
session = None session = None
engine = None engine = None
app = None
def setUp(self): @classmethod
def setUpClass(cls):
from ogn.commands.dbutils import engine, session from ogn.commands.dbutils import engine, session
self.session = session cls.session = session
self.engine = engine cls.engine = engine
from ogn.commands.database import drop from ogn.commands.database import drop
drop(sure='y') drop(sure='y')
@ -20,8 +20,16 @@ class TestCaseDB(unittest.TestCase):
from ogn.commands.database import init from ogn.commands.database import init
init() init()
def setUp(self):
self.session.execute("""
DELETE FROM aircraft_beacons;
DELETE FROM receiver_beacons;
DELETE FROM takeoff_landings;
DELETE FROM logbook;
""")
def tearDown(self): def tearDown(self):
pass self.session.rollback()
if __name__ == '__main__': if __name__ == '__main__':

Wyświetl plik

@ -1,12 +1,12 @@
import unittest import unittest
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestDatabase(TestCaseDB): class TestDatabase(TestBaseDB):
def test_update_devices(self): def test_update_devices(self):
session = self.session session = self.session

Wyświetl plik

@ -1,14 +1,14 @@
import unittest import unittest
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestLogbook(TestCaseDB): class TestLogbook(TestBaseDB):
def setUp(self): def setUp(self):
super(TestLogbook, self).setUp() super().setUp()
session = self.session session = self.session
# Create basic data and insert # Create basic data and insert

Wyświetl plik

@ -1,15 +1,15 @@
import unittest import unittest
from datetime import date from datetime import date
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestOGNrange(TestCaseDB): class TestOGNrange(TestBaseDB):
def setUp(self): def setUp(self):
super(TestOGNrange, self).setUp() super().setUp()
session = self.session session = self.session
# Create basic data and insert # Create basic data and insert

Wyświetl plik

@ -1,16 +1,16 @@
import unittest import unittest
from datetime import datetime, date from datetime import datetime, date
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestStats(TestCaseDB): class TestStats(TestBaseDB):
def setUp(self): def setUp(self):
super(TestStats, self).setUp() super().setUp()
session = self.session session = self.session
# Prepare Beacons # Prepare Beacons

Wyświetl plik

@ -1,15 +1,15 @@
import unittest import unittest
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestTakeoffLanding(TestCaseDB): class TestTakeoffLanding(TestBaseDB):
def setUp(self): def setUp(self):
super(TestTakeoffLanding, self).setUp() super().setUp()
session = self.session session = self.session
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)")

Wyświetl plik

@ -1,13 +1,13 @@
import unittest import unittest
import os import os
from tests.base import TestCaseDB from tests.base import TestBaseDB
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 TestDatabase(TestCaseDB): class TestDatabase(TestBaseDB):
def test_import_ddb_file(self): def test_import_ddb_file(self):
session = self.session session = self.session