+
+
+
+ Posts
+ Artists
+ Tags
+
+
+
+
+
+
+
+
+
diff --git a/frontend/test/router.spec.js b/frontend/test/router.spec.js
index c976fd3..338412f 100644
--- a/frontend/test/router.spec.js
+++ b/frontend/test/router.spec.js
@@ -17,13 +17,29 @@ describe('router', () => {
expect(router.resolve('/gallery').name).toBe('gallery')
})
- it('showcase, tags, artist resolve to named routes', () => {
+ it('showcase, artist resolve to named routes', () => {
expect(router.resolve('/showcase').name).toBe('showcase')
- expect(router.resolve('/tags').name).toBe('tags')
expect(router.resolve('/artist/some-slug').name).toBe('artist')
expect(router.resolve('/artist/some-slug').params.slug).toBe('some-slug')
})
+ it('browse hub is reachable and old axis paths redirect into its tabs', async () => {
+ expect(router.resolve('/browse').name).toBe('browse')
+
+ await router.push('/tags')
+ expect(router.currentRoute.value.name).toBe('browse')
+ expect(router.currentRoute.value.query.tab).toBe('tags')
+
+ await router.push('/artists')
+ expect(router.currentRoute.value.query.tab).toBe('artists')
+
+ // A posts deep link survives the redirect into the hub tab.
+ await router.push({ path: '/posts', query: { post_id: '7' } })
+ expect(router.currentRoute.value.name).toBe('browse')
+ expect(router.currentRoute.value.query.tab).toBe('posts')
+ expect(router.currentRoute.value.query.post_id).toBe('7')
+ })
+
it('series-read is an immersive route', () => {
const r = router.resolve('/series/5/read')
expect(r.name).toBe('series-read')