def run(self, *args: Any, **kwargs: Any) -> None: """Runs driver.""" # Run parent class super().run(*args, **kwargs) # Initialize driver self.driver = SHT25Driver( name=self.args.name, i2c_lock=threading.RLock(), bus=self.bus, address=self.address, mux=self.mux, channel=self.channel, ) # Check if reading temperature if self.args.temperature: temperature = self.driver.read_temperature() print("Temperature: {} C".format(temperature)) # Check if reading humidity elif self.args.humidity: humidity = self.driver.read_humidity() print("Humidity: {} %".format(humidity)) # Check if reading user register elif self.args.user_register: user_register = self.driver.read_user_register() print(user_register)
def initialize(self) -> None: """Initializes manager.""" self.logger.info("Initializing") # Clear reported values self.clear_reported_values() # Initialize health self.health = 100.0 # Initialize driver try: self.driver = SHT25Driver( name=self.name, i2c_lock=self.i2c_lock, bus=self.bus, mux=self.mux, channel=self.channel, address=self.address, simulate=self.simulate, mux_simulator=self.mux_simulator, ) except DriverError as e: self.logger.exception("Manager unable to initialize") self.health = 0.0 self.mode = Modes.ERROR
def test_init() -> None: driver = SHT25Driver( name="Test", i2c_lock=threading.RLock(), bus=2, address=0x77, simulate=True, mux_simulator=MuxSimulator(), )
def test_read_humidity() -> None: driver = SHT25Driver( name="Test", i2c_lock=threading.RLock(), bus=2, address=0x77, simulate=True, mux_simulator=MuxSimulator(), ) humidity = driver.read_humidity() assert humidity == 70.0
def test_read_temperature() -> None: driver = SHT25Driver( name="Test", i2c_lock=threading.RLock(), bus=2, address=0x77, simulate=True, mux_simulator=MuxSimulator(), ) temperature = driver.read_temperature() assert temperature == 24.0
def test_read_user_register() -> None: driver = SHT25Driver( name="Test", i2c_lock=threading.RLock(), bus=2, address=0x77, simulate=True, mux_simulator=MuxSimulator(), ) user_register = driver.read_user_register() assert user_register.end_of_battery == False assert user_register.heater_enabled == False assert user_register.reload_disabled == False