Skip to content

Commit 369ff64

Browse files
committed
feat: add deleteGuildRole api route definition and handler
1 parent 36e04eb commit 369ff64

File tree

5 files changed

+39
-0
lines changed

5 files changed

+39
-0
lines changed

src/controllers/guildRoleHandler.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import {
88
removeGuildRole,
99
getGuildRoleByName,
1010
getGuildRoles,
11+
deleteGuildRole,
1112
} from "../utils/guildRole";
1213
import {
1314
createNewRole,
@@ -22,6 +23,10 @@ import { DISCORD_BASE_URL } from "../constants/urls";
2223
import { GROUP_ROLE_ADD } from "../constants/requestsActions";
2324
import createDiscordHeaders from "../utils/createDiscordHeaders";
2425

26+
export async function deleteGuildRoleHandler(request: IRequest, env: env) {
27+
return await deleteGuildRole(env, "101");
28+
}
29+
2530
export async function createGuildRoleHandler(request: IRequest, env: env) {
2631
const authHeader = request.headers.get("Authorization");
2732
if (!authHeader) {

src/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
getGuildRoleByRoleNameHandler,
1414
getGuildRolesHandler,
1515
getGuildRolesPostHandler,
16+
deleteGuildRoleHandler,
1617
} from "./controllers/guildRoleHandler";
1718
import { getMembersInServerHandler } from "./controllers/getMembersInServer";
1819
import { changeNickname } from "./controllers/changeNickname";
@@ -34,6 +35,8 @@ router.get("/", async () => {
3435

3536
router.patch("/guild/member", changeNickname);
3637

38+
router.delete("/guildroles/:roleId", deleteGuildRoleHandler);
39+
3740
router.put("/roles/create", createGuildRoleHandler);
3841

3942
router.put("/roles/add", addGroupRoleHandler);

src/utils/guildRole.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,14 @@ import { GuildRole, Role } from "../typeDefinitions/role.types";
2323
import createDiscordHeaders from "./createDiscordHeaders";
2424
import { sleep } from "./sleep";
2525

26+
export async function deleteGuildRole(
27+
env: env,
28+
roleId: string,
29+
reason?: string
30+
) {
31+
return undefined;
32+
}
33+
2634
export async function createGuildRole(
2735
body: createNewRole,
2836
env: env,

tests/unit/handlers/guildRoleHandler.test.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import {
2+
deleteGuildRoleHandler,
23
getGuildRoleByRoleNameHandler,
34
getGuildRolesHandler,
45
getGuildRolesPostHandler,
@@ -347,3 +348,17 @@ describe("getGuildRolesPostHandler", () => {
347348
expect(jsonResponse).toEqual(responseConstants.INTERNAL_SERVER_ERROR);
348349
});
349350
});
351+
352+
describe("deleteGuildRoleHandler", () => {
353+
it("should return undefined", async () => {
354+
const mockRequest = generateDummyRequestObject({
355+
url: "/guildroles",
356+
params: {
357+
roleId: "101",
358+
},
359+
method: "DELETE",
360+
});
361+
const response = await deleteGuildRoleHandler(mockRequest, guildEnv);
362+
expect(response).toEqual(undefined);
363+
});
364+
});

tests/unit/utils/guildRole.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
getGuildRoles,
88
getGuildRoleByName,
99
mentionEachUserInMessage,
10+
deleteGuildRole,
1011
} from "../../../src/utils/guildRole";
1112
import {
1213
dummyAddRoleBody,
@@ -17,6 +18,13 @@ import {
1718
} from "../../fixtures/fixture";
1819
import { DiscordMessageResponse } from "../../../src/typeDefinitions/discordMessage.types";
1920

21+
describe("deleteGuildRole", () => {
22+
it("should return undefined", async () => {
23+
const response = await deleteGuildRole({}, "100");
24+
expect(response).toEqual(undefined);
25+
});
26+
});
27+
2028
describe("createGuildRole", () => {
2129
it("should pass the reason to discord as a X-Audit-Log-Reason header if provided", async () => {
2230
jest

0 commit comments

Comments
 (0)