Как получить доступ к свойству data
в тестовом экземпляре Vue?
Я вижу, что вы можете получить доступ к props
, но нет эквивалента data
.Я могу получить свойство данных, используя что-то вроде wrapper.vm.foo
, но я чувствую, что есть другой способ сделать это, который может больше попадать в рамки тестовой среды.
App.vue
<script>
export default {
data() {
return {
foo: 'bar'
}
}
}
</script>
App.spec.js
import { shallowMount } from '@vue/test-utils'
import App from '@/App.vue'
import { expect } from 'chai';
describe("App.vue", () => {
let wrapper;
beforeEach(() => {
// use this to check the state of anything in the view
wrapper = shallowMount(App)
});
it("Module has the expected data attribute", () => {
expect(wrapper.vm.foo).to.equal('bar'); // passes
expect(wrapper.foo).to.equal('bar'); // fails
expect(wrapper.data('foo')).to.equal('bar'); // fails
expect(wrapper.data().foo).to.equal('bar'); // fails
});
it('simple passing test', () => {
expect(1).to.equal(1);
});
});