vue commit

This commit is contained in:
zvv__666---vvz
2026-04-21 21:23:21 +08:00
commit 0fd6fbefd5
193 changed files with 65688 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
import { mount, createLocalVue } from '@vue/test-utils';
import VueRouter from 'vue-router';
import ElementUI from 'element-ui';
import Breadcrumb from '@/components/Breadcrumb/index.vue';
const localVue = createLocalVue();
localVue.use(VueRouter);
localVue.use(ElementUI);
const routes = [
{
'path': '/',
'children': [{
'path': 'dashboard'
}]
},
{
'path': '/menu',
'children': [{
'path': 'menu1',
'meta': { 'title': 'menu1' },
'children': [{
'path': 'menu1-1',
'meta': { 'title': 'menu1-1' }
},
{
'path': 'menu1-2',
'redirect': 'noredirect',
'meta': { 'title': 'menu1-2' },
'children': [{
'path': 'menu1-2-1',
'meta': { 'title': 'menu1-2-1' }
},
{
'path': 'menu1-2-2'
}]
}]
}]
}];
const router = new VueRouter({
routes
});
describe('Breadcrumb.vue', () => {
const wrapper = mount(Breadcrumb, {
localVue
});
it('dashboard', () => {
router.push('/dashboard');
const len = wrapper.findAll('.el-breadcrumb__inner').length;
expect(len).toBe(1);
});
it('normal route', () => {
router.push('/menu/menu1');
const len = wrapper.findAll('.el-breadcrumb__inner').length;
expect(len).toBe(2);
});
it('nested route', () => {
router.push('/menu/menu1/menu1-2/menu1-2-1');
const len = wrapper.findAll('.el-breadcrumb__inner').length;
expect(len).toBe(4);
});
it('no meta.title', () => {
router.push('/menu/menu1/menu1-2/menu1-2-2');
const len = wrapper.findAll('.el-breadcrumb__inner').length;
expect(len).toBe(3);
});
it('click link', () => {
router.push('/menu/menu1/menu1-2/menu1-2-2');
const breadcrumbArray = wrapper.findAll('.el-breadcrumb__inner');
const second = breadcrumbArray.at(1);
const href = second.find('a').text();
expect(href).toBe('menu1');
});
it('noredirect', () => {
router.push('/menu/menu1/menu1-2/menu1-2-1');
const breadcrumbArray = wrapper.findAll('.el-breadcrumb__inner');
const redirectBreadcrumb = breadcrumbArray.at(2);
expect(redirectBreadcrumb.contains('a')).toBe(false);
});
it('last breadcrumb', () => {
router.push('/menu/menu1/menu1-2/menu1-2-1');
const breadcrumbArray = wrapper.findAll('.el-breadcrumb__inner');
const redirectBreadcrumb = breadcrumbArray.at(3);
expect(redirectBreadcrumb.contains('a')).toBe(false);
});
});