sberdevices/assistant-client

Ошибка из-за отсутсвие appInitialData

vak1n opened this issue · 3 comments

vak1n commented

Привет!

В новых версиях библиотеки возникает ошибка на устройстве из-за отсутвсвия appInitialData

notReceivedCommands.map((c) => emitCommand(c as AssistantClientCustomizedCommand<A>));

Хотя судя по тестам такого быть не должно

it('Не падать без appInitialData', (done) => {

Смотрел на версии 4.9.1, текст ошибки:

createAssistant-ffb56be6.js:194 Uncaught TypeError: Cannot read property 'map' of undefined
    at emitInitialData (createAssistant-ffb56be6.js:194)
    at Object.onStart (createAssistant-ffb56be6.js:244)
    at <anonymous>:1:24

Если встать на v4.11.1

assistant-client % git diff
diff --git a/cypress/integration/createAssistant.spec.ts b/cypress/integration/createAssistant.spec.ts
index 0579cb1..0fceae6 100644
--- a/cypress/integration/createAssistant.spec.ts
+++ b/cypress/integration/createAssistant.spec.ts
@@ -79,9 +79,10 @@ describe('Проверяем createAssistant', () => {
             assistant.sendData({ action: expectedAction, name: expectedName, requestId: expectedRequestId });
         });

-    it('Не падать без appInitialData', (done) => {
+    it.only('Не падать без appInitialData', (done) => {
         window.appInitialData = undefined;
         initAssistant();
+        window.AssistantClient.onStart();
         done();
     });

то тест будет падать:

       Spec                                              Tests  Passing  Failing  Pending  Skipped
  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ ✖  createAssistant.spec.ts                  669ms        1        -        1        -        - │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘
    ✖  1 of 1 failed (100%)                     669ms        1        -        1        -        -

Похоже что поправили вот тут: https://github.com/sberdevices/assistant-client/pull/226/files#diff-4a8e2af747f7708c3f686add51592371c9d7ffd3a905ff4b25fcfa1859e31e10R174

и вошло оно на сколько я понял в 4.12 https://github.com/sberdevices/assistant-client/blob/main/CHANGELOG.md#v4120-tue-dec-21-2021

@sasha-tlt не знаю может докинуть такую инициализацию в тест?

@Yeti-or, действительно, здесь тест завершается раньше, чем происходит инициализация. Поправлю, спасибо!

Ошибка не воспроизводится, тест поправлен