diff options
Diffstat (limited to 'spec/javascripts/issue_show/components/fields/description_spec.js')
-rw-r--r-- | spec/javascripts/issue_show/components/fields/description_spec.js | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/spec/javascripts/issue_show/components/fields/description_spec.js b/spec/javascripts/issue_show/components/fields/description_spec.js index cdb5c9ab862..f5b35b1e8b0 100644 --- a/spec/javascripts/issue_show/components/fields/description_spec.js +++ b/spec/javascripts/issue_show/components/fields/description_spec.js @@ -1,31 +1,53 @@ import Vue from 'vue'; +import Store from '~/issue_show/stores'; import descriptionField from '~/issue_show/components/fields/description.vue'; describe('Description field component', () => { let vm; + let store; beforeEach((done) => { const Component = Vue.extend(descriptionField); - - // Needs an el in the DOM to be able to test the element is focused const el = document.createElement('div'); + store = new Store({ + titleHtml: '', + descriptionHtml: '', + issuableRef: '', + }); + store.formState.description = 'test'; document.body.appendChild(el); vm = new Component({ el, propsData: { - formState: { - description: '', - }, - markdownDocs: '/', markdownPreviewUrl: '/', + markdownDocs: '/', + formState: store.formState, }, }).$mount(); Vue.nextTick(done); }); + it('renders markdown field with description', () => { + expect( + vm.$el.querySelector('.md-area textarea').value, + ).toBe('test'); + }); + + it('renders markdown field with a markdown description', (done) => { + store.formState.description = '**test**'; + + Vue.nextTick(() => { + expect( + vm.$el.querySelector('.md-area textarea').value, + ).toBe('**test**'); + + done(); + }); + }); + it('focuses field when mounted', () => { expect( document.activeElement, |