Skip to content

Commit 2871558

Browse files
committed
wip: migrate hub
1 parent b762f74 commit 2871558

7 files changed

Lines changed: 181 additions & 186 deletions

File tree

tests/modules/test_api.py

Lines changed: 91 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,102 @@
1-
import os
2-
import pty
3-
import json
4-
import logging
1+
''' Tests for rec_api.py '''
2+
3+
import sys
54
import unittest
65

76
from io import StringIO
8-
from unittest.mock import patch, mock_open, Mock
7+
from unittest.mock import patch
8+
9+
from modules import rec_api
910

10-
import sys
1111
sys.path.insert(0, "0_1_0/")
1212

13-
from modules import rec_lan, rec_api, rec_xbee, rec_log
1413

1514
class TestAPI(unittest.TestCase):
15+
'''Collection of tests for the api module'''
16+
17+
18+
def test_pull_data_dump(self):
19+
system_json = StringIO("""{
20+
"serial": "536780dfe639468e8e23fc568006950d",
21+
"timezone": "America/New_York",
22+
"CurrentVersion": "0_0_0",
23+
"HUBid": 40,
24+
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
25+
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
26+
}""")
27+
28+
testdata2 = StringIO("""{
29+
"serial": "536780dfe639468e8e23fc568006950d",
30+
"timezone": "America/New_York",
31+
"CurrentVersion": "0_0_0",
32+
"HUBid": 40,
33+
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
34+
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
35+
}""")
36+
37+
testdata3 = StringIO("""{
38+
"serial": "536780dfe639468e8e23fc568006950d",
39+
"timezone": "America/New_York",
40+
"CurrentVersion": "0_0_0",
41+
"HUBid": 40,
42+
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
43+
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
44+
}""")
45+
46+
testdata4 = StringIO("""{
47+
"serial": "536780dfe639468e8e23fc568006950d",
48+
"timezone": "America/New_York",
49+
"CurrentVersion": "0_0_0",
50+
"HUBid": 40,
51+
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
52+
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
53+
}""")
54+
55+
testdata5 = StringIO("""{
56+
"serial": "536780dfe639468e8e23fc568006950d",
57+
"timezone": "America/New_York",
58+
"CurrentVersion": "0_0_0",
59+
"HUBid": 40,
60+
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
61+
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
62+
}""")
63+
64+
testreturn = [{
65+
"cardNumber": "3132323637373936",
66+
"access_group": 7,
67+
"phone_number": "2403426671",
68+
"address": "123 America Ln",
69+
"city": "USA City",
70+
"state": "PA",
71+
"zip_code": " 1234567",
72+
"username": "GenericMember2",
73+
"first_name": "Gener",
74+
"last_name": "Mem",
75+
"email": "member@email.com",
76+
"restricted_nodes": []
77+
}, {
78+
"cardNumber": "33",
79+
"access_group": 5,
80+
"phone_number": "2403426671",
81+
"address": "",
82+
"city": "",
83+
"state": "",
84+
"zip_code": "",
85+
"username": "GenericMember3",
86+
"first_name": "Generic",
87+
"last_name": "Member3",
88+
"email": "generic@email.com",
89+
"restricted_nodes": ["123", "shdfhethetbe"]
90+
}]
91+
92+
with patch('modules.rec_api.open') as mock_open:
93+
mock_open.side_effect = [system_json, testdata2, testdata3, testdata4, testdata5]
1694

