3333 ComponentCategory ,
3434 InverterData ,
3535)
36+ from tests .timeseries .mock_microgrid import MockMicrogrid
3637
3738from ..utils .component_data_wrapper import BatteryDataWrapper , InverterDataWrapper
3839from ..utils .mock_microgrid_client import MockMicrogridClient
@@ -154,8 +155,8 @@ class Message(Generic[T]):
154155 inner : T
155156
156157
157- BATTERY_ID = 106
158- INVERTER_ID = 105
158+ BATTERY_ID = 9
159+ INVERTER_ID = 8
159160
160161
161162# pylint: disable=protected-access, unused-argument
@@ -179,7 +180,7 @@ async def mock_microgrid(self, mocker: MockerFixture) -> MockMicrogridClient:
179180
180181 @time_machine .travel ("2022-01-01 00:00 UTC" , tick = False )
181182 async def test_sync_update_status_with_messages (
182- self , mock_microgrid : MockMicrogridClient
183+ self , mocker : MockerFixture
183184 ) -> None :
184185 """Test if messages changes battery status/
185186
@@ -189,6 +190,10 @@ async def test_sync_update_status_with_messages(
189190 Args:
190191 mock_microgrid: mock_microgrid fixture
191192 """
193+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
194+ mock_microgrid .add_batteries (3 )
195+ await mock_microgrid .start (mocker )
196+
192197 status_channel = Broadcast [Status ]("battery_status" )
193198 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
194199
@@ -336,10 +341,9 @@ async def test_sync_update_status_with_messages(
336341 assert tracker ._get_new_status_if_changed () is Status .NOT_WORKING
337342
338343 await tracker .stop ()
344+ await mock_microgrid .cleanup ()
339345
340- async def test_sync_blocking_feature (
341- self , mock_microgrid : MockMicrogridClient
342- ) -> None :
346+ async def test_sync_blocking_feature (self , mocker : MockerFixture ) -> None :
343347 """Test if status changes when SetPowerResult message is received.
344348
345349 Tests uses FakeSelect to test status in sync way.
@@ -348,6 +352,9 @@ async def test_sync_blocking_feature(
348352 Args:
349353 mock_microgrid: mock_microgrid fixture
350354 """
355+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
356+ mock_microgrid .add_batteries (3 )
357+ await mock_microgrid .start (mocker )
351358
352359 status_channel = Broadcast [Status ]("battery_status" )
353360 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
@@ -444,14 +451,15 @@ async def test_sync_blocking_feature(
444451
445452 # If battery succeed, then it should unblock.
446453 tracker ._handle_status_set_power_result (
447- SetPowerResult (succeed = {BATTERY_ID }, failed = {206 })
454+ SetPowerResult (succeed = {BATTERY_ID }, failed = {19 })
448455 )
449456 assert tracker ._get_new_status_if_changed () is Status .WORKING
450457
451458 await tracker .stop ()
459+ await mock_microgrid .cleanup ()
452460
453461 async def test_sync_blocking_interrupted_with_with_max_data (
454- self , mock_microgrid : MockMicrogridClient
462+ self , mocker : MockerFixture
455463 ) -> None :
456464 """Test if status changes when SetPowerResult message is received.
457465
@@ -461,6 +469,9 @@ async def test_sync_blocking_interrupted_with_with_max_data(
461469 Args:
462470 mock_microgrid: mock_microgrid fixture
463471 """
472+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
473+ mock_microgrid .add_batteries (3 )
474+ await mock_microgrid .start (mocker )
464475
465476 status_channel = Broadcast [Status ]("battery_status" )
466477 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
@@ -498,7 +509,7 @@ async def test_sync_blocking_interrupted_with_with_max_data(
498509
499510 @time_machine .travel ("2022-01-01 00:00 UTC" , tick = False )
500511 async def test_sync_blocking_interrupted_with_invalid_message (
501- self , mock_microgrid : MockMicrogridClient
512+ self , mocker : MockerFixture
502513 ) -> None :
503514 """Test if status changes when SetPowerResult message is received.
504515
@@ -508,6 +519,9 @@ async def test_sync_blocking_interrupted_with_invalid_message(
508519 Args:
509520 mock_microgrid: mock_microgrid fixture
510521 """
522+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
523+ mock_microgrid .add_batteries (3 )
524+ await mock_microgrid .start (mocker )
511525
512526 status_channel = Broadcast [Status ]("battery_status" )
513527 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
@@ -555,9 +569,7 @@ async def test_sync_blocking_interrupted_with_invalid_message(
555569 await tracker .stop ()
556570
557571 @time_machine .travel ("2022-01-01 00:00 UTC" , tick = False )
558- async def test_timers (
559- self , mock_microgrid : MockMicrogridClient , mocker : MockerFixture
560- ) -> None :
572+ async def test_timers (self , mocker : MockerFixture ) -> None :
561573 """Test if messages changes battery status/
562574
563575 Tests uses FakeSelect to test status in sync way.
@@ -567,6 +579,10 @@ async def test_timers(
567579 mock_microgrid: mock_microgrid fixture
568580 mocker: pytest mocker instance
569581 """
582+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
583+ mock_microgrid .add_batteries (3 )
584+ await mock_microgrid .start (mocker )
585+
570586 status_channel = Broadcast [Status ]("battery_status" )
571587 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
572588
@@ -616,16 +632,18 @@ async def test_timers(
616632
617633 assert inverter_timer_spy .call_count == 2
618634 await tracker .stop ()
635+ await mock_microgrid .cleanup ()
619636
620637 @time_machine .travel ("2022-01-01 00:00 UTC" , tick = False )
621- async def test_async_battery_status (
622- self , mock_microgrid : MockMicrogridClient
623- ) -> None :
638+ async def test_async_battery_status (self , mocker : MockerFixture ) -> None :
624639 """Test if status changes.
625640
626641 Args:
627642 mock_microgrid: mock_microgrid fixture
628643 """
644+ mock_microgrid = MockMicrogrid (grid_side_meter = True )
645+ mock_microgrid .add_batteries (3 )
646+ await mock_microgrid .start (mocker )
629647
630648 status_channel = Broadcast [Status ]("battery_status" )
631649 set_power_result_channel = Broadcast [SetPowerResult ]("set_power_result" )
@@ -643,8 +661,10 @@ async def test_async_battery_status(
643661 await asyncio .sleep (0.01 )
644662
645663 with time_machine .travel ("2022-01-01 00:00 UTC" , tick = False ) as time :
646- await mock_microgrid .send (inverter_data (component_id = INVERTER_ID ))
647- await mock_microgrid .send (battery_data (component_id = BATTERY_ID ))
664+ await mock_microgrid .mock_client .send (
665+ inverter_data (component_id = INVERTER_ID )
666+ )
667+ await mock_microgrid .mock_client .send (battery_data (component_id = BATTERY_ID ))
648668 status = await asyncio .wait_for (status_receiver .receive (), timeout = 0.1 )
649669 assert status is Status .WORKING
650670
@@ -656,11 +676,11 @@ async def test_async_battery_status(
656676
657677 time .shift (2 )
658678
659- await mock_microgrid .send (battery_data (component_id = BATTERY_ID ))
679+ await mock_microgrid .mock_client . send (battery_data (component_id = BATTERY_ID ))
660680 status = await asyncio .wait_for (status_receiver .receive (), timeout = 0.1 )
661681 assert status is Status .WORKING
662682
663- await mock_microgrid .send (
683+ await mock_microgrid .mock_client . send (
664684 inverter_data (
665685 component_id = INVERTER_ID ,
666686 timestamp = datetime .now (tz = timezone .utc ) - timedelta (seconds = 7 ),
@@ -675,8 +695,11 @@ async def test_async_battery_status(
675695 await asyncio .sleep (0.3 )
676696 assert len (status_receiver ) == 0
677697
678- await mock_microgrid .send (inverter_data (component_id = INVERTER_ID ))
698+ await mock_microgrid .mock_client .send (
699+ inverter_data (component_id = INVERTER_ID )
700+ )
679701 status = await asyncio .wait_for (status_receiver .receive (), timeout = 0.1 )
680702 assert status is Status .WORKING
681703
682704 await tracker .stop ()
705+ await mock_microgrid .cleanup ()
0 commit comments