1- // TODO: Support styles
2- //
3- import { createApp , h } from 'vue'
1+ import { mount } from '@vue/test-utils'
42
53import Less from './components/Less.vue'
64import Stylus from './components/Stylus.vue'
@@ -9,73 +7,42 @@ import Sass from './components/Sass.vue'
97import PostCss from './components/PostCss.vue'
108import External from './components/External.vue'
119
12- function mount ( Component , props , slots ) {
13- document . getElementsByTagName ( 'html' ) [ 0 ] . innerHTML = ''
14- const el = document . createElement ( 'div' )
15- el . id = 'app'
16- document . body . appendChild ( el )
17- const Parent = {
18- render ( ) {
19- return h ( Component , props , slots )
20- }
21- }
22- createApp ( Parent ) . mount ( el )
23- }
24-
2510test ( 'processes Less' , ( ) => {
26- mount ( Less )
27- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
28- '<div><div class="a">a</div><div class="b">b</div><div class="c">c</div><div class="d">d</div></div>'
29- )
11+ const wrapper = mount ( Less )
12+ expect ( wrapper . vm . $style . a ) . toEqual ( 'a' )
3013} )
3114
3215test ( 'processes PostCSS' , ( ) => {
33- mount ( PostCss )
34- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
35- '<section><div class="c"></div><div class="d"></div></section>'
36- )
37- // expect(wrapper.is('section')).toBeTruthy()
38- // expect(wrapper.vm.$style.a).toEqual('a')
39- // expect(wrapper.vm.$style.b).toEqual('b')
16+ const wrapper = mount ( PostCss )
17+ expect ( wrapper . vm . $style . c ) . toEqual ( 'c' )
18+ expect ( wrapper . vm . $style . d ) . toEqual ( 'd' )
4019} )
4120
4221test ( 'processes Sass' , ( ) => {
43- mount ( Sass )
44- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
45- '<div><div class="a"></div><div class="b"></div><div class="c"></div><div class=""></div><div class="e"></div></div>'
46- )
47- // expect(wrapper.vm.$style.a).toEqual('a')
48- // expect(wrapper.vm.$style.b).toEqual('b')
49- // expect(wrapper.vm.$style.c).toEqual('c')
50- // expect(wrapper.vm.$style.light).toBeUndefined()
22+ const wrapper = mount ( Sass )
23+ expect ( wrapper . vm . $style . a ) . toEqual ( 'a' )
24+ expect ( wrapper . vm . $style . b ) . toEqual ( 'b' )
25+ expect ( wrapper . vm . $style . c ) . toEqual ( 'c' )
26+ expect ( wrapper . vm . $style . light ) . toBeUndefined ( )
5127} )
5228
5329test ( 'processes SCSS with resources' , ( ) => {
54- mount ( Scss )
55- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
56- '<div><div class="a"></div><div class="b"></div><div class="c"></div><div class=""></div><div class=""></div><div class="f"></div></div>'
57- )
58- // expect(wrapper.vm.$style.a).toEqual('a')
59- // expect(wrapper.vm.$style.b).toEqual('b')
60- // expect(wrapper.vm.$style.c).toEqual('c')
30+ const wrapper = mount ( Scss )
31+ expect ( wrapper . vm . $style . a ) . toEqual ( 'a' )
32+ expect ( wrapper . vm . $style . b ) . toEqual ( 'b' )
33+ expect ( wrapper . vm . $style . c ) . toEqual ( 'c' )
6134} )
6235
6336test ( 'process Stylus' , ( ) => {
64- mount ( Stylus )
65- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
66- '<div><div class="a"></div><div class="b"></div></div>'
67- )
68- // expect(wrapper.vm).toBeTruthy()
69- // expect(wrapper.vm.css.a).toEqual('a')
70- // expect(wrapper.vm.$style.b).toEqual('b')
37+ const wrapper = mount ( Stylus )
38+ expect ( wrapper . vm ) . toBeTruthy ( )
39+ expect ( wrapper . vm . css . a ) . toEqual ( 'a' )
40+ expect ( wrapper . vm . $style . b ) . toEqual ( 'b' )
7141} )
7242
7343test ( 'process External' , ( ) => {
74- mount ( External )
75- expect ( document . getElementById ( 'app' ) . innerHTML ) . toEqual (
76- '<div class="testClass"><div class="a"></div></div>'
77- )
78- // expect(wrapper.vm).toBeTruthy()
79- // expect(wrapper.vm.$style.xtestClass).toEqual('xtestClass')
80- // expect(wrapper.vm.css.a).toEqual('a')
44+ const wrapper = mount ( External )
45+ expect ( wrapper . vm ) . toBeTruthy ( )
46+ expect ( wrapper . vm . $style . testClass ) . toEqual ( 'testClass' )
47+ expect ( wrapper . vm . css . a ) . toEqual ( 'a' )
8148} )
0 commit comments