-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathtest_rtc.py
More file actions
56 lines (43 loc) · 1.58 KB
/
Copy pathtest_rtc.py
File metadata and controls
56 lines (43 loc) · 1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
"""Unittest of Machine RTC"""
from datetime import datetime
import unittest
import time
# custom imports
from machine import RTC
class TestRTC(unittest.TestCase):
def setUp(self) -> None:
self.rtc = RTC()
def tearDown(self) -> None:
pass
def test__init(self) -> None:
"""Test initial values"""
time_tuple = self.rtc._time_tuple
self.assertIsInstance(time_tuple, tuple)
self.assertTrue(all(isinstance(ele, int) for ele in time_tuple))
self.assertEqual(time_tuple, (2000, 1, 1, 0, 0, 0, 0, 0))
@unittest.skip("Failing on CI")
def test_init(self) -> None:
"""Test initialization of RTC"""
timezone = 0
tm = time.localtime()
# now = datetime.fromtimestamp(time.mktime(tm))
now = datetime.fromtimestamp(time.time())
self.rtc.init(
(tm[0], tm[1], tm[2], tm[3], tm[4], tm[5], 0, timezone)
)
time_tuple = self.rtc._time_tuple
self.assertEqual(time_tuple,
(now.year, now.month, now.day,
now.weekday(),
now.hour, now.minute, now.second, 0))
@unittest.skip("Failing on CI")
def test_datetime(self) -> None:
"""Test getting current datetime"""
datetime = self.rtc.datetime()
self.assertIsInstance(datetime, tuple)
self.assertTrue(all(isinstance(ele, int) for ele in datetime))
self.assertEqual(datetime, (2000, 1, 1, 0, 0, 0, 0, 0))
if __name__ == '__main__':
unittest.main()