diff --git a/tests/mock_smbus2.py b/tests/mock_smbus2.py index 6df03e3..dcfac70 100644 --- a/tests/mock_smbus2.py +++ b/tests/mock_smbus2.py @@ -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 diff --git a/tests/test_sgp.py b/tests/test_sgp.py index 66f382f..d8623c4 100644 --- a/tests/test_sgp.py +++ b/tests/test_sgp.py @@ -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])