Extra test voor lmwsip.run.run()
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Marcel Nijenhof
2020-09-08 14:36:07 +02:00
parent 6885b03d40
commit 76407e2a86

View File

@@ -1,37 +1,52 @@
#!/usr/bin/python #!/usr/bin/python
import sys
import io
import unittest import unittest
import lmwsip import lmwsip
import stubSipServer import stubSipServer
from lmwsip.run import run
from datetime import datetime, timedelta from datetime import datetime, timedelta
from dateutil import tz from dateutil import tz
class myTestArgs():
pass
class lmwsipTest(unittest.TestCase): class lmwsipTest(unittest.TestCase):
def setUp(self): def setUp(self):
self.sipserver = stubSipServer.sipServer() self.sipserver = stubSipServer.sipServer()
self.sip = None
self.sipserver.run() self.sipserver.run()
self.sip = lmwsip.LmwSip("USER", "PASS", "localhost",
self.sipserver.port, ssl=False) def login(self):
self.sip = lmwsip.LmwSip("USER", "PASS", "localhost",
self.sipserver.port, ssl=False)
def tearDown(self): def tearDown(self):
if self.sip:
self.sip.closesocket()
self.sipserver.kill() self.sipserver.kill()
self.sip.closesocket()
def test_sipobj(self): def test_sipobj(self):
self.login()
self.assertEqual(type(self.sip), lmwsip.LmwSip) self.assertEqual(type(self.sip), lmwsip.LmwSip)
def test_ti(self): def test_ti(self):
self.login()
self.assertEqual(type(self.sip.ti()), str) self.assertEqual(type(self.sip.ti()), str)
def test_cmd(self): def test_cmd(self):
self.login()
self.assertEqual(type(self.sip.cmd("WN", "DUMMY", "D10", "+00:59", "2020-01-01", "00:00")), str) self.assertEqual(type(self.sip.cmd("WN", "DUMMY", "D10", "+00:59", "2020-01-01", "00:00")), str)
def test_logout(self): def test_logout(self):
self.login()
self.assertEqual(self.sip.logout(), None) self.assertEqual(self.sip.logout(), None)
def test_lmwTimeSerie(self): def test_lmwTimeSerie(self):
self.login()
timezone = tz.gettz('GMT+1') timezone = tz.gettz('GMT+1')
res = self.sip.timeSerie("WN", "DUMMY", "D10", res = self.sip.timeSerie("WN", "DUMMY", "D10",
datetime.now(timezone)-timedelta(minutes=60), datetime.now(timezone)-timedelta(minutes=60),
@@ -41,11 +56,30 @@ class lmwsipTest(unittest.TestCase):
self.assertEqual(res.ts[1][1][0], '1') self.assertEqual(res.ts[1][1][0], '1')
def test_roundtime(self): def test_roundtime(self):
self.login()
timezone = tz.gettz('GMT+1') timezone = tz.gettz('GMT+1')
t1 = datetime(2020, 1, 1, 0, 10, 0, 0, timezone) t1 = datetime(2020, 1, 1, 0, 10, 0, 0, timezone)
t2 = datetime(2020, 1, 1, 0, 0, 0, 1, timezone) t2 = datetime(2020, 1, 1, 0, 0, 0, 1, timezone)
self.assertEqual(self.sip._roundtime_(t1, "D10"), t1) self.assertEqual(self.sip._roundtime_(t1, "D10"), t1)
self.assertEqual(self.sip._roundtime_(t2, "D10"), t1) self.assertEqual(self.sip._roundtime_(t2, "D10"), t1)
def test_run(self):
capturedOutput = io.StringIO()
sys.stdout = capturedOutput
args = myTestArgs()
args.debug = "WARN"
args.host = "localhost"
args.port = self.sipserver.port
args.unencrypted = True
args.cleartelnet = False
args.time = "+00:59"
args.date = "2020-01-01"
args.files = [open("test/test.sip")]
run(args)
args.files[0].close()
self.assertEqual(capturedOutput.getvalue().find("!")>= 0, True)
self.assertEqual(capturedOutput.getvalue().find("?"), -1)
sys.stdout = sys.__stdout__
if __name__ == '__main__': if __name__ == '__main__':
unittest.main() unittest.main()