mirror of
https://github.com/bitwarden/browser
synced 2026-02-13 23:13:36 +00:00
Add unit test to verify ssh key mapping/import
This commit is contained in:
committed by
Bernd Schoolmann
parent
950ef83d4c
commit
09aa962819
@@ -26,6 +26,7 @@ import { SanitizedExport } from "./test-data/onepassword-1pux/sanitized-export";
|
||||
import { SecureNoteData } from "./test-data/onepassword-1pux/secure-note";
|
||||
import { ServerData } from "./test-data/onepassword-1pux/server";
|
||||
import { SoftwareLicenseData } from "./test-data/onepassword-1pux/software-license";
|
||||
import { SSH_KeyData } from "./test-data/onepassword-1pux/ssh-key";
|
||||
import { SSNData } from "./test-data/onepassword-1pux/ssn";
|
||||
import { WirelessRouterData } from "./test-data/onepassword-1pux/wireless-router";
|
||||
|
||||
@@ -658,6 +659,26 @@ describe("1Password 1Pux Importer", () => {
|
||||
validateCustomField(cipher.fields, "medication notes", "multiple times a day");
|
||||
});
|
||||
|
||||
it("should parse category 114 - SSH Key", async () => {
|
||||
const importer = new OnePassword1PuxImporter();
|
||||
const jsonString = JSON.stringify(SSH_KeyData);
|
||||
const result = await importer.parse(jsonString);
|
||||
expect(result != null).toBe(true);
|
||||
const cipher = result.ciphers.shift();
|
||||
expect(cipher.type).toEqual(CipherType.SSHKey);
|
||||
expect(cipher.name).toEqual("Some SSH Key");
|
||||
expect(cipher.notes).toEqual("SSH Key Note");
|
||||
expect(cipher.sshKey.privateKey).toEqual(
|
||||
"-----BEGIN PRIVATE KEY-----\nMFECAQEwBQYDK2VwBCIEIDn1BgTbZ/5UUeGLIfVV+qLBOvEsS3XMK6Twzw2Dkukq\ngSEAlrKdxRVVQrBndt4bHEZAz3xsymfM9Vf2QfZ823QxUbM=\n-----END PRIVATE KEY-----\n",
|
||||
);
|
||||
expect(cipher.sshKey.publicKey).toEqual(
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJayncUVVUKwZ3beGxxGQM98bMpnzPVX9kH2fNt0MVGz",
|
||||
);
|
||||
expect(cipher.sshKey.keyFingerprint).toEqual(
|
||||
"SHA256:/9qSxXuic8kaVBhwv3c8PuetiEpaOgIp7xHNCbcSuN8",
|
||||
);
|
||||
});
|
||||
|
||||
it("should create folders", async () => {
|
||||
const importer = new OnePassword1PuxImporter();
|
||||
const result = await importer.parse(SanitizedExportJson);
|
||||
|
||||
83
libs/importer/spec/test-data/onepassword-1pux/ssh-key.ts
Normal file
83
libs/importer/spec/test-data/onepassword-1pux/ssh-key.ts
Normal file
@@ -0,0 +1,83 @@
|
||||
import { ExportData } from "../../../src/importers/onepassword/types/onepassword-1pux-importer-types";
|
||||
|
||||
export const SSH_KeyData: ExportData = {
|
||||
accounts: [
|
||||
{
|
||||
attrs: {
|
||||
accountName: "1Password Customer",
|
||||
name: "1Password Customer",
|
||||
avatar: "",
|
||||
email: "username123123123@gmail.com",
|
||||
uuid: "TRIZ3XV4JJFRXJ3BARILLTUA6E",
|
||||
domain: "https://my.1password.com/",
|
||||
},
|
||||
vaults: [
|
||||
{
|
||||
attrs: {
|
||||
uuid: "pqcgbqjxr4tng2hsqt5ffrgwju",
|
||||
desc: "Just test entries",
|
||||
avatar: "ke7i5rxnjrh3tj6uesstcosspu.png",
|
||||
name: "T's Test Vault",
|
||||
type: "U",
|
||||
},
|
||||
items: [
|
||||
{
|
||||
uuid: "kf7wevmfiqmbgyao42plvgrasy",
|
||||
favIndex: 0,
|
||||
createdAt: 1724868152,
|
||||
updatedAt: 1724868152,
|
||||
state: "active",
|
||||
categoryUuid: "114",
|
||||
details: {
|
||||
loginFields: [],
|
||||
notesPlain: "SSH Key Note",
|
||||
sections: [
|
||||
{
|
||||
title: "SSH Key Section",
|
||||
fields: [
|
||||
{
|
||||
title: "private key",
|
||||
id: "private_key",
|
||||
value: {
|
||||
sshKey: {
|
||||
privateKey:
|
||||
"-----BEGIN PRIVATE KEY-----\nMFECAQEwBQYDK2VwBCIEIDn1BgTbZ/5UUeGLIfVV+qLBOvEsS3XMK6Twzw2Dkukq\ngSEAlrKdxRVVQrBndt4bHEZAz3xsymfM9Vf2QfZ823QxUbM=\n-----END PRIVATE KEY-----\n",
|
||||
metadata: {
|
||||
privateKey:
|
||||
"-----BEGIN PRIVATE KEY-----\nMFECAQEwBQYDK2VwBCIEIDn1BgTbZ/5UUeGLIfVV+qLBOvEsS3XMK6Twzw2Dkukq\ngSEAlrKdxRVVQrBndt4bHEZAz3xsymfM9Vf2QfZ823QxUbM=\n-----END PRIVATE KEY-----\n",
|
||||
publicKey:
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJayncUVVUKwZ3beGxxGQM98bMpnzPVX9kH2fNt0MVGz",
|
||||
fingerprint: "SHA256:/9qSxXuic8kaVBhwv3c8PuetiEpaOgIp7xHNCbcSuN8",
|
||||
keyType: "ed25519",
|
||||
},
|
||||
},
|
||||
},
|
||||
guarded: true,
|
||||
multiline: false,
|
||||
dontGenerate: false,
|
||||
inputTraits: {
|
||||
keyboard: "default",
|
||||
correction: "default",
|
||||
capitalization: "default",
|
||||
},
|
||||
},
|
||||
],
|
||||
hideAddAnotherField: true,
|
||||
},
|
||||
],
|
||||
passwordHistory: [],
|
||||
},
|
||||
overview: {
|
||||
subtitle: "SHA256:/9qSxXuic8kaVBhwv3c8PuetiEpaOgIp7xHNCbcSuN8",
|
||||
icons: null,
|
||||
title: "Some SSH Key",
|
||||
url: "",
|
||||
watchtowerExclusions: null,
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
};
|
||||
Reference in New Issue
Block a user