26 lines
779 B
TypeScript
26 lines
779 B
TypeScript
import assert from "node:assert/strict"
|
|
import test from "node:test"
|
|
|
|
import {
|
|
generateEd25519SshCredentials,
|
|
isValidOpenSshEd25519PublicKey
|
|
} from "../../src/main/ssh-key"
|
|
|
|
test("generateEd25519SshCredentials returns a valid OpenSSH Ed25519 public key", () => {
|
|
for (let index = 0; index < 128; index += 1) {
|
|
const credentials = generateEd25519SshCredentials()
|
|
|
|
assert.equal(isValidOpenSshEd25519PublicKey(credentials.publicKey), true)
|
|
assert.match(credentials.privateKey, /BEGIN OPENSSH PRIVATE KEY/)
|
|
}
|
|
})
|
|
|
|
test("isValidOpenSshEd25519PublicKey rejects malformed short Ed25519 blobs", () => {
|
|
assert.equal(
|
|
isValidOpenSshEd25519PublicKey(
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAHyz0lt92O8s2fGZmYnrN5VyvQOC17VZieL0uZJtixeM="
|
|
),
|
|
false
|
|
)
|
|
})
|