TEST(LightControllerSpy, RememberAllLightStates)
{
    LightController_TurnOn(0);
    LightController_TurnOff(31);
    LONGS_EQUAL(LIGHT_ON, LightControllerSpy_GetLightState(0));
    LONGS_EQUAL(LIGHT_OFF, LightControllerSpy_GetLightState(31));
}
TEST(LightScheduler, ScheduleTwoEventsAtTheSameTIme)
{
    LightScheduler_ScheduleTurnOn(3, WEEKDAY, 1200);
    LightScheduler_ScheduleTurnOn(12, WEEKDAY, 1200);
    FakeTimeService_SetDay(MONDAY);
    FakeTimeService_SetMinute(1200);

    LightScheduler_WakeUp();

    TEST_ASSERT_EQUAL(LIGHT_ON, LightControllerSpy_GetLightState(3));
    TEST_ASSERT_EQUAL(LIGHT_ON, LightControllerSpy_GetLightState(12));
}
 //START: helpers_2
  void checkLightState(int id, int level)
  {
      if (id == LIGHT_ID_UNKNOWN)
      {
          LONGS_EQUAL(id, LightControllerSpy_GetLastId());
          LONGS_EQUAL(level, LightControllerSpy_GetLastState());
      }
      else
          LONGS_EQUAL(level, LightControllerSpy_GetLightState(id));
  }
static void checkLightState(int id, int level)
  {
      if (id == LIGHT_ID_UNKNOWN)
      {
          TEST_ASSERT_EQUAL(id, LightControllerSpy_GetLastId());
          TEST_ASSERT_EQUAL(level, LightControllerSpy_GetLastState());
      }
      else
          TEST_ASSERT_EQUAL(level, LightControllerSpy_GetLightState(id));
  }