import { shallowMount } from '@vue/test-utils'; import ModuleNavigation from '@/components/modules/ModuleNavigation'; describe('ModuleNavigation.vue', () => { it('should flatten an array', () => { const props = { modules: [], me: {} }; const wrapper = shallowMount(ModuleNavigation, { propsData: props }); let arrayToFlatten = [[1], [2, 3], [4, 5, 6], [7]]; let flattenedArray = wrapper.vm.flattenArray(arrayToFlatten); expect(flattenedArray).toEqual([1, 2, 3, 4, 5, 6, 7]); }); it('should find top level assignment', () => { const props = { modules: [], me: {} }; const wrapper = shallowMount(ModuleNavigation, { propsData: props }); let nodeData = { type: 'assignment', id: 1 }; let assignment = wrapper.vm.findAssignment(nodeData); expect(assignment).toEqual([nodeData]); }); it('should find content list assignments', () => { const props = { modules: [], me: {} }; const wrapper = shallowMount(ModuleNavigation, { propsData: props }); let assignments = [ { type: 'assignment', id: 2 }, { type: 'assignment', id: 3 } ]; let nodeData = { type: 'content_list_item', id: 1, value: assignments }; let foundAssignments = wrapper.vm.findAssignment(nodeData); expect(foundAssignments).toEqual(assignments); }); });