def test_switch_on_callback_anlage(self):
        load_mocks()
        add_anlage_an_aus_command_mock()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("switchDeviceOn")),
                TestSlots(dict(device=TestSlot([TestValue("anlage")])))))

        self.assertTrue(success)
        self.assertEqual("Ich habe dir die anlage eingeschaltet.", message)
    def test_switch_on_callback_empty(self):
        load_mocks()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(TestIntent(user_intent("switchDeviceOn")),
                              TestSlots({})))

        self.assertFalse(success)
        self.assertEqual(
            "Ich habe nicht verstanden, welches Gerät du einschalten möchtest.",
            message)
    def test_increase_volume(self):
        load_mocks()
        add_anlage_volume_command_mock()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("increaseProperty")),
                TestSlots(dict(property=TestSlot([TestValue("lautstärke")])))))

        self.assertTrue(success)
        self.assertEqual("Ich habe die lautstärke im schlafzimmer erhöht.",
                         message)
    def test_get_temperature_callback(self):
        load_mocks()
        add_get_temperature_mock()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("getTemperature")),
                TestSlots(dict(room=TestSlot([TestValue("wohnzimmer")])))))

        self.assertIsNone(success)
        self.assertEqual("Die Temperatur im wohnzimmer beträgt 23,1 Grad.",
                         message)
    def test_switch_on_callback_unknown_room(self):
        load_mocks()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("switchDeviceOn")),
                TestSlots(dict(room=TestSlot([TestValue("blubbzimmer")])))))

        self.assertFalse(success)
        self.assertEqual(
            "Ich habe keinen Ort mit der Bezeichnung blubbzimmer gefunden.",
            message)
    def test_play_wohnzimmer(self):
        load_mocks()
        add_player_command_mock()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("playMedia")),
                TestSlots(dict(room=TestSlot([TestValue("wohnzimmer")])))))

        self.assertTrue(success)
        self.assertEqual("Ich habe die Wiedergabe im wohnzimmer fortgesetzt.",
                         message)
    def test_increase_brightness(self):
        load_mocks()
        add_esszimmer_lights_command_mock()
        assistant = get_test_assistant(openhab_mock_base)

        success, message = assistant.callback(
            TestIntentMessage(
                TestIntent(user_intent("increaseProperty")),
                TestSlots(
                    dict(property=TestSlot([TestValue("helligkeit")]),
                         room=TestSlot([TestValue("esszimmer")])))))

        self.assertTrue(success)
        self.assertEqual("Ich habe die Helligkeit im esszimmer verstärkt.",
                         message)