Commit 0fd3fda8 authored by Filipa Lacerda's avatar Filipa Lacerda

Merge branch 'multi-file-editor-binary-editor' into 'master'

Fix binary files not showing anything in edit mode

See merge request gitlab-org/gitlab-ce!15124
parents 9b27d754 984f3b7d
...@@ -27,6 +27,8 @@ export default { ...@@ -27,6 +27,8 @@ export default {
'changeFileContent', 'changeFileContent',
]), ]),
initMonaco() { initMonaco() {
if (this.shouldHideEditor) return;
if (this.monacoInstance) { if (this.monacoInstance) {
this.monacoInstance.setModel(null); this.monacoInstance.setModel(null);
} }
...@@ -94,8 +96,12 @@ export default { ...@@ -94,8 +96,12 @@ export default {
<template> <template>
<div <div
id="ide" id="ide"
v-if='!shouldHideEditor'
class="blob-viewer-container blob-editor-container" class="blob-viewer-container blob-editor-container"
> >
<div
v-if="shouldHideEditor"
v-html="activeFile.html"
>
</div>
</div> </div>
</template> </template>
...@@ -17,6 +17,7 @@ describe('RepoEditor', () => { ...@@ -17,6 +17,7 @@ describe('RepoEditor', () => {
f.active = true; f.active = true;
f.tempFile = true; f.tempFile = true;
vm.$store.state.openFiles.push(f); vm.$store.state.openFiles.push(f);
vm.$store.getters.activeFile.html = 'testing';
vm.monaco = true; vm.monaco = true;
vm.$mount(); vm.$mount();
...@@ -31,18 +32,25 @@ describe('RepoEditor', () => { ...@@ -31,18 +32,25 @@ describe('RepoEditor', () => {
it('renders an ide container', (done) => { it('renders an ide container', (done) => {
Vue.nextTick(() => { Vue.nextTick(() => {
expect(vm.shouldHideEditor).toBeFalsy(); expect(vm.shouldHideEditor).toBeFalsy();
expect(vm.$el.textContent.trim()).toBe('');
done(); done();
}); });
}); });
describe('when open file is binary and not raw', () => { describe('when open file is binary and not raw', () => {
it('does not render the IDE', (done) => { beforeEach((done) => {
vm.$store.getters.activeFile.binary = true; vm.$store.getters.activeFile.binary = true;
Vue.nextTick(() => { Vue.nextTick(done);
expect(vm.shouldHideEditor).toBeTruthy(); });
done();
}); it('does not render the IDE', () => {
expect(vm.shouldHideEditor).toBeTruthy();
});
it('shows activeFile html', () => {
expect(vm.$el.textContent.trim()).toBe('testing');
}); });
}); });
}); });
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