Skip to content

Commit 23ca527

Browse files
committed
add test
1 parent a9b1b4f commit 23ca527

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

tests/unit/page.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
const path = require('path')
22
const cheerio = require('cheerio')
33
const Page = require('../../lib/page')
4-
const allVersionIds = Object.keys(require('../../lib/all-versions'))
4+
const prerenderedObjects = require('../../lib/graphql/static/prerendered-objects')
5+
const allVersions = require('../../lib/all-versions')
56
const enterpriseServerReleases = require('../../lib/enterprise-server-releases')
67
const nonEnterpriseDefaultVersion = require('../../lib/non-enterprise-default-version')
78
// get the `free-pro-team` segment of `free-pro-team@latest`
@@ -90,6 +91,13 @@ describe('Page class', () => {
9091
expect($(`a[href="/en/${nonEnterpriseDefaultVersion}/articles/about-pull-requests"]`).length).toBeGreaterThan(0)
9192
})
9293

94+
test('rewrites links on prerendered GraphQL page include the current language prefix and version', async () => {
95+
const graphqlVersion = allVersions[nonEnterpriseDefaultVersion].miscVersionName
96+
const $ = cheerio.load(prerenderedObjects[graphqlVersion].html)
97+
expect($('a[href^="/graphql/reference/input-objects"]').length).toBe(0)
98+
expect($(`a[href^="/en/${nonEnterpriseDefaultVersion}/graphql/reference/input-objects"]`).length).toBeGreaterThan(0)
99+
})
100+
93101
test('rewrites links in the intro to include the current language prefix and version', async () => {
94102
const page = new Page(opts)
95103
page.rawIntro = '[Pull requests](/articles/about-pull-requests)'
@@ -151,7 +159,7 @@ describe('Page class', () => {
151159
const context = {
152160
currentVersion: `enterprise-server@${enterpriseServerReleases.latest}`,
153161
currentLanguage: 'en',
154-
enterpriseServerVersions: allVersionIds.filter(id => id.startsWith('enterprise-server@'))
162+
enterpriseServerVersions: Object.keys(allVersions).filter(id => id.startsWith('enterprise-server@'))
155163
}
156164
let rendered = await page.render(context)
157165
let $ = cheerio.load(rendered)

0 commit comments

Comments
 (0)