gitlab-org--gitlab-foss/spec/javascripts/repo/components/repo_tabs_spec.js

38 lines
875 B
JavaScript
Raw Normal View History

2017-07-25 12:13:55 -04:00
import Vue from 'vue';
import store from '~/ide/stores';
import repoTabs from '~/ide/components/repo_tabs.vue';
2017-10-27 13:16:28 -04:00
import { file, resetStore } from '../helpers';
2017-07-25 12:13:55 -04:00
2017-08-05 13:51:19 -04:00
describe('RepoTabs', () => {
2017-10-27 13:16:28 -04:00
const openedFiles = [file(), file()];
let vm;
2017-07-26 06:27:09 -04:00
2017-07-25 12:13:55 -04:00
function createComponent() {
2017-07-26 06:24:31 -04:00
const RepoTabs = Vue.extend(repoTabs);
2017-10-27 13:16:28 -04:00
return new RepoTabs({
store,
}).$mount();
2017-07-25 12:13:55 -04:00
}
afterEach(() => {
2017-10-27 13:16:28 -04:00
resetStore(vm.$store);
});
2017-10-27 13:16:28 -04:00
it('renders a list of tabs', (done) => {
vm = createComponent();
2017-10-27 13:16:28 -04:00
openedFiles[0].active = true;
vm.$store.state.openFiles = openedFiles;
vm.$nextTick(() => {
2017-11-24 08:12:04 -05:00
const tabs = [...vm.$el.querySelectorAll('.multi-file-tab')];
2017-10-27 13:16:28 -04:00
2017-11-24 08:12:04 -05:00
expect(tabs.length).toEqual(2);
2017-10-27 13:16:28 -04:00
expect(tabs[0].classList.contains('active')).toBeTruthy();
expect(tabs[1].classList.contains('active')).toBeFalsy();
2017-07-26 06:24:31 -04:00
2017-10-27 13:16:28 -04:00
done();
});
2017-07-25 12:13:55 -04:00
});
});