AbdulElahGwaith's picture
Upload folder using huggingface_hub
88df9e4 verified
import { describe, expect, test } from 'vitest'
import { supported } from '@/versions/lib/enterprise-server-releases'
import { allVersionKeys, allVersions } from '@/versions/lib/all-versions'
import { convertVersionsToFrontmatter } from '../lib/update-markdown'
describe('frontmatter versions are generated correctly from automated data', () => {
test('non-continuous enterprise server versions', async () => {
const fromVersions = allVersionKeys.filter(
(version) =>
version !== `enterprise-server@${supported[0]}` &&
version !== `enterprise-server@${supported[2]}`,
)
const expectedEnterpriseServerVersions = fromVersions
.map(
(version) =>
version.includes('enterprise-server@') && version.replace('enterprise-server@', ''),
)
.filter(Boolean)
.map((version) => `=${version}`)
.join(' || ')
const expectedVersions = {
fpt: '*',
ghec: '*',
ghes: expectedEnterpriseServerVersions,
}
const toFrontmatter = await convertVersionsToFrontmatter(fromVersions)
expect(toFrontmatter).toEqual(expectedVersions)
})
test('less than the latest enterprise server version', async () => {
const fromVersions = Object.values(allVersions)
.filter(
(version) =>
!(version.currentRelease === version.latestRelease && version.hasNumberedReleases),
)
.map((version) => version.version)
const nextLatestRelease = supported[1]
const expectedVersions = {
fpt: '*',
ghec: '*',
ghes: `<=${nextLatestRelease}`,
}
const toFrontmatter = await convertVersionsToFrontmatter(fromVersions)
expect(toFrontmatter).toEqual(expectedVersions)
})
test('greater than the oldest enterprise server version', async () => {
const oldestRelease = supported[supported.length - 1]
const fromVersions = Object.values(allVersions)
.filter((version) => !(version.version === `enterprise-server@${oldestRelease}`))
.map((version) => version.version)
const secondOldestRelease = supported[supported.length - 2]
const expectedVersions = {
fpt: '*',
ghec: '*',
ghes: `>=${secondOldestRelease}`,
}
const toFrontmatter = await convertVersionsToFrontmatter(fromVersions)
expect(toFrontmatter).toEqual(expectedVersions)
})
test('no non-numbered release versions', async () => {
const fromVersions = Object.values(allVersions)
.filter((version) => version.hasNumberedReleases)
.map((version) => version.version)
const expectedVersions = {
ghes: `*`,
}
const toFrontmatter = await convertVersionsToFrontmatter(fromVersions)
expect(toFrontmatter).toEqual(expectedVersions)
})
})