def test_rw_exception(self): """Test reaction when getting a BluetoothBackendException.""" poller = MiThermometerPoller(self.TEST_MAC, RWExceptionBackend, retries=0) with self.assertRaises(BluetoothBackendException): poller.firmware_version() with self.assertRaises(BluetoothBackendException): poller.name() with self.assertRaises(BluetoothBackendException): poller.parameter_value(MI_HUMIDITY) with self.assertRaises(BluetoothBackendException): poller.parameter_value(MI_HUMIDITY)
def poll(args): """Poll data from the sensor.""" backend = _get_backend(args) poller = MiThermometerPoller(args.mac, backend) print("Getting data from Mi Flora") print("FW: {}".format(poller.firmware_version())) print("Name: {}".format(poller.name())) print("Temperature: {}".format(poller.parameter_value(MI_TEMPERATURE))) print("Humidity: {}".format(poller.parameter_value(MI_HUMIDITY))) print("Battery: {}".format(poller.parameter_value(MI_BATTERY)))
def test_everything(self): """Test reading data from a sensor This check if we can successfully get some data from a real sensor. This test requires bluetooth hardware and a real sensor close by. """ assert hasattr(self, "mac") poller = MiThermometerPoller(self.mac, self.backend_type) self.assertIsNotNone(poller.firmware_version()) self.assertIsNotNone(poller.name()) self.assertIsNotNone(poller.parameter_value(MI_TEMPERATURE)) self.assertIsNotNone(poller.parameter_value(MI_HUMIDITY)) self.assertIsNotNone(poller.parameter_value(MI_BATTERY))
def test_read_version(self): """Test reading the version number.""" poller = MiThermometerPoller(self.TEST_MAC, MockBackend) backend = self._get_backend(poller) backend.set_version(1, 2, 3) self.assertEqual('1.2.3', poller.firmware_version())