コード例 #1
0
    def test_response_from_request(self):
        alice_request = types.AliceRequest(**ALICE_REQUEST)

        alice_response = alice_request.response(
            EXPECTED_RESPONSE['response']['text']
        )
        self._assert_payload(alice_response, EXPECTED_RESPONSE)
コード例 #2
0
ファイル: test_types.py プロジェクト: val16384/aioalice
 def test_response_from_request2(self):
     alice_request = types.AliceRequest(None, **ALICE_REQUEST)
     alice_response = alice_request.response(
         RESPONSE_TEXT,
         tts=TTS,
         buttons=[types.Button(BUTTON_TEXT, url=URL)])
     self._assert_payload(alice_response, EXPECTED_RESPONSE_WITH_BUTTONS)
コード例 #3
0
 def test_alice_request(self):
     alice_request_json = {
         "meta": {
             "locale": "ru-RU",
             "timezone": "Europe/Moscow",
             "client_id": "ru.yandex.searchplugin/5.80 (Samsung Galaxy; Android 4.4)"
         },
         "request": {
             "command": "где ближайшее отделение",
             "original_utterance": "Алиса спроси у Сбербанка где ближайшее отделение",
             "type": "SimpleUtterance",
             "markup": {
                 "dangerous_context": True
             },
             "payload": {}
         },
         "session": {
             "new": True,
             "message_id": 4,
             "session_id": "2eac4854-fce721f3-b845abba-20d60",
             "skill_id": "3ad36498-f5rd-4079-a14b-788652932056",
             "user_id": "AC9WC3DF6FCE052E45A4566A48E6B7193774B84814CE49A922E163B8B29881DC"
         },
         "version": "1.0"
     }
     alice_request = types.AliceRequest(**alice_request_json)
     self.assertEqual(alice_request.to_json(), alice_request_json)
     self._test_alice_request(alice_request, alice_request_json)
コード例 #4
0
ファイル: test_types.py プロジェクト: Dima1506/aioalice
 def test_response_big_image_from_request(self):
     alice_request = types.AliceRequest(**ALICE_REQUEST)
     alice_response = alice_request.response_big_image(
         RESPONSE_TEXT, IMAGE_ID, CARD_TITLE, CARD_DESCR,
         types.MediaButton(BUTTON_TEXT, URL, MB_PAYLOAD),
         buttons=[RESPONSE_BUTTON]
     )
     self._assert_payload(alice_response, EXPECTED_ALICE_RESPONSE_BIG_IMAGE_WITH_BUTTON)
コード例 #5
0
ファイル: test_types.py プロジェクト: val16384/aioalice
 def test_response_items_list_from_request(self):
     alice_request = types.AliceRequest(None, **ALICE_REQUEST)
     alice_response = alice_request.response_items_list(
         RESPONSE_TEXT,
         CARD_HEADER_TEXT, [types.Image(**IMAGE)],
         types.CardFooter(**FOOTER),
         buttons=[RESPONSE_BUTTON])
     self._assert_payload(alice_response,
                          EXPECTED_ALICE_RESPONSE_ITEMS_LIST_WITH_BUTTON)
コード例 #6
0
ファイル: test_types.py プロジェクト: val16384/aioalice
 def test_request_with_interfaces(self):
     alice_request = types.AliceRequest(**PING_REQUEST_1)
     self._test_alice_request(alice_request, PING_REQUEST_1)
コード例 #7
0
ファイル: test_types.py プロジェクト: val16384/aioalice
 def _test_alice_request_from_dct(self, dct):
     alice_request = types.AliceRequest(None, **dct)
     self._test_alice_request(alice_request, dct)
コード例 #8
0
 def test_alice_request(self):
     alice_request = types.AliceRequest(**ALICE_REQUEST)
     self.assertEqual(alice_request.to_json(), ALICE_REQUEST)
     self._test_alice_request(alice_request, ALICE_REQUEST)
コード例 #9
0
    def test_response_from_request(self):
        alice_request_json = {
            "meta": {
                "locale": "ru-RU",
                "timezone": "Europe/Moscow",
                "client_id": "ru.yandex.searchplugin/5.80 (Samsung Galaxy; Android 4.4)"
            },
            "request": {
                "command": "где ближайшее отделение",
                "original_utterance": "Алиса спроси у Сбербанка где ближайшее отделение",
                "type": "SimpleUtterance",
                "markup": {
                    "dangerous_context": True
                },
                "payload": None
            },
            "session": {
                "new": True,
                "message_id": 4,
                "session_id": "2eac4854-fce721f3-b845abba-20d60",
                "skill_id": "3ad36498-f5rd-4079-a14b-788652932056",
                "user_id": "AC9WC3DF6FCE052E45A4566A48E6B7193774B84814CE49A922E163B8B29881DC"
            },
            "version": "1.0"
        }
        alice_request = types.AliceRequest(**alice_request_json)

        resp_text = 'Здравствуйте! Это мы, хороводоведы.'
        alice_response = alice_request.response(resp_text)
        expected_response = {
            "response": {
                "text": resp_text,
                'tts': None,
                'buttons': None,
                "end_session": False
            },
            "session": {
                "session_id": "2eac4854-fce721f3-b845abba-20d60",
                "message_id": 4,
                "user_id": "AC9WC3DF6FCE052E45A4566A48E6B7193774B84814CE49A922E163B8B29881DC"
            },
            "version": "1.0"
        }
        self.assertEqual(alice_response.to_json(), expected_response)
        new_tts = "Здравствуйте! Это мы, хоров+одо в+еды."
        btn_title = "Надпись на кнопке"
        btn_url = "https://example.com/"
        new_btn = types.Button(btn_title, url=btn_url)
        expected_response["response"].update({
            "tts": new_tts,
            "buttons": [
                {
                    "title": btn_title,
                    "payload": None,
                    "url": btn_url,
                    "hide": True
                }
            ],
        })
        alice_response.response.tts = new_tts
        alice_response.response.buttons = [new_btn]
        self.assertEqual(alice_response.to_json(), expected_response)

        alice_response = alice_request.response(resp_text, tts=new_tts, buttons=[new_btn])
        self.assertEqual(alice_response.to_json(), expected_response)