From b692b11f62efffd8554fce95c7a0f2a2cdb9014b Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Sun, 30 May 2021 23:05:16 -0700 Subject: [PATCH] add Group SQLAlchemy ORM model Signed-off-by: Kevin Morris --- aurweb/models/group.py | 11 +++++++++++ test/test_group.py | 21 +++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 aurweb/models/group.py create mode 100644 test/test_group.py diff --git a/aurweb/models/group.py b/aurweb/models/group.py new file mode 100644 index 00000000..5d4f3834 --- /dev/null +++ b/aurweb/models/group.py @@ -0,0 +1,11 @@ +from sqlalchemy.orm import mapper + +from aurweb.schema import Groups + + +class Group: + def __init__(self, Name: str = None): + self.Name = Name + + +mapper(Group, Groups) diff --git a/test/test_group.py b/test/test_group.py new file mode 100644 index 00000000..bbb774b9 --- /dev/null +++ b/test/test_group.py @@ -0,0 +1,21 @@ +import pytest + +from sqlalchemy.exc import IntegrityError + +from aurweb.db import create, delete, get_engine +from aurweb.models.group import Group + + +def test_group_creation(): + get_engine() + group = create(Group, Name="Test Group") + assert bool(group.ID) + assert group.Name == "Test Group" + delete(Group, Group.ID == group.ID) + + +def test_group_null_name_raises_exception(): + from aurweb.db import session + with pytest.raises(IntegrityError): + create(Group) + session.rollback()