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'
class TestCaseDB(unittest.TestCase):
class TestBaseDB(unittest.TestCase):
session = None
engine = None
app = None
def setUp(self):
@classmethod
def setUpClass(cls):
from ogn.commands.dbutils import engine, session
self.session = session
self.engine = engine
cls.session = session
cls.engine = engine
from ogn.commands.database import drop
drop(sure='y')
@ -20,8 +20,16 @@ class TestCaseDB(unittest.TestCase):
from ogn.commands.database import 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):
pass
self.session.rollback()
if __name__ == '__main__':

Wyświetl plik

@ -1,12 +1,12 @@
import unittest
from tests.base import TestCaseDB
from tests.base import TestBaseDB
from ogn.model import AircraftBeacon, ReceiverBeacon, Device, Receiver
from ogn.collect.database import add_missing_devices, add_missing_receivers
class TestDatabase(TestCaseDB):
class TestDatabase(TestBaseDB):
def test_update_devices(self):
session = self.session

Wyświetl plik

@ -1,14 +1,14 @@
import unittest
from tests.base import TestCaseDB
from tests.base import TestBaseDB
from ogn.model import Logbook, Airport, Device, TakeoffLanding
from ogn.collect.logbook import update_logbook
class TestLogbook(TestCaseDB):
class TestLogbook(TestBaseDB):
def setUp(self):
super(TestLogbook, self).setUp()
super().setUp()
session = self.session
# Create basic data and insert

Wyświetl plik

@ -1,15 +1,15 @@
import unittest
from datetime import date
from tests.base import TestCaseDB
from tests.base import TestBaseDB
from ogn.model import AircraftBeacon, Receiver, ReceiverCoverage, Device
from ogn.collect.ognrange import create_receiver_coverage
class TestOGNrange(TestCaseDB):
class TestOGNrange(TestBaseDB):
def setUp(self):
super(TestOGNrange, self).setUp()
super().setUp()
session = self.session
# Create basic data and insert

Wyświetl plik

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

Wyświetl plik

@ -1,15 +1,15 @@
import unittest
from tests.base import TestCaseDB
from tests.base import TestBaseDB
from ogn.model import TakeoffLanding
from ogn.collect.takeoff_landings import update_takeoff_landings
class TestTakeoffLanding(TestCaseDB):
class TestTakeoffLanding(TestBaseDB):
def setUp(self):
super(TestTakeoffLanding, self).setUp()
super().setUp()
session = self.session
session.execute("INSERT INTO airports(name, location, altitude, style) VALUES('Benediktbeuren','0101000020E6100000D5E76A2BF6C72640D4063A6DA0DB4740',609,4)")

Wyświetl plik

@ -1,13 +1,13 @@
import unittest
import os
from tests.base import TestCaseDB
from tests.base import TestBaseDB
from ogn.model import DeviceInfo
from ogn.commands.database import import_file
class TestDatabase(TestCaseDB):
class TestDatabase(TestBaseDB):
def test_import_ddb_file(self):
session = self.session