Files

52 lines
1.7 KiB
TypeScript

import { AbstractLinks } from '../../src/links/links'
import { LinuxLinks } from '../../src/links/linux-links'
import { SemVer } from 'semver'
test.concurrent('Linux Cuda versions in descending order', async () => {
const wLinks: AbstractLinks = LinuxLinks.Instance
const versions = wLinks.getAvailableLocalCudaVersions()
for (let i = 0; i < versions.length - 1; i++) {
const versionA: SemVer = versions[i]
const versionB: SemVer = versions[i + 1]
expect(versionA.compare(versionB)).toBe(1) // A should be greater than B
}
})
test.concurrent(
'Linux Cuda version to URL map contains valid URLs',
async () => {
for (const version of LinuxLinks.Instance.getAvailableLocalCudaVersions()) {
const url: URL =
await LinuxLinks.Instance.getLocalURLFromCudaVersion(version)
expect(url).toBeInstanceOf(URL)
}
}
)
test.concurrent('There is at least linux 1 version url pair', async () => {
expect(
LinuxLinks.Instance.getAvailableLocalCudaVersions().length
).toBeGreaterThanOrEqual(1)
})
test.concurrent(
'Local Linux links should start with https://developer.(download.)nvidia.com and end with .run',
async () => {
const versions = LinuxLinks.Instance.getAvailableLocalCudaVersions()
const filteredVersions = versions.filter((version) => {
return (
version.version !== '10.0.130' &&
version.version !== '9.2.148' &&
version.version !== '8.0.61'
)
})
for (const version of filteredVersions) {
const url: URL =
await LinuxLinks.Instance.getLocalURLFromCudaVersion(version)
expect(url.toString()).toMatch(
/^https:\/\/developer\.(download\.)?nvidia\.com.+\.run$/
)
}
}
)