17-
def test_pull_data_dump(self):
18-
systemJSON = StringIO("""{
19-
"serial": "536780dfe639468e8e23fc568006950d",
20-
"timezone": "America/New_York",
21-
"CurrentVersion": "0_0_0",
22-
"HUBid": 40,
23-
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
24-
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
25-
}""")
26-
27-
testdata2 = StringIO("""{
28-
"serial": "536780dfe639468e8e23fc568006950d",
29-
"timezone": "America/New_York",
30-
"CurrentVersion": "0_0_0",
31-
"HUBid": 40,
32-
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
33-
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
34-
}""")
35-
36-
testdata3 = StringIO("""{
37-
"serial": "536780dfe639468e8e23fc568006950d",
38-
"timezone": "America/New_York",
39-
"CurrentVersion": "0_0_0",
40-
"HUBid": 40,
41-
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
42-
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
43-
}""")
44-
45-
testdata4 = StringIO("""{
46-
"serial": "536780dfe639468e8e23fc568006950d",
47-
"timezone": "America/New_York",
48-
"CurrentVersion": "0_0_0",
49-
"HUBid": 40,
50-
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
51-
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
52-
}""")
53-
54-
testdata5 = StringIO("""{
55-
"serial": "536780dfe639468e8e23fc568006950d",
56-
"timezone": "America/New_York",
57-
"CurrentVersion": "0_0_0",
58-
"HUBid": 40,
59-
"Token": "5a12ff36eed2f0647a48af62e635eb8cfd4c5979",
60-
"facility": "3b9fdc97-9649-4c80-8b48-10df647bd032"
61-
}""")
62-
63-
testreturn = [{
64-
"cardNumber": "3132323637373936",
65-
"access_group": 7,
66-
"phone_number": "2403426671",
67-
"address": "123 America Ln",
68-
"city": "USA City",
69-
"state": "PA",
70-
"zip_code": " 1234567",
71-
"username": "GenericMember2",
72-
"first_name": "Gener",
73-
"last_name": "Mem",
74-
"email": "member@email.com",
75-
"restricted_nodes": []
76-
}, {
77-
"cardNumber": "33",
78-
"access_group": 5,
79-
"phone_number": "2403426671",
80-
"address": "",
81-
"city": "",
82-
"state": "",
83-
"zip_code": "",
84-
"username": "GenericMember3",
85-
"first_name": "Generic",
86-
"last_name": "Member3",
87-
"email": "generic@email.com",
88-
"restricted_nodes": ["123", "shdfhethetbe"]
89-
}]
90-
91-
with patch('modules.rec_api.open') as mock_open:
92-
mock_open.side_effect = [systemJSON, testdata2, testdata3, testdata4, testdata5]
93-
94-
with patch("modules.rec_api.requests.get") as mocked_requests:
95-
mocked_requests.return_value.json.return_value = testreturn
96-
rec_api.pull_data_dump()
97-
mock_open.assert_called()
98-
mocked_requests.assert_called()
95+
with patch("modules.rec_api.requests.get") as mocked_requests:
96+
mocked_requests.return_value.json.return_value = testreturn
97+
rec_api.pull_data_dump()
98+
mock_open.assert_called()
99+
mocked_requests.assert_called()
99100

100101
if __name__ == '__main__':
101-
unittest.main()
102+
unittest.main()

tests/modules/test_lan.py

Lines changed: 58 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,87 @@
1-
import os
2-
import pty
3-
import json
4-
import logging
1+
''' Unit testing for rec_lan.py '''
2+
3+
import sys
54
import unittest
65

7-
from io import StringIO
8-
from unittest.mock import patch, mock_open, Mock
6+
from unittest.mock import patch
7+
8+
from modules import rec_lan
99

10-
import sys
1110
sys.path.insert(0, "0_1_0/")
1211

13-
from modules import rec_lan, rec_api, rec_xbee, rec_log
1412

1513
class TestLan(unittest.TestCase):
14+
''' Tests for the lan module '''
1615

17-
def test_monitor_network(self):
18-
with patch('modules.rec_lan.test_network') as mocked_test_network:
19-
mocked_test_network.return_value = 0
16+
def test_monitor_network(self):
17+
with patch('modules.rec_lan.test_network') as mocked_test_network:
18+
mocked_test_network.return_value = 0
2019

21-
with patch('modules.rec_lan.threading') as mocked_threading:
22-
rec_lan.monitor_network()
20+
with patch('modules.rec_lan.threading') as mocked_threading:
21+
rec_lan.monitor_network()
2322

24-
mocked_threading.Timer.assert_called()
23+
mocked_threading.Timer.assert_called()
2524

26-
def test_test_network(self):
27-
with patch('modules.rec_lan.networked') as mocked_networked:
28-
mocked_networked.return_value = False
29-
self.assertEqual(rec_lan.test_network(), 0)
25+
def test_test_network(self):
26+
with patch('modules.rec_lan.networked') as mocked_networked:
27+
mocked_networked.return_value = False
28+
self.assertEqual(rec_lan.test_network(), 0)
3029

31-
mocked_networked.return_value = True
32-
self.assertNotEqual(rec_lan.test_network(), 0)
30+
mocked_networked.return_value = True
31+
self.assertNotEqual(rec_lan.test_network(), 0)
3332

34-
with patch('modules.rec_lan.internet_on') as mocked_internet_on:
35-
mocked_internet_on.return_value = False
36-
self.assertEqual(rec_lan.test_network(), 1)
33+
with patch('modules.rec_lan.internet_on') as mocked_internet_on:
34+
mocked_internet_on.return_value = False
35+
self.assertEqual(rec_lan.test_network(), 1)
3736

38-
mocked_internet_on.return_value = True
39-
self.assertNotEqual(rec_lan.test_network(), 1)
37+
mocked_internet_on.return_value = True
38+
self.assertNotEqual(rec_lan.test_network(), 1)
4039

41-
with patch('modules.rec_lan.recursion_connection') as mocked_Recursion_Connection:
42-
mocked_Recursion_Connection.return_value = False
43-
self.assertEqual(rec_lan.test_network(), 2)
40+
with patch('modules.rec_lan.recursion_connection') as mocked_Recursion_Connection:
41+
mocked_Recursion_Connection.return_value = False
42+
self.assertEqual(rec_lan.test_network(), 2)
4443

