corde
Version:
A simple library for Discord bot tests
73 lines (55 loc) • 1.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true,
});
exports.roleUtils = void 0;
const utils_1 = require("../utils");
class RoleUtils {
createExpectedMessageForRoleData(roleIdentifier) {
if (!roleIdentifier) {
return null;
}
if (roleIdentifier.id && roleIdentifier.name) {
return `role with id ${roleIdentifier.id} or name '${roleIdentifier.name}'`;
}
if (roleIdentifier !== null && roleIdentifier !== void 0 && roleIdentifier.id) {
return `role with id ${roleIdentifier.id}`;
}
if (roleIdentifier !== null && roleIdentifier !== void 0 && roleIdentifier.name) {
return `role with name '${roleIdentifier.name}'`;
}
return null;
}
getErrorForUndefinedRoleData(roleIdentifier) {
if (!roleIdentifier) {
return "expected: data to identifier the role (id or name)\n" + "received: null";
}
return null;
}
validateRole(role, roleIdentifier) {
if (!role) {
const message = roleUtils.createExpectedMessageForRoleData(roleIdentifier);
if (message) {
return `expected: ${message}\n` + "received: null";
}
return (
"expected: a id or a name to identify the role\n" +
`received: ${(0, utils_1.formatObject)(roleIdentifier)}`
);
}
return undefined;
}
getRoleData(roleIdentifier) {
let data;
if (typeof roleIdentifier === "string") {
data = {
id: roleIdentifier,
};
} else {
data = roleIdentifier;
}
return data;
}
}
const roleUtils = new RoleUtils();
exports.roleUtils = roleUtils;