57 lines
1.6 KiB
TypeScript
57 lines
1.6 KiB
TypeScript
|
// tslint:disable:no-unused-expression
|
||
|
import * as chai from "chai";
|
||
|
import { KeycloakAdminClient } from "../src/client.js";
|
||
|
import { credentials } from "./constants.js";
|
||
|
|
||
|
const expect = chai.expect;
|
||
|
|
||
|
describe("Organizations", () => {
|
||
|
let kcAdminClient: KeycloakAdminClient;
|
||
|
|
||
|
before(async () => {
|
||
|
kcAdminClient = new KeycloakAdminClient();
|
||
|
await kcAdminClient.auth(credentials);
|
||
|
});
|
||
|
|
||
|
it("retrieves empty organizations list", async () => {
|
||
|
const organizations = await kcAdminClient.organizations.find();
|
||
|
expect(organizations).to.be.ok;
|
||
|
expect(organizations).to.be.empty;
|
||
|
});
|
||
|
|
||
|
it("creates, updates, and removes an organization", async () => {
|
||
|
const myOrganization = {
|
||
|
name: "orga",
|
||
|
enabled: true,
|
||
|
domains: [
|
||
|
{
|
||
|
name: "orga.com",
|
||
|
},
|
||
|
],
|
||
|
};
|
||
|
|
||
|
const org = await kcAdminClient.organizations.create(myOrganization);
|
||
|
let allOrganizations = await kcAdminClient.organizations.find();
|
||
|
expect(allOrganizations).to.be.ok;
|
||
|
expect(allOrganizations).to.be.not.empty;
|
||
|
|
||
|
myOrganization.enabled = false;
|
||
|
await kcAdminClient.organizations.updateById(
|
||
|
{ id: org.id },
|
||
|
myOrganization,
|
||
|
);
|
||
|
|
||
|
allOrganizations = await kcAdminClient.organizations.find();
|
||
|
expect(allOrganizations).to.be.ok;
|
||
|
expect(allOrganizations.length).to.equal(1);
|
||
|
expect(allOrganizations[0].enabled).to.be.false;
|
||
|
|
||
|
await kcAdminClient.organizations.delById({
|
||
|
id: org.id,
|
||
|
});
|
||
|
allOrganizations = await kcAdminClient.organizations.find();
|
||
|
expect(allOrganizations).to.be.ok;
|
||
|
expect(allOrganizations).to.be.empty;
|
||
|
});
|
||
|
});
|