diff options
author | nico <nico@magicbroccoli.de> | 2019-12-12 23:15:45 +0100 |
---|---|---|
committer | nico <nico@magicbroccoli.de> | 2019-12-12 23:15:45 +0100 |
commit | cb84351270041449ee8a8984758e7e3ef86ea590 (patch) | |
tree | 00b2b16ae1e04be98f5b20540e7d0fc793f8acdc | |
parent | 97f48129518ed507bd29280703fe79e74bf90536 (diff) |
test code and small init corrections
+ added pytest test cases
* fixed TSGroupAssigner module init file
-rw-r--r-- | TSGroupAssigner/__init__.py | 3 | ||||
-rw-r--r-- | setup.py | 1 | ||||
-rw-r--r-- | tests/__init__.py | 0 | ||||
-rw-r--r-- | tests/test_group_assign.py | 56 |
4 files changed, 58 insertions, 2 deletions
diff --git a/TSGroupAssigner/__init__.py b/TSGroupAssigner/__init__.py index a41cd05..04fc467 100644 --- a/TSGroupAssigner/__init__.py +++ b/TSGroupAssigner/__init__.py @@ -1,3 +1,4 @@ # -*- coding: utf-8 -*- -from TSGroupAssigner.group_assign import GroupAssigner +from .group_assign import GroupAssigner +from .group_assign import DateException @@ -4,7 +4,6 @@ from setuptools import setup, find_packages with open("README.md", "r") as fh: long_description = fh.read() - setup( name='TSGroupAssigner', version='0.0.1', diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/__init__.py diff --git a/tests/test_group_assign.py b/tests/test_group_assign.py new file mode 100644 index 0000000..1f86574 --- /dev/null +++ b/tests/test_group_assign.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +import datetime as dt + +import pytest + +from TSGroupAssigner import GroupAssigner, DateException + +# sample input +creds = { + 'host': 'localhost', + 'port': 10011, + 'user': 'serveradmin', + 'password': '5up3r_53cr37', + 'sid': 1, + 'gid': 24 +} + + +class TestGroupAssigner: + def test_missing_input(self): + """ + this should fail due to missing arguments + """ + with pytest.raises(TypeError): + GroupAssigner().start() + + def test_sleepstart_startdate(self): + # startdate is too far in the future sleepstart should produce a DateException + + # start date 3 days in the future + startdate = dt.date.today() + dt.timedelta(days=3) + duration = dt.timedelta() + + with pytest.raises(DateException): + GroupAssigner(date=startdate, delta=duration,**creds).start() + + def test_datecheck_enddate(self): + # this should produce a exit code 0 SystemExit as the end date is in the past + + # start date 2 days in the past + startdate = dt.date.today() + dt.timedelta(days=-2) + duration = dt.timedelta() + + with pytest.raises(SystemExit): + GroupAssigner(date=startdate, delta=duration,**creds).start() + + def test_connect_noconnection(self): + # connect should fail with ConnectionRefusedError + + # start date is today + startdate = dt.date.today() + duration = dt.timedelta() + + with pytest.raises(ConnectionRefusedError): + GroupAssigner(date=startdate, delta=duration,**creds).start() |