File tree Expand file tree Collapse file tree 2 files changed +47
-0
lines changed Expand file tree Collapse file tree 2 files changed +47
-0
lines changed Original file line number Diff line number Diff line change 1+ # Resolve Route FullPath
2+
3+ ## Includes Query And Hash
4+
5+ - Search Query: {{ JSON.stringify(resolveRoute('/?query=1')) }}
6+ - Hash: {{ JSON.stringify(resolveRoute('/#hash')) }}
7+ - Search Query And Hash: {{ JSON.stringify(resolveRoute('/?query=1#hash')) }}
8+ - Permalink And Search Query: {{ JSON.stringify(resolveRoute('/routes/permalinks/ascii-non-ascii.md?query=1')) }}
9+
10+ <script setup >
11+ import { resolveRoute } from ' vuepress/client'
12+ </script >
Original file line number Diff line number Diff line change 1+ import { expect , test } from '@playwright/test'
2+
3+ const testCases = [
4+ {
5+ path : '/?query=1' ,
6+ notFound : false ,
7+ } ,
8+ {
9+ path : '/#hash' ,
10+ notFound : false ,
11+ } ,
12+ {
13+ path : '/?query=1#hash' ,
14+ notFound : false ,
15+ } ,
16+ {
17+ path : encodeURI ( '/永久链接-ascii-中文/?query=1' ) ,
18+ notFound : false ,
19+ } ,
20+ ]
21+
22+ test ( 'should resolve routes when including both the query and hash' , async ( {
23+ page,
24+ } ) => {
25+ const listItemsLocator = await page
26+ . locator ( '.e2e-theme-content #includes-query-and-hash + ul > li' )
27+ . all ( )
28+
29+ for ( const [ index , li ] of listItemsLocator . entries ( ) ) {
30+ const textContent = await li . textContent ( )
31+ const resolvedRoute = JSON . parse ( / : ( \{ .* \} ) \s * $ / . exec ( textContent ! ) ! [ 1 ] )
32+ expect ( resolvedRoute . path ) . toEqual ( testCases [ index ] . path )
33+ expect ( resolvedRoute . notFound ) . toEqual ( testCases [ index ] . notFound )
34+ }
35+ } )
You can’t perform that action at this time.
0 commit comments