• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Seniru / defendxstore / 14811914056

03 May 2025 02:47PM UTC coverage: 39.441% (+0.02%) from 39.426%
14811914056

push

github

Siyumika
Merge branch 'VenuGH-master'

100 of 475 branches covered (21.05%)

Branch coverage included in aggregate %.

5 of 21 new or added lines in 4 files covered. (23.81%)

3 existing lines in 2 files now uncovered.

606 of 1315 relevant lines covered (46.08%)

8.27 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

19.15
/backend/src/controllers/forums.js
1
const { StatusCodes } = require("http-status-codes")
3✔
2
const createResponse = require("../utils/createResponse")
3✔
3
const ForumThread = require("../models/ForumThread")
3✔
4

5
const createThread = async (req, res, next) => {
3✔
6
    try {
×
7
        const { title, content, category } = req.body
×
8
        const user = req.user
×
NEW
9
        console.log(user)
×
UNCOV
10
        const thread = new ForumThread({
×
11
            title,
12
            content,
13
            createdDate: Date.now(),
14
            edittedDate: null,
15
            category,
16
            createdUser: user.username
17
    })
18
        await thread.save()
×
NEW
19
        return createResponse(res, StatusCodes.CREATED, thread)
×
20
    } catch (error) {
21
        next(error)
×
22
    }
23
}
24

25
const getAllThreads = async (req, res, next) => {
3✔
26
    try {
×
27
        const user = req.user
×
28
        const forums = await ForumThread.find({}).exec()
×
29
        return createResponse(res, StatusCodes.OK, forums)
×
30
    } catch (error) {
31
        next(error)
×
32
    }
33
}
34

35
const getThread = async (req, res, next) => {
3✔
36
    try {
×
37
        const { threadId } = req.params
×
38
        const thread = await ForumThread.find({ _id: threadId }).exec()
×
39
        if (!thread) return createResponse(res, StatusCodes.NOT_FOUND, "Thread not found")
×
40
        return createResponse(res, StatusCodes.OK, thread)
×
41
    } catch (error) {
42
        next(error)
×
43
    }
44
}
45

46
const editThread = async (req, res, next) => {
3✔
47
    try {
×
48
        const { threadId } = req.params
×
49
        const { title, content, category } = req.body
×
50
        const thread = await ForumThread.findOneAndUpdate(
×
51
            { _id: threadId },
52
            { title, content, category, editedDate: Date.now() },
53
        ).exec()
54
        if (!thread) return createResponse(res, StatusCodes.NOT_FOUND, "Thread not found")
×
55
        return createResponse(res, StatusCodes.OK, "Thread updated")
×
56
    } catch (error) {
57
        next(error)
×
58
    }
59
}
60

61
const deleteThread = async (req, res, next) => {
3✔
62
    try {
×
63
        const { threadId } = req.params
×
64
        const forumThread = await ForumThread.findOneAndDelete({ _id: threadId }).exec()
×
65
        if (!forumThread) return createResponse(res, StatusCodes.NOT_FOUND, "Thread not found")
×
66
        return createResponse(res, StatusCodes.OK, "Thread deleted")
×
67
    } catch (error) {
68
        next(error)
×
69
    }
70
}
71

72
module.exports = {
3✔
73
    createThread,
74
    getAllThreads,
75
    getThread,
76
    editThread,
77
    deleteThread,
78
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc