import '../global.css'
-import { createRouter, createWebHistory, useRoute } from '../../src'
-import { RouteLocationNormalizedLoaded } from '../../src/types'
+import {
+ RouteLocationNormalizedLoaded,
+ createRouter,
+ createWebHistory,
+ useRoute,
+} from 'vue-router'
import {
createApp,
readonly,
import '../global.css'
-import { createRouter, createWebHistory } from '../../src'
-import { RouteComponent } from '../../src/types'
+import { RouteComponent, createRouter, createWebHistory } from 'vue-router'
import { createApp, ref, watchEffect, App, inject } from 'vue'
const Home: RouteComponent = {
import '../global.css'
-import { createRouter, createWebHistory, RouterScrollBehavior } from '../../src'
-import { RouteComponent } from '../../src/types'
+import {
+ RouteComponent,
+ createRouter,
+ createWebHistory,
+ RouterScrollBehavior,
+} from 'vue-router'
import { createApp, ref } from 'vue'
import { scrollWaiter } from './scrollWaiter'
-const bsStatus = require('../browserstack-send-status')
-
const baseURL = 'http://localhost:3000/modal'
module.exports = {
- ...bsStatus(),
-
'@tags': ['history'],
/** @type {import('nightwatch').NightwatchTest} */
browser
.url(baseURL + '/')
.waitForElementPresent('#app > *', 1000)
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.assert.not.visible('dialog')
- .assert.containsText('.child', 'child')
+ .assert.textContains('.child', 'child')
.click('li:nth-child(2) button')
.assert.urlEquals(baseURL + '/users/1')
.assert.visible('dialog')
- .assert.containsText('dialog', 'User #1')
- .assert.containsText('.child', 'child')
+ .assert.textContains('dialog', 'User #1')
+ .assert.textContains('.child', 'child')
.end()
},
browser
.url(baseURL + '/')
.waitForElementPresent('#app > *', 1000)
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.click('li:nth-child(2) button')
.assert.visible('dialog')
browser
.url(baseURL + '/')
.waitForElementPresent('#app > *', 1000)
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.click('li:nth-child(2) button')
.assert.visible('dialog')
.refresh()
.assert.urlEquals(baseURL + '/users/1')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.assert.visible('dialog')
.back()
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.assert.not.visible('dialog')
.end()
browser
.url(baseURL + '/')
.waitForElementPresent('#app > *', 1000)
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.assert.not.visible('dialog')
.click('li:nth-child(2) a')
.assert.urlEquals(baseURL + '/users/1')
- .assert.containsText('h1', 'User #1')
+ .assert.textContains('h1', 'User #1')
.click('#app a')
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.click('li:nth-child(3) a')
.assert.urlEquals(baseURL + '/users/2')
- .assert.containsText('h1', 'User #2')
+ .assert.textContains('h1', 'User #2')
.click('#app a')
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.click('li:nth-child(2) button')
.assert.urlEquals(baseURL + '/users/1')
.assert.visible('dialog')
.assert.urlEquals(baseURL + '/')
.back()
.assert.urlEquals(baseURL + '/users/2')
- .assert.containsText('h1', 'User #2')
+ .assert.textContains('h1', 'User #2')
.back()
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.back()
.assert.urlEquals(baseURL + '/users/1')
- .assert.containsText('h1', 'User #1')
+ .assert.textContains('h1', 'User #1')
.back()
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.forward()
.assert.urlEquals(baseURL + '/users/1')
- .assert.containsText('h1', 'User #1')
+ .assert.textContains('h1', 'User #1')
.forward()
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.forward()
.assert.urlEquals(baseURL + '/users/2')
- .assert.containsText('h1', 'User #2')
+ .assert.textContains('h1', 'User #2')
.forward()
.assert.urlEquals(baseURL + '/')
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.assert.not.visible('dialog')
.assert.urlEquals(baseURL + '/')
.forward()
browser
.url(baseURL + '/')
.waitForElementPresent('#app > *', 1000)
- .assert.containsText('h1', 'Home')
+ .assert.textContains('h1', 'Home')
.click('li:nth-child(2) button')
.assert.visible('dialog')
.click('dialog a')
.assert.urlEquals(baseURL + '/about')
- .assert.containsText('h1', 'About')
+ .assert.textContains('h1', 'About')
.back()
.assert.urlEquals(baseURL + '/users/1')
.assert.visible('dialog')
.forward()
.assert.urlEquals(baseURL + '/about')
- .assert.containsText('h1', 'About')
+ .assert.textContains('h1', 'About')
.back()
.assert.urlEquals(baseURL + '/users/1')
.assert.visible('dialog')
-const bsStatus = require('../browserstack-send-status')
-
const baseURL = 'http://localhost:3000/multi-app'
module.exports = {
- ...bsStatus(),
-
'@tags': ['history'],
/** @type {import('nightwatch').NightwatchTest} */
.waitForElementPresent('#app-1 > *', 1000)
.waitForElementPresent('#app-2 > *', 1000)
.waitForElementPresent('#app-3 > *', 1000)
- .assert.containsText('#popcount', '1')
- .assert.containsText('#guardcount', '1')
+ .assert.textContains('#popcount', '1')
+ .assert.textContains('#guardcount', '1')
// they should all be displaying the home page
- .assert.containsText('#app-1 .home', 'Home')
+ .assert.textContains('#app-1 .home', 'Home')
.assert.cssClassPresent(
'#app-1 li:nth-child(1) a',
'router-link-exact-active'
'router-link-active'
)
- .assert.containsText('#app-2 .home', 'Home')
+ .assert.textContains('#app-2 .home', 'Home')
.assert.cssClassPresent(
'#app-2 li:nth-child(1) a',
'router-link-exact-active'
'router-link-active'
)
- .assert.containsText('#app-3 .home', 'Home')
+ .assert.textContains('#app-3 .home', 'Home')
.assert.cssClassPresent(
'#app-3 li:nth-child(1) a',
'router-link-exact-active'
// navigation on app 1
.click('#app-1 li:nth-child(2) a')
- .assert.containsText('#guardcount', '2')
- .assert.containsText('#app-1 .user', 'User 1')
- .assert.containsText('#app-2 .user', 'User 1')
- .assert.containsText('#app-3 .user', 'User 1')
+ .assert.textContains('#guardcount', '2')
+ .assert.textContains('#app-1 .user', 'User 1')
+ .assert.textContains('#app-2 .user', 'User 1')
+ .assert.textContains('#app-3 .user', 'User 1')
// navigation on app 2
.click('#app-2 li:nth-child(3) a')
- .assert.containsText('#guardcount', '3')
- .assert.containsText('#app-1 .user', 'User 2')
- .assert.containsText('#app-2 .user', 'User 2')
- .assert.containsText('#app-3 .user', 'User 2')
+ .assert.textContains('#guardcount', '3')
+ .assert.textContains('#app-1 .user', 'User 2')
+ .assert.textContains('#app-2 .user', 'User 2')
+ .assert.textContains('#app-3 .user', 'User 2')
// should trigger the guard only once
.back()
- .assert.containsText('#guardcount', '4')
+ .assert.textContains('#guardcount', '4')
// unmounting apps should pause guards
// start by navigating 3 times
.click('#app-1 li:nth-child(1) a')
.click('#app-1 li:nth-child(2) a')
.click('#app-1 li:nth-child(1) a')
- .assert.containsText('#guardcount', '7')
+ .assert.textContains('#guardcount', '7')
.click('#unmount1')
.click('#unmount2')
- .assert.containsText('#guardcount', '7')
+ .assert.textContains('#guardcount', '7')
.back()
// one app is still mounted
- .assert.containsText('#guardcount', '8')
+ .assert.textContains('#guardcount', '8')
.click('#unmount3')
.back()
- .assert.containsText('#guardcount', '8')
+ .assert.textContains('#guardcount', '8')
// mounting again should add the listeners again
.click('#mount1')
// the initial navigation
- .assert.containsText('#guardcount', '9')
+ .assert.textContains('#guardcount', '9')
.click('#app-1 li:nth-child(2) a')
- .assert.containsText('#guardcount', '10')
+ .assert.textContains('#guardcount', '10')
.end()
},
// mount multiple apps and expect to have one listener only
.click('#mount1')
- .assert.containsText('#app-1 .home', 'Home')
+ .assert.textContains('#app-1 .home', 'Home')
// toggle multiple times
.click('#app-1 li:nth-child(2) a')
- .assert.containsText('#part-1 .count', '0')
+ .assert.textContains('#part-1 .count', '0')
.click('#app-1 li:nth-child(3) a')
- .assert.containsText('#part-1 .count', '1')
+ .assert.textContains('#part-1 .count', '1')
.click('#mount2')
- .assert.containsText('#app-2 .user', 'User')
+ .assert.textContains('#app-2 .user', 'User')
.click('#app-1 li:nth-child(2) a')
// first one keeps updating
- .assert.containsText('#part-1 .count', '2')
+ .assert.textContains('#part-1 .count', '2')
// second app only updated once
- .assert.containsText('#part-2 .count', '1')
+ .assert.textContains('#part-2 .count', '1')
.click('#mount3')
},
}
-const bsStatus = require('../browserstack-send-status')
-
module.exports = {
- ...bsStatus(),
-
'@tags': ['history'],
/** @type {import('nightwatch').NightwatchTest} */
.url('http://localhost:3000/scroll-behavior/')
.waitForElementPresent('#app > *', 1000)
.assert.count('li a', 6)
- .assert.containsText('.view', 'home')
+ .assert.textContains('.view', 'home')
.execute(function () {
window.scrollTo(0, 100)
})
.click('li:nth-child(2) a')
.waitForElementPresent('.view.foo', TIMEOUT)
- .assert.containsText('.view', 'foo')
+ .assert.textContains('.view', 'foo')
.execute(function () {
window.scrollTo(0, 200)
window.history.back()
})
.waitForElementPresent('.view.home', TIMEOUT)
- .assert.containsText('.view', 'home')
+ .assert.textContains('.view', 'home')
.assert.evaluate(
function () {
return window.pageYOffset === 100
window.history.forward()
})
.waitForElementPresent('.view.foo', TIMEOUT)
- .assert.containsText('.view', 'foo')
+ .assert.textContains('.view', 'foo')
.assert.evaluate(
function () {
return window.pageYOffset === 200
window.history.back()
})
.waitForElementPresent('.view.home', TIMEOUT)
- .assert.containsText('.view', 'home')
+ .assert.textContains('.view', 'home')
.assert.evaluate(
function () {
return window.pageYOffset === 50
-const bsStatus = require('../browserstack-send-status')
-
module.exports = {
- ...bsStatus(),
-
'@tags': [],
/** @type {import('nightwatch').NightwatchTest} */
-const bsStatus = require('../browserstack-send-status')
-
module.exports = {
- ...bsStatus(),
-
'@tags': ['no-headless'],
transitions: function (browser) {
.click('#toggle-transition')
.click('li:nth-child(7) a')
- .assert.containsText('.nested-view', 'foo')
+ .assert.textContains('.nested-view', 'foo')
.click('li:nth-child(1) a')
.waitForElementPresent('.view.home', 1000)
.click('li:nth-child(7) a')
- .assert.containsText('.nested-view', 'foo')
+ .assert.textContains('.nested-view', 'foo')
.end()
},
onBeforeRouteLeave,
RouterView,
useRoute,
-} from '../../src'
+} from 'vue-router'
import {
createApp,
ref,
import '../global.css'
-import { createRouter, createWebHistory } from '../../src'
-import { RouteComponent } from '../../src/types'
+import { RouteComponent, createRouter, createWebHistory } from 'vue-router'
import { createApp, defineComponent, nextTick, ref } from 'vue'
// const delay = (t: number) => new Promise(r => setTimeout(r, t))