summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClement Ho <clemmakesapps@gmail.com>2017-06-27 23:50:07 +0000
committerClement Ho <clemmakesapps@gmail.com>2017-06-27 23:50:07 +0000
commita1f0692d682cd304f2d8b7d0f523921853409402 (patch)
treea787e783f982db882206076f9971cbf8dc79329c
parentd61836103d32d51557a94658988f3a7a0b6930de (diff)
parentf8c503b8b0156ad81c0a1d44b8d338963f6afdb1 (diff)
downloadgitlab-ce-9-3-stable-patch-2.tar.gz
Merge branch 'revert-99bdfd18' into '9-3-stable-patch-2'9-3-stable-patch-2
Revert "Merge branch 'issue-form-multiple-line-markdown' into 'master'" See merge request !12500
-rw-r--r--app/assets/javascripts/lib/utils/text_utility.js4
-rw-r--r--changelogs/unreleased/issue-form-multiple-line-markdown.yml4
-rw-r--r--spec/javascripts/vue_shared/components/markdown/field_spec.js105
3 files changed, 38 insertions, 75 deletions
diff --git a/app/assets/javascripts/lib/utils/text_utility.js b/app/assets/javascripts/lib/utils/text_utility.js
index 021f936a4fa..601d01e1be1 100644
--- a/app/assets/javascripts/lib/utils/text_utility.js
+++ b/app/assets/javascripts/lib/utils/text_utility.js
@@ -94,8 +94,8 @@ gl.text.insertText = function(textArea, text, tag, blockTag, selected, wrap) {
startChar = !wrap && !currentLineEmpty && textArea.selectionStart > 0 ? '\n' : '';
- if (selectedSplit.length > 1 && (!wrap || (blockTag != null && blockTag !== ''))) {
- if (blockTag != null && blockTag !== '') {
+ if (selectedSplit.length > 1 && (!wrap || (blockTag != null))) {
+ if (blockTag != null) {
insertText = this.blockTagText(text, textArea, blockTag, selected);
} else {
insertText = selectedSplit.map(function(val) {
diff --git a/changelogs/unreleased/issue-form-multiple-line-markdown.yml b/changelogs/unreleased/issue-form-multiple-line-markdown.yml
deleted file mode 100644
index 23128f346bc..00000000000
--- a/changelogs/unreleased/issue-form-multiple-line-markdown.yml
+++ /dev/null
@@ -1,4 +0,0 @@
----
-title: Fixed multi-line markdown tooltip buttons in issue edit form
-merge_request:
-author:
diff --git a/spec/javascripts/vue_shared/components/markdown/field_spec.js b/spec/javascripts/vue_shared/components/markdown/field_spec.js
index 291e19c9f3c..4bbaff561fc 100644
--- a/spec/javascripts/vue_shared/components/markdown/field_spec.js
+++ b/spec/javascripts/vue_shared/components/markdown/field_spec.js
@@ -4,33 +4,47 @@ import fieldComponent from '~/vue_shared/components/markdown/field.vue';
describe('Markdown field component', () => {
let vm;
- beforeEach((done) => {
+ beforeEach(() => {
vm = new Vue({
- data() {
- return {
- text: 'testing\n123',
- };
- },
- components: {
- fieldComponent,
+ render(createElement) {
+ return createElement(
+ fieldComponent,
+ {
+ props: {
+ markdownPreviewUrl: '/preview',
+ markdownDocs: '/docs',
+ },
+ },
+ [
+ createElement('textarea', {
+ slot: 'textarea',
+ }),
+ ],
+ );
},
- template: `
- <field-component
- marodown-preview-url="/preview"
- markdown-docs="/docs"
- >
- <textarea
- slot="textarea"
- v-model="text">
- </textarea>
- </field-component>
- `,
- }).$mount();
-
- Vue.nextTick(done);
+ });
+ });
+
+ it('creates a new instance of GL form', (done) => {
+ spyOn(gl, 'GLForm');
+ vm.$mount();
+
+ Vue.nextTick(() => {
+ expect(
+ gl.GLForm,
+ ).toHaveBeenCalled();
+
+ done();
+ });
});
describe('mounted', () => {
+ beforeEach((done) => {
+ vm.$mount();
+
+ Vue.nextTick(done);
+ });
+
it('renders textarea inside backdrop', () => {
expect(
vm.$el.querySelector('.zen-backdrop textarea'),
@@ -103,52 +117,5 @@ describe('Markdown field component', () => {
});
});
});
-
- describe('markdown buttons', () => {
- it('converts single words', (done) => {
- const textarea = vm.$el.querySelector('textarea');
-
- textarea.setSelectionRange(0, 7);
- vm.$el.querySelector('.js-md').click();
-
- Vue.nextTick(() => {
- expect(
- textarea.value,
- ).toContain('**testing**');
-
- done();
- });
- });
-
- it('converts a line', (done) => {
- const textarea = vm.$el.querySelector('textarea');
-
- textarea.setSelectionRange(0, 0);
- vm.$el.querySelectorAll('.js-md')[4].click();
-
- Vue.nextTick(() => {
- expect(
- textarea.value,
- ).toContain('* testing');
-
- done();
- });
- });
-
- it('converts multiple lines', (done) => {
- const textarea = vm.$el.querySelector('textarea');
-
- textarea.setSelectionRange(0, 50);
- vm.$el.querySelectorAll('.js-md')[4].click();
-
- Vue.nextTick(() => {
- expect(
- textarea.value,
- ).toContain('* testing\n* 123');
-
- done();
- });
- });
- });
});
});