summaryrefslogtreecommitdiff
path: root/app/tests/test_tables.py
diff options
context:
space:
mode:
Diffstat (limited to 'app/tests/test_tables.py')
-rw-r--r--app/tests/test_tables.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/app/tests/test_tables.py b/app/tests/test_tables.py
new file mode 100644
index 0000000..bb6e617
--- /dev/null
+++ b/app/tests/test_tables.py
@@ -0,0 +1,32 @@
+from tables import User, Workout
+
+
+def test_new_user():
+ """
+ GIVEN a User model
+ WHEN a new User is created
+ THEN check that the email, hashed_password, and role fields are defined correctly
+ """
+ user = User("gymdude99", "bench400soon!", "gymdude99@gmail.com")
+ assert user.email == "gymdude99@gmail.com"
+ assert user.password != "bench400soon!"
+ # assert user.role == "user"
+
+
+def test_new_workout():
+ """
+ GIVEN a Workout model
+ WHEN a new Workout is created
+ THEN check that the email, hashed_password, and role fields are defined correctly
+ """
+
+ # TODO other way to generate new user?
+ user = User("gymdude99", "bench400soon!", "gymdude99@gmail.com")
+ workout = Workout(
+ user, "Leg Day", [{"name": "Leg Press", "sets": 4, "units": 8, "type": "reps"}]
+ )
+
+ assert workout.user_id == user.id
+ assert workout.name == "Leg Day"
+ # assert len(workout.exercises) == 1 TODO: how to use sqlalchemy with tests
+ assert workout.exercises[0].name == "Leg Press"