3 Commits

Author SHA1 Message Date
5f92144e0b Merge branch 'master' into feature/totp-generator 2023-08-25 21:58:11 -04:00
4e5bced49a Added totp-generator dependency 2023-08-25 21:56:39 -04:00
0dcee9190e Merge pull request #1 from enxoco/features/vitest
Added vitest and broke up components
2023-08-25 21:44:39 -04:00
4 changed files with 35 additions and 15 deletions

View File

@ -96,6 +96,7 @@ fieldset {
flex: 1;
font-weight: bold;
border: none;
min-width: 200px;
}
label {

View File

@ -1,3 +1,10 @@
import { displayTokenListItem } from "./TokenListItem";
import { tokens } from "./tokens";
export function tokenList() {
return `<form id="tokens"></form>`
const element = document.createElement("div");
element.classList.add("test");
return `<form id="tokens">${tokens.map((token) =>
displayTokenListItem(token.account, token.secret, element)
)}</form>`;
}

View File

@ -1,12 +1,24 @@
// @vitest-environment jsdom
import { expect, test } from 'vitest'
import { tokenListitem } from './tokenListItem'
import { expect, test } from "vitest";
import { displayTokenListItem } from "./tokenListItem";
test("displays correct account name", () => {
const div: HTMLDivElement = document.createElement("div");
displayTokenListItem("Github", "ABCDEFGHIJKLMNOP", div);
expect(div.innerHTML).toContain("Github");
});
test('displays correct account name', () => {
const div: HTMLDivElement = document.createElement('div')
tokenListitem('Github', 'ABCDEFGHIJKLMNOP', div);
expect(div.innerHTML).toContain('Github')
})
test("displays multiple list items", () => {
const div: HTMLDivElement = document.createElement("div");
displayTokenListItem("Github", "ABCDEFGHIJKLMNOP", div);
displayTokenListItem("Gmail", "ABCDEFGHIJKLMNOP", div);
const tokens = [
{ account: "Github", secret: "blahblahblah" },
{ account: "Gmail", secret: "blahblahblah" },
];
tokens.map((token) => displayTokenListItem(token.account, token.secret, div));
console.log("dv", div.innerHTML);
expect(div.innerHTML).toContain("Github");
expect(div.innerHTML).toContain("Gmail");
});

View File

@ -1,14 +1,14 @@
import {displayToken} from './token'
export function displayTokenListItem(account: string, secret: string, element: HTMLDivElement){
export function tokenListitem(account: string, secret: string, element: HTMLDivElement){
element.innerHTML += `<div class="fieldset-wrapper">
return element.innerHTML = `<div class="fieldset-wrapper">
<fieldset>
<label>Account</label>
<p data-test-id="account">${account}</p>
</fieldset>
<fieldset>
<label>Code</label>
<p data-test-id="secret">${token}</p>
<p data-test-id="secret">${displayToken(secret)}</p>
</fieldset>
</div>`;
}