assigment completed - #49
Open
hello674583 wants to merge 2 commits into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request: Add Comprehensive Test Coverage, Bug Fixes, and Task Assignment Feature
Summary
This pull request improves the reliability and maintainability of the Task Manager API by adding comprehensive automated tests, fixing identified bugs, and implementing a new task assignment feature.
Changes Made
✅ Added Unit Tests
Implemented unit tests for the
taskServicecovering:Task creation
Retrieving all tasks
Finding tasks by ID
Filtering tasks by status
Updating tasks
Deleting tasks
Completing tasks
Pagination
Statistics
Task assignment
✅ Added Integration Tests
Implemented API integration tests using Supertest for all existing endpoints:
GET /tasksGET /tasks?status=GET /tasks?page=&limit=POST /tasksPUT /tasks/:idDELETE /tasks/:idPATCH /tasks/:id/completeGET /tasks/statsThe tests cover both successful requests and common error scenarios such as invalid input and missing resources.
✅ Bug Fixes
Pagination Bug
Fixed incorrect pagination offset calculation.
Updated the offset formula from
page * limitto(page - 1) * limitso the first page returns the correct records.Task Completion Bug
Fixed an issue where completing a task unintentionally reset its priority to
"medium".Task completion now updates only the task status and completion timestamp while preserving the existing priority.
✅ New Feature
Implemented a new endpoint:
Features include:
Assigns an assignee to an existing task.
Returns the updated task.
Returns
404 Not Foundif the task does not exist.Returns
400 Bad Requestfor invalid or empty assignee values.Added both unit and integration tests for the new endpoint.
Test Coverage
Coverage results:
Metric | Coverage -- | -- Statements | 92.1% Branches | 77.9% Functions | 93.1% Lines | 91.36%A total of 35 automated tests have been added, all of which are passing.
Testing
Executed:
Result:
✅ 35/35 tests passing
✅ All endpoints verified
✅ New feature fully tested
✅ Existing bugs identified and resolved
Notes
If more time were available, I would add additional branch coverage for validation edge cases, performance tests, and concurrency scenarios to further improve the robustness of the API.