Page MenuHomeSealhub

user-roles.subtest.js
No OneTemporary

user-roles.subtest.js

const locreq = require("locreq")(__dirname);
const axios = require("axios");
const assert = require("assert");
const { with_running_app } = locreq("test_utils/with-test-app.js");
const { assert_throws_async } = locreq("test_utils");
describe("user-roles", () => {
function create_a_user(app, username) {
return app.run_action(
new app.Sealious.SuperContext(),
["collections", "users"],
"create",
{
username,
email: `${username}@example.com`,
password: "password",
}
);
}
it("rejects when given an empty role", async () =>
with_running_app(async ({ app, base_url }) => {
const user = await create_a_user(app, "super_user");
await assert_throws_async(
() =>
axios.post(`${base_url}/api/v1/collections/user-roles`, {
user: user.id,
}),
e => {
assert(
e.response.data.data.role.message ===
"Missing value for field 'role'"
);
}
);
}));
it("accepts correct dataset", async () =>
with_running_app(async ({ app, base_url, rest_api }) => {
const user = await create_a_user(app, "special_user");
const session = await rest_api.login({
username: "special_user",
password: "password",
});
const response = await axios.post(
`${base_url}/api/v1/collections/user-roles`,
{
user: user.id,
role: "admin",
},
session
);
assert.equal(response.status, 201);
}));
});

File Metadata

Mime Type
text/plain
Expires
Sat, Sep 20, 22:29 (12 h, 15 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
949717
Default Alt Text
user-roles.subtest.js (1 KB)

Event Timeline