Skip to content

Commit 29f5ae6

Browse files
committed
messing with testing and databases
1 parent 4f7936e commit 29f5ae6

File tree

18 files changed

+89
-24
lines changed

18 files changed

+89
-24
lines changed

api/config/config.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,3 @@ class Config:
88

99
def __init__(self):
1010
self.API_MODE = os.getenv("API_MODE", "Can not find mode")
11-
self.DB = os.getenv("DB", "Relational")

api/database/IQueue.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,7 @@ class IQueue(ABC):
66
@abstractmethod
77
def enqueue_student(self, student):
88
raise NotImplementedError()
9+
10+
@abstractmethod
11+
def dequeue_student(self):
12+
raise NotImplementedError()

api/database/db.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import os
2+
3+
from api.database.relational_db.RelationalDB import RelationalDB
4+
from api.database.testing_db.TestingDB import TestingDB
5+
from api.database.mock_db.MockDB import MockDB
6+
7+
8+
def create_db():
9+
db_type = os.getenv("DB")
10+
match db_type:
11+
case "relational":
12+
return RelationalDB()
13+
case "testing":
14+
return TestingDB()
15+
case "mock":
16+
return MockDB()
17+
case None:
18+
raise EnvironmentError("environment variable \"DB\" not set")
19+
case _:
20+
raise ModuleNotFoundError("Could not find database named " + db_type)
21+
22+
db = create_db()

api/database/db_relational/RelationalDB.py

Lines changed: 0 additions & 7 deletions
This file was deleted.

api/database/mock_db/MockDB.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from api.database.mock_db.MockDBQueue import MockDBQueue
2+
from api.database.mock_db.MockDBRatings import MockDBRatings
3+
4+
5+
class MockDB(MockDBQueue, MockDBRatings):
6+
7+
pass
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from api.database.IQueue import IQueue
22

33

4-
class TestingDBQueue(IQueue):
4+
class MockDBQueue(IQueue):
55

66
def enqueue_student(self, student):
77
pass
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from api.database.IRatings import IRatings
2+
3+
4+
class MockDBRatings(IRatings):
5+
6+
def rate_student(self, student, rating, feedback):
7+
pass
8+
# do database stuff
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from api.database.relational_db.RelationalDBQueue import RelationalDBQueue
2+
from api.database.relational_db.RelationalDBRatings import RelationalDBRatings
3+
4+
5+
class RelationalDB(RelationalDBQueue, RelationalDBRatings):
6+
7+
pass

api/database/db_relational/RelationalDBQueue.py renamed to api/database/relational_db/RelationalDBQueue.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
class RelationalDBQueue(IQueue):
55

66
def enqueue_student(self, student):
7-
pass
7+
raise NotImplementedError()
88
# do database stuff
File renamed without changes.

0 commit comments

Comments
 (0)