Skip to content

Commit 73f57ea

Browse files
committed
Initial commit
0 parents  commit 73f57ea

File tree

8 files changed

+6520
-0
lines changed

8 files changed

+6520
-0
lines changed

babel.config.js

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
module.exports = {
2+
presets: ["@babel/preset-env"]
3+
}

jest.config.js

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module.exports = {
2+
moduleFileExtensions: [
3+
"js",
4+
"json",
5+
"vue"
6+
],
7+
transform: {
8+
".*\\.(js)$": "babel-jest",
9+
".*\\.(vue)$": "vue-jest",
10+
".+\\.(css|styl|less|sass|scss|png|jpg|ttf|woff|woff2)$": "jest-transform-stub"
11+
},
12+
transformIgnorePatterns: ['node_modules/(?!vuetify)'],
13+
testMatch: [
14+
'<rootDir>/tests/**/*.spec.js',
15+
],
16+
setupFiles: ['<rootDir>/tests/setup.js']
17+
}

package-lock.json

+6,429
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"name": "vue-test-utils-functional-components-shallow-mount",
3+
"private": true,
4+
"scripts": {
5+
"test": "jest"
6+
},
7+
"dependencies": {
8+
"vue": "2.6.12",
9+
"vuetify": "2.4.8"
10+
},
11+
"devDependencies": {
12+
"@babel/core": "7.13.14",
13+
"@babel/preset-env": "7.13.12",
14+
"@vue/test-utils": "1.1.3",
15+
"babel-core": "7.0.0-bridge.0",
16+
"babel-jest": "26.6.3",
17+
"jest": "26.6.3",
18+
"jest-transform-stub": "2.0.0",
19+
"vue-jest": "3.0.7",
20+
"vue-template-compiler": "2.6.12"
21+
}
22+
}

src/Example.vue

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<template>
2+
<div>
3+
<v-icon>save</v-icon>
4+
</div>
5+
</template>
6+
7+
<script>
8+
export default {
9+
name: "Example"
10+
}
11+
</script>
12+
13+
<style scoped>
14+
15+
</style>

src/main.ts

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import Vue from 'vue';
2+
import Vuetify from 'vuetify';
3+
4+
Vue.use(Vuetify);

tests/Example.spec.js

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { createLocalVue, shallowMount } from "@vue/test-utils";
2+
import Example from "../src/Example.vue";
3+
import Vuetify from "vuetify";
4+
import { VIcon } from "vuetify/lib";
5+
6+
test("by functional selector", () => {
7+
const localVue = createLocalVue()
8+
const vuetify = new Vuetify()
9+
const wrapper = shallowMount(Example, {
10+
localVue,
11+
vuetify,
12+
});
13+
let icon = wrapper.findComponent(VIcon);
14+
expect(icon.exists()).toBe(true);
15+
})
16+
17+
test("by name selector", () => {
18+
const localVue = createLocalVue()
19+
const vuetify = new Vuetify()
20+
const wrapper = shallowMount(Example, {
21+
localVue,
22+
vuetify,
23+
});
24+
let icon = wrapper.findComponent({ name: 'v-icon' });
25+
expect(icon.exists()).toBe(true);
26+
})

tests/setup.js

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import Vue from 'vue'
2+
import Vuetify from 'vuetify'
3+
4+
Vue.use(Vuetify)

0 commit comments

Comments
 (0)