UNPKG

@digital-blueprint/lunchlottery-app

Version:

[GitHub Repository](https://github.com/digital-blueprint/lunchlottery-app) | [npmjs package](https://www.npmjs.com/package/@digital-blueprint/lunchlottery-app) | [Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/lunchlottery-app/)

45 lines (40 loc) 1.13 kB
import {assert} from 'chai'; import {Router} from '../src/router.js'; suite('router', () => { test('basics', async () => { const routes = [ { name: 'foo', path: '', action: (context) => { return {bar: false}; }, }, { name: 'bar', path: '/bar', action: (context) => { return {bar: true}; }, }, ]; let myState = {}; const router = new Router(routes, { routeName: 'foo', getState: () => { return myState; }, setState: (state) => { myState = state; }, getDefaultState: () => { return {}; }, }); await router.setStateFromCurrentLocation(); await router.update(); await router.updateFromUrl('/bar?foo=bar#quux'); assert.equal(myState.bar, true); assert.equal(router.getPathname(), '/'); }); });