123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- import unittest
- import sys
- sys.path.append("..")
- from src.parser import ModbusParser
- class TestParser(unittest.TestCase):
- def setUp(self):
- self.parser = ModbusParser()
- def test_includes_names(self):
- names = [
- "equipment_id",
- "run_days",
- "solar_panel_is_charging",
- "solar_panel_is_night",
- "solar_panel_charge_state",
- "load_is_enabled",
- "load_state",
- "battery_empty_times",
- "battery_full_times",
- "battery_percentage",
- "battery_voltage",
- "battery_current",
- "battery_power",
- "load_voltage",
- "load_current",
- "load_power",
- "solar_panel_voltage",
- "solar_panel_current",
- "solar_panel_power",
- "solar_panel_daily_energy",
- "solar_panel_total_energy",
- "load_daily_energy",
- "load_total_energy",
- ]
- for name in names:
- self.assertIn(name, [v.name for v in self.parser.variables], f"variable {name} doesn't exist anymore")
- def test_excludes_names(self):
- bad_names = [
- "battery_full_level",
- "battery_state_1",
- "battery_state_2",
- "solar_panel_state",
- "temperature_1",
- "temperature_2",
- ]
- for name in bad_names:
- self.assertNotIn(name, [v.name for v in self.parser.variables], f"variable {name} still exists")
- if __name__ == "__main__":
- unittest.main()
|