Page MenuHomeSealhub

password.subtest.ts
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

password.subtest.ts

import assert from "assert";
import { with_running_app } from "../../../test_utils/with-test-app.js";
import SecureHasher from "../../../utils/secure-hasher.js";
import App from "../../app.js";
describe("password", () => {
const password = "it-really-doesnt-matter";
const username = "some-user";
let user_id: string;
async function setup(app: App) {
user_id = (
await app.run_action(
new app.Sealious.SuperContext(),
["collections", "users"],
"create",
{
username,
password,
email: "some-user@example.com",
}
)
).id;
}
it("Hides password", async () =>
with_running_app(async ({ app, rest_api }) => {
await setup(app);
const session = await rest_api.login({
username,
password,
});
assert.ok(
!(
await rest_api.get(
`/api/v1/collections/users/${user_id}`,
session
)
).password
);
assert.ok(
!(
await app.run_action(
new app.Sealious.SuperContext(),
["collections", "users", user_id],
"show"
)
).password
);
}));
it("Stores correct password value", async () =>
with_running_app(async ({ app }) => {
await setup(app);
const hashed_password = (
await app.Datastore.find("users", {
sealious_id: user_id,
})
)[0].password;
assert.ok(await SecureHasher.matches(password, hashed_password));
assert.ok(
!(await SecureHasher.matches("wrong-password", hashed_password))
);
assert.ok(!(await SecureHasher.matches("", hashed_password)));
}));
});

File Metadata

Mime Type
application/javascript
Expires
Sat, Nov 7, 16:52 (12 h, 9 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1181962
Default Alt Text
password.subtest.ts (1 KB)

Event Timeline