Итак, у меня есть следующий класс функций-оболочек с именем cookie.js
:
export default {
Vue: null,
set (name, value, options) {
const defaultOptions = {
sameSite: 'lax',
secure: true
};
this.Vue.$cookies.set(name, value, Object.assign(defaultOptions, options));
},
get (name) {
return this.Vue.$cookies.get(name);
},
remove (name) {
this.Vue.$cookies.remove(name);
}
};
И я устанавливаю этот плагин так:
import cookiePlugin from 'plugins/cookie';
Vue.use({
install (Vue, options) {
Vue.prototype.$cookie = function () {
return Object.assign(cookiePlugin, {
options,
Vue: this
});
};
}
});
Я хочу создать тестовый класс для методов set
, get
и remove
в cookie.js
.
Просматривая различные документы и вопросы на этом сайте, я думаю, что начало настройки для тестового класса примерно такое:
import Cookie from './cookie';
import { createLocalVue } from 'vue-test-utils'
it('sets up a cookie with correct options', () => {
const localVue = createLocalVue();
localVue.use(Cookie);
// here is where I'm unsure how proceed/call the methods I want to test.
});
Я думал, что вы делаете что-то вроде localVue.prototype.$cookie().set(...)
отсюда, например, но я не думаю, что это правильно, так как я всегда получаю неопределенные ошибки свойств. Другие примеры, по-видимому, показывают такие вещи, как localVue.prototype.$plugin
, где $plugin
- это специфицированный c метод, а не класс методов, как у меня.
Есть предложения?