Skip to content

Commit 6448a14

Browse files
committed
test(e2e): test for guards with named views
1 parent 8f7182e commit 6448a14

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

e2e/guards-instances/index.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ function createTestComponent(key: string) {
9393
}
9494

9595
const Foo = createTestComponent('Foo')
96+
const One = createTestComponent('One')
97+
const Two = createTestComponent('Two')
9698
const Aux = createTestComponent('Aux')
9799

98100
const webHistory = createWebHistory('/' + __dirname)
@@ -108,6 +110,20 @@ const router = createRouter({
108110
path: '/f/:id',
109111
component: Foo,
110112
},
113+
{
114+
path: '/named-one',
115+
components: {
116+
default: One,
117+
aux: Aux,
118+
},
119+
},
120+
{
121+
path: '/named-two',
122+
components: {
123+
default: Two,
124+
aux: Aux,
125+
},
126+
},
111127
],
112128
})
113129

@@ -160,6 +176,9 @@ leaves: {{ state.leave }}
160176
<li><router-link to="/f/2?bar=foo">/f/2?bar=foo</router-link></li>
161177
<li><router-link to="/f/2?foo=key">/f/2?foo=key</router-link></li>
162178
<li><router-link to="/f/2?foo=key2">/f/2?foo=key2</router-link></li>
179+
<li><router-link id="update-query" :to="{ query: { n: (Number($route.query.n) || 0) + 1 }}" v-slot="{ route }">{{ route.fullPath }}</router-link></li>
180+
<li><router-link to="/named-one">/named-one</router-link></li>
181+
<li><router-link to="/named-two">/named-two</router-link></li>
163182
</ul>
164183
165184
<template v-if="testCase === 'keepalive'">
@@ -188,6 +207,7 @@ leaves: {{ state.leave }}
188207
</template>
189208
<template v-else>
190209
<router-view class="view" />
210+
<router-view class="aux-view" name="aux" />
191211
</template>
192212
193213
</div>

e2e/specs/guards-instances.js

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,39 @@ module.exports = {
247247
/** @type {import('nightwatch').NightwatchTest} */
248248
'guards + instances + named views': function (browser) {
249249
browser
250-
.url('http://localhost:8080/guards-instances/')
250+
.url('http://localhost:8080/guards-instances/named-one')
251251
.waitForElementPresent('#app > *', 1000)
252252

253+
browser
254+
.click('li:nth-child(1) a')
255+
.expect.element('#logs')
256+
.text.to.equal(
257+
[
258+
`One: enter / - /named-one`,
259+
`Aux: enter / - /named-one`,
260+
`One: leave /named-one - /`,
261+
`Aux: leave /named-one - /`,
262+
`One: setup:leave /named-one - /`,
263+
`Aux: setup:leave /named-one - /`,
264+
].join('\n')
265+
)
266+
267+
browser
268+
.click('li:nth-child(9) a')
269+
.click('#resetLogs')
270+
.click('li:nth-child(10) a')
271+
.expect.element('#logs')
272+
.text.to.equal(
273+
[
274+
`One: leave /named-one - /named-two`,
275+
`Aux: leave /named-one - /named-two`,
276+
`One: setup:leave /named-one - /named-two`,
277+
`Aux: setup:leave /named-one - /named-two`,
278+
`Two: enter /named-one - /named-two`,
279+
`Aux: enter /named-one - /named-two`,
280+
].join('\n')
281+
)
282+
253283
browser.end()
254284
},
255285
}

0 commit comments

Comments
 (0)