Mocha/jsdom SecurityError: localStorage недоступен для непрозрачных источников

Я получаю эту ошибку при тестировании с помощью Mocha и jsdom моих компонентов Vue и использовании в них localStorage:

[Vue warn]: Error in data(): "SecurityError: localStorage is not available for opaque origins"

Все проблемы, которые я смог найти на Github или здесь, ссылаются на Jest, и в решениях предлагается установить параметр testUrl конфигурации Jest на любой допустимый URL-адрес. Но как установить его непосредственно в экземпляре jsdom?

Когда я добавляю объект параметров при инициализации jsdom - ничего не происходит:

let jsdom = require('jsdom-global')(
    {
        url: "https://dev.wue-theme.test"
    }
);

person Tech Nomad    schedule 01.08.2019    source источник


Ответы (1)


Хорошо, просмотр jsdom index.js помог - первый параметр ожидает строку HTML или undefined для установки строки/оболочки HTML по умолчанию, объект параметров идет как второй параметр:

let jsdom = require('jsdom-global')(
    undefined,
    {
        url: "https://dev.wue-theme.test"
    }
);

Теперь при запуске теста мокко ошибка действительно исчезла

person Tech Nomad    schedule 01.08.2019