Test: Test i2c_generalcall
This commit is contained in:
@@ -18,6 +18,8 @@ answers = {
|
||||
class MockSMBus:
|
||||
def __init__(s):
|
||||
s.status=None
|
||||
s.last=None
|
||||
s.addr=None
|
||||
|
||||
def i2c_rdwr(s,*msgs):
|
||||
for m in msgs:
|
||||
@@ -25,6 +27,12 @@ class MockSMBus:
|
||||
s._process_read(m)
|
||||
else:
|
||||
s._process_write(m)
|
||||
|
||||
def write_byte(s,addr,data):
|
||||
s.status=None
|
||||
s.addr=addr
|
||||
s.last=data
|
||||
|
||||
def _process_read(s,msg):
|
||||
if s.status == None:
|
||||
raise AssertionError("tired to read before write")
|
||||
@@ -32,4 +40,5 @@ class MockSMBus:
|
||||
msg.buf[i]=chr(s.status[i])
|
||||
def _process_write(s,msg):
|
||||
s.status = answers[tuple(msg)]
|
||||
s.last=msg
|
||||
|
||||
|
@@ -11,10 +11,16 @@ class TestConstructor(unittest.TestCase):
|
||||
b=sgp30.sgp30.Sgp30(self.bus)
|
||||
b.init_sgp()
|
||||
|
||||
class SimpleTest(unittest.TestCase):
|
||||
def test_general_call(self):
|
||||
b=sgp30.sgp30.Sgp30(self.bus)
|
||||
b.i2c_geral_call()
|
||||
self.assertEqual(self.bus.addr,0)
|
||||
self.assertEqual(self.bus.last,0x06)
|
||||
|
||||
class SimpleReadTests(unittest.TestCase):
|
||||
"""Basic test cases."""
|
||||
def setUp(self):
|
||||
self.bus = MockSMBus()
|
||||
self.sgp=sgp30.sgp30.Sgp30(self.bus)
|
||||
def test_read(self):
|
||||
self.sgp.read_measurements()
|
||||
self.assertEqual(self.sgp.read_measurements().data,[400,6])
|
||||
|
Reference in New Issue
Block a user