Commit b3cb3e7b authored by Mark Florian's avatar Mark Florian

Merge branch '339346-change-get-json-91b1b678245' into 'master'

Use import for json fixture - 2/7

See merge request gitlab-org/gitlab!71899
parents 9b64fa12 b7a006bf
import fixture from 'test_fixtures/metrics_dashboard/environment_metrics_dashboard.json';
import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
import { metricStates } from '~/monitoring/constants'; import { metricStates } from '~/monitoring/constants';
import { mapToDashboardViewModel } from '~/monitoring/stores/utils'; import { mapToDashboardViewModel } from '~/monitoring/stores/utils';
...@@ -5,10 +6,7 @@ import { stateAndPropsFromDataset } from '~/monitoring/utils'; ...@@ -5,10 +6,7 @@ import { stateAndPropsFromDataset } from '~/monitoring/utils';
import { metricsResult } from './mock_data'; import { metricsResult } from './mock_data';
// Use globally available `getJSONFixture` so this file can be imported by both karma and jest specs export const metricsDashboardResponse = fixture;
export const metricsDashboardResponse = getJSONFixture(
'metrics_dashboard/environment_metrics_dashboard.json',
);
export const metricsDashboardPayload = metricsDashboardResponse.dashboard; export const metricsDashboardPayload = metricsDashboardResponse.dashboard;
......
import Vue from 'vue'; import Vue from 'vue';
import fixture from 'test_fixtures/blob/notebook/basic.json';
import CodeComponent from '~/notebook/cells/code.vue'; import CodeComponent from '~/notebook/cells/code.vue';
const Component = Vue.extend(CodeComponent); const Component = Vue.extend(CodeComponent);
describe('Code component', () => { describe('Code component', () => {
let vm; let vm;
let json; let json;
beforeEach(() => { beforeEach(() => {
json = getJSONFixture('blob/notebook/basic.json'); // Clone fixture as it could be modified by tests
json = JSON.parse(JSON.stringify(fixture));
}); });
const setupComponent = (cell) => { const setupComponent = (cell) => {
......
import { mount } from '@vue/test-utils'; import { mount } from '@vue/test-utils';
import katex from 'katex'; import katex from 'katex';
import Vue from 'vue'; import Vue from 'vue';
import markdownTableJson from 'test_fixtures/blob/notebook/markdown-table.json';
import basicJson from 'test_fixtures/blob/notebook/basic.json';
import mathJson from 'test_fixtures/blob/notebook/math.json';
import MarkdownComponent from '~/notebook/cells/markdown.vue'; import MarkdownComponent from '~/notebook/cells/markdown.vue';
const Component = Vue.extend(MarkdownComponent); const Component = Vue.extend(MarkdownComponent);
...@@ -35,7 +38,7 @@ describe('Markdown component', () => { ...@@ -35,7 +38,7 @@ describe('Markdown component', () => {
let json; let json;
beforeEach(() => { beforeEach(() => {
json = getJSONFixture('blob/notebook/basic.json'); json = basicJson;
// eslint-disable-next-line prefer-destructuring // eslint-disable-next-line prefer-destructuring
cell = json.cells[1]; cell = json.cells[1];
...@@ -104,7 +107,7 @@ describe('Markdown component', () => { ...@@ -104,7 +107,7 @@ describe('Markdown component', () => {
describe('tables', () => { describe('tables', () => {
beforeEach(() => { beforeEach(() => {
json = getJSONFixture('blob/notebook/markdown-table.json'); json = markdownTableJson;
}); });
it('renders images and text', () => { it('renders images and text', () => {
...@@ -135,7 +138,7 @@ describe('Markdown component', () => { ...@@ -135,7 +138,7 @@ describe('Markdown component', () => {
describe('katex', () => { describe('katex', () => {
beforeEach(() => { beforeEach(() => {
json = getJSONFixture('blob/notebook/math.json'); json = mathJson;
}); });
it('renders multi-line katex', async () => { it('renders multi-line katex', async () => {
......
import Vue from 'vue'; import Vue from 'vue';
import json from 'test_fixtures/blob/notebook/basic.json';
import CodeComponent from '~/notebook/cells/output/index.vue'; import CodeComponent from '~/notebook/cells/output/index.vue';
const Component = Vue.extend(CodeComponent); const Component = Vue.extend(CodeComponent);
describe('Output component', () => { describe('Output component', () => {
let vm; let vm;
let json;
const createComponent = (output) => { const createComponent = (output) => {
vm = new Component({ vm = new Component({
...@@ -17,11 +17,6 @@ describe('Output component', () => { ...@@ -17,11 +17,6 @@ describe('Output component', () => {
vm.$mount(); vm.$mount();
}; };
beforeEach(() => {
// This is the output after rendering a jupyter notebook
json = getJSONFixture('blob/notebook/basic.json');
});
describe('text output', () => { describe('text output', () => {
beforeEach((done) => { beforeEach((done) => {
const textType = json.cells[2]; const textType = json.cells[2];
......
import { mount } from '@vue/test-utils'; import { mount } from '@vue/test-utils';
import Vue from 'vue'; import Vue from 'vue';
import json from 'test_fixtures/blob/notebook/basic.json';
import jsonWithWorksheet from 'test_fixtures/blob/notebook/worksheets.json';
import Notebook from '~/notebook/index.vue'; import Notebook from '~/notebook/index.vue';
const Component = Vue.extend(Notebook); const Component = Vue.extend(Notebook);
describe('Notebook component', () => { describe('Notebook component', () => {
let vm; let vm;
let json;
let jsonWithWorksheet;
beforeEach(() => {
json = getJSONFixture('blob/notebook/basic.json');
jsonWithWorksheet = getJSONFixture('blob/notebook/worksheets.json');
});
function buildComponent(notebook) { function buildComponent(notebook) {
return mount(Component, { return mount(Component, {
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import discussionFixture from 'test_fixtures/merge_requests/diff_discussion.json';
import imageDiscussionFixture from 'test_fixtures/merge_requests/image_diff_discussion.json';
import { createStore } from '~/mr_notes/stores'; import { createStore } from '~/mr_notes/stores';
import DiffWithNote from '~/notes/components/diff_with_note.vue'; import DiffWithNote from '~/notes/components/diff_with_note.vue';
const discussionFixture = 'merge_requests/diff_discussion.json';
const imageDiscussionFixture = 'merge_requests/image_diff_discussion.json';
describe('diff_with_note', () => { describe('diff_with_note', () => {
let store; let store;
let wrapper; let wrapper;
...@@ -35,7 +34,7 @@ describe('diff_with_note', () => { ...@@ -35,7 +34,7 @@ describe('diff_with_note', () => {
describe('text diff', () => { describe('text diff', () => {
beforeEach(() => { beforeEach(() => {
const diffDiscussion = getJSONFixture(discussionFixture)[0]; const diffDiscussion = discussionFixture[0];
wrapper = shallowMount(DiffWithNote, { wrapper = shallowMount(DiffWithNote, {
propsData: { propsData: {
...@@ -75,7 +74,7 @@ describe('diff_with_note', () => { ...@@ -75,7 +74,7 @@ describe('diff_with_note', () => {
describe('image diff', () => { describe('image diff', () => {
beforeEach(() => { beforeEach(() => {
const imageDiscussion = getJSONFixture(imageDiscussionFixture)[0]; const imageDiscussion = imageDiscussionFixture[0];
wrapper = shallowMount(DiffWithNote, { wrapper = shallowMount(DiffWithNote, {
propsData: { discussion: imageDiscussion, diffFile: {} }, propsData: { discussion: imageDiscussion, diffFile: {} },
store, store,
......
import { mount } from '@vue/test-utils'; import { mount } from '@vue/test-utils';
import { nextTick } from 'vue'; import { nextTick } from 'vue';
import discussionWithTwoUnresolvedNotes from 'test_fixtures/merge_requests/resolved_diff_discussion.json';
import { trimText } from 'helpers/text_helper'; import { trimText } from 'helpers/text_helper';
import mockDiffFile from 'jest/diffs/mock_data/diff_file'; import mockDiffFile from 'jest/diffs/mock_data/diff_file';
import DiscussionNotes from '~/notes/components/discussion_notes.vue'; import DiscussionNotes from '~/notes/components/discussion_notes.vue';
...@@ -17,8 +18,6 @@ import { ...@@ -17,8 +18,6 @@ import {
userDataMock, userDataMock,
} from '../mock_data'; } from '../mock_data';
const discussionWithTwoUnresolvedNotes = 'merge_requests/resolved_diff_discussion.json';
describe('noteable_discussion component', () => { describe('noteable_discussion component', () => {
let store; let store;
let wrapper; let wrapper;
...@@ -119,7 +118,7 @@ describe('noteable_discussion component', () => { ...@@ -119,7 +118,7 @@ describe('noteable_discussion component', () => {
describe('for resolved thread', () => { describe('for resolved thread', () => {
beforeEach(() => { beforeEach(() => {
const discussion = getJSONFixture(discussionWithTwoUnresolvedNotes)[0]; const discussion = discussionWithTwoUnresolvedNotes[0];
wrapper.setProps({ discussion }); wrapper.setProps({ discussion });
}); });
...@@ -133,7 +132,7 @@ describe('noteable_discussion component', () => { ...@@ -133,7 +132,7 @@ describe('noteable_discussion component', () => {
describe('for unresolved thread', () => { describe('for unresolved thread', () => {
beforeEach(() => { beforeEach(() => {
const discussion = { const discussion = {
...getJSONFixture(discussionWithTwoUnresolvedNotes)[0], ...discussionWithTwoUnresolvedNotes[0],
expanded: true, expanded: true,
}; };
discussion.resolved = false; discussion.resolved = false;
......
import discussionWithTwoUnresolvedNotes from 'test_fixtures/merge_requests/resolved_diff_discussion.json';
import { DESC, ASC } from '~/notes/constants'; import { DESC, ASC } from '~/notes/constants';
import * as getters from '~/notes/stores/getters'; import * as getters from '~/notes/stores/getters';
import { import {
...@@ -17,8 +18,6 @@ import { ...@@ -17,8 +18,6 @@ import {
draftDiffDiscussion, draftDiffDiscussion,
} from '../mock_data'; } from '../mock_data';
const discussionWithTwoUnresolvedNotes = 'merge_requests/resolved_diff_discussion.json';
// Helper function to ensure that we're using the same schema across tests. // Helper function to ensure that we're using the same schema across tests.
const createDiscussionNeighborParams = (discussionId, diffOrder, step) => ({ const createDiscussionNeighborParams = (discussionId, diffOrder, step) => ({
discussionId, discussionId,
...@@ -123,7 +122,7 @@ describe('Getters Notes Store', () => { ...@@ -123,7 +122,7 @@ describe('Getters Notes Store', () => {
describe('resolvedDiscussionsById', () => { describe('resolvedDiscussionsById', () => {
it('ignores unresolved system notes', () => { it('ignores unresolved system notes', () => {
const [discussion] = getJSONFixture(discussionWithTwoUnresolvedNotes); const [discussion] = discussionWithTwoUnresolvedNotes;
discussion.notes[0].resolved = true; discussion.notes[0].resolved = true;
discussion.notes[1].resolved = false; discussion.notes[1].resolved = false;
state.discussions.push(discussion); state.discussions.push(discussion);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment