summaryrefslogtreecommitdiff
path: root/spec/frontend/snippets/components/snippet_blob_view_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/snippets/components/snippet_blob_view_spec.js')
-rw-r--r--spec/frontend/snippets/components/snippet_blob_view_spec.js38
1 files changed, 20 insertions, 18 deletions
diff --git a/spec/frontend/snippets/components/snippet_blob_view_spec.js b/spec/frontend/snippets/components/snippet_blob_view_spec.js
index e4d8ee9b7df..c8f1c8fc8a9 100644
--- a/spec/frontend/snippets/components/snippet_blob_view_spec.js
+++ b/spec/frontend/snippets/components/snippet_blob_view_spec.js
@@ -23,13 +23,17 @@ describe('Blob Embeddable', () => {
id: 'gid://foo.bar/snippet',
webUrl: 'https://foo.bar',
visibilityLevel: SNIPPET_VISIBILITY_PUBLIC,
- blob: BlobMock,
};
const dataMock = {
activeViewerType: SimpleViewerMock.type,
};
- function createComponent(props = {}, data = dataMock, contentLoading = false) {
+ function createComponent({
+ snippetProps = {},
+ data = dataMock,
+ blob = BlobMock,
+ contentLoading = false,
+ } = {}) {
const $apollo = {
queries: {
blobContent: {
@@ -44,8 +48,9 @@ describe('Blob Embeddable', () => {
propsData: {
snippet: {
...snippet,
- ...props,
+ ...snippetProps,
},
+ blob,
},
data() {
return {
@@ -63,7 +68,6 @@ describe('Blob Embeddable', () => {
describe('rendering', () => {
it('renders correct components', () => {
createComponent();
- expect(wrapper.find(BlobEmbeddable).exists()).toBe(true);
expect(wrapper.find(BlobHeader).exists()).toBe(true);
expect(wrapper.find(BlobContent).exists()).toBe(true);
});
@@ -72,19 +76,14 @@ describe('Blob Embeddable', () => {
'does not render blob-embeddable by default',
visibilityLevel => {
createComponent({
- visibilityLevel,
+ snippetProps: {
+ visibilityLevel,
+ },
});
expect(wrapper.find(BlobEmbeddable).exists()).toBe(false);
},
);
- it('does render blob-embeddable for public snippet', () => {
- createComponent({
- visibilityLevel: SNIPPET_VISIBILITY_PUBLIC,
- });
- expect(wrapper.find(BlobEmbeddable).exists()).toBe(true);
- });
-
it('sets simple viewer correctly', () => {
createComponent();
expect(wrapper.find(SimpleViewer).exists()).toBe(true);
@@ -92,7 +91,9 @@ describe('Blob Embeddable', () => {
it('sets rich viewer correctly', () => {
const data = { ...dataMock, activeViewerType: RichViewerMock.type };
- createComponent({}, data);
+ createComponent({
+ data,
+ });
expect(wrapper.find(RichViewer).exists()).toBe(true);
});
@@ -137,7 +138,9 @@ describe('Blob Embeddable', () => {
});
it('renders simple viewer by default if URL contains hash', () => {
- createComponent({}, {});
+ createComponent({
+ data: {},
+ });
expect(wrapper.vm.activeViewerType).toBe(SimpleViewerMock.type);
expect(wrapper.find(SimpleViewer).exists()).toBe(true);
@@ -183,12 +186,11 @@ describe('Blob Embeddable', () => {
});
it(`sets '${SimpleViewerMock.type}' as active on ${BLOB_RENDER_EVENT_SHOW_SOURCE} event`, () => {
- createComponent(
- {},
- {
+ createComponent({
+ data: {
activeViewerType: RichViewerMock.type,
},
- );
+ });
findContentEl().vm.$emit(BLOB_RENDER_EVENT_SHOW_SOURCE);
expect(wrapper.vm.activeViewerType).toEqual(SimpleViewerMock.type);