45-
mocked_Recursion_Connection.return_value = True
46-
self.assertEqual(rec_lan.test_network(), 3)
44+
mocked_Recursion_Connection.return_value = True
45+
self.assertEqual(rec_lan.test_network(), 3)
4746

48-
self.assertTrue(mocked_networked.called)
49-
self.assertTrue(mocked_internet_on.called)
50-
self.assertTrue(mocked_Recursion_Connection.called)
47+
self.assertTrue(mocked_networked.called)
48+
self.assertTrue(mocked_internet_on.called)
49+
self.assertTrue(mocked_Recursion_Connection.called)
5150

52-
def test_networked(self):
53-
with patch('modules.rec_lan.get_ip') as mocked_get_ip:
54-
mocked_get_ip.return_value = ("127.0.0.1", "127.0.0.1")
55-
self.assertFalse(rec_lan.networked())
51+
def test_networked(self):
52+
with patch('modules.rec_lan.get_ip') as mocked_get_ip:
53+
mocked_get_ip.return_value = ("127.0.0.1", "127.0.0.1")
54+
self.assertFalse(rec_lan.networked())
5655

57-
mocked_get_ip.return_value = ("192.168.1.1", "192.168.1.1")
58-
self.assertTrue(rec_lan.networked())
56+
mocked_get_ip.return_value = ("192.168.1.1", "192.168.1.1")
57+
self.assertTrue(rec_lan.networked())
5958

60-
def test_internet_on(self):
61-
self.assertTrue(rec_lan.internet_on())
59+
def test_internet_on(self):
60+
self.assertTrue(rec_lan.internet_on())
6261

63-
with patch('modules.rec_lan.requests.get') as mocked_requests:
64-
mocked_requests.return_value.status_code = None
65-
self.assertFalse(rec_lan.internet_on())
62+
with patch('modules.rec_lan.requests.get') as mocked_requests:
63+
mocked_requests.return_value.status_code = None
64+
self.assertFalse(rec_lan.internet_on())
6665

67-
def test_Recursion_Connection(self):
68-
self.assertTrue(rec_lan.recursion_connection())
66+
def test_Recursion_Connection(self):
67+
self.assertTrue(rec_lan.recursion_connection())
6968

70-
with patch('modules.rec_lan.requests.get') as mocked_requests:
71-
mocked_requests.return_value.status_code = None
72-
self.assertFalse(rec_lan.internet_on())
69+
with patch('modules.rec_lan.requests.get') as mocked_requests:
70+
mocked_requests.return_value.status_code = None
71+
self.assertFalse(rec_lan.internet_on())
7372

74-
def test_get_ip(self):
75-
with patch('modules.rec_lan.internet_on') as mocked_internet_on:
76-
mocked_internet_on.return_value = True
73+
def test_get_ip(self):
74+
with patch('modules.rec_lan.internet_on') as mocked_internet_on:
75+
mocked_internet_on.return_value = True
7776

78-
with patch('modules.rec_lan.requests.get') as mocked_requests:
79-
mocked_requests.return_value.text = "0.0.0.0"
80-
PubIP, LocalIP = rec_lan.get_ip()
77+
with patch('modules.rec_lan.requests.get') as mocked_requests:
78+
mocked_requests.return_value.text = "0.0.0.0"
79+
PubIP, LocalIP = rec_lan.get_ip()
8180

82-
self.assertEqual((rec_lan.get_ip())[0], '0.0.0.0')
81+
self.assertEqual((rec_lan.get_ip())[0], '0.0.0.0')
8382

84-
mocked_internet_on.return_value = False
85-
self.assertNotEqual((rec_lan.get_ip())[0], '0.0.0.0')
83+
mocked_internet_on.return_value = False
84+
self.assertNotEqual((rec_lan.get_ip())[0], '0.0.0.0')
8685

8786
if __name__ == '__main__':
88-
unittest.main()
87+
unittest.main()

tests/modules/test_log.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,15 @@
1-
import os
2-
import pty
3-
import json
1+
''' Tests for rec_log.py '''
2+
3+
import sys
44
import logging
55
import unittest
66

7-
from io import StringIO
8-
from unittest.mock import patch, mock_open, Mock
7+
#from modules import rec_lan, rec_api, rec_xbee, rec_log
98

10-
import sys
119
sys.path.insert(0, "0_1_0/")
1210

13-
from modules import rec_lan, rec_api, rec_xbee, rec_log
14-
15-
1611
class Testlog(unittest.TestCase):
12+
''' Tests for the log module '''
1713

1814
def __init__(self, *args, **kwargs):
1915
self.reset()

0 commit comments

Comments
 (0)