[DELETE] A Class
arafaysaleem opened this issue · 0 comments
arafaysaleem commented
Summary
As a student
, I should be able to delete classes, so that I can remove old or inconsistent entries.
Acceptance Criteria
GIVEN a student
is deleting an class in the app
WHEN the app hits the /classes/:term_id/:class_erp
endpoint with a valid DELETE request, containing the path parameter:
:class_erp
, the unique id of the entity being removed.
THEN the app should receive a status 200
AND in the response, the following information should be returned:
- header message indicating delete operation success
Sample Request/Sample Response
headers: {
error: 0,
message: "The specified item was deleted successfully"
}
body: {}
Resources
- Development URL: {Here goes a URL to the feature on development API}
- Production URL: {Here goes a URL to the feature on production API}
Dev Notes
{Some complementary notes if necessary}
Testing Notes
Scenario 1: DELETE request is successful (Admin):
- Create a new class with a POST request to
/classes
endpoint using anadmin
account token and ensure a200
status code is returned. - Make a DELETE request to
/classes/:term_id/:class_erp
endpoint using anadmin
account token and ensure a200
status code is returned. - A subsequent GET request to
/classes/:term_id/:class_erp
endpoint should return a status code404
. - And the response headers'
code
parameter should contain "NotFoundException".
Scenario 2: DELETE request is unsuccessful due to unknown class_erp
- Make a DELETE request to
/classes/:term_id/:class_erp
endpoint containing a non-existentclass_erp
. - Ensure a
404
status code is returned. - And the response headers'
code
parameter should contain "NotFoundException".
Scenario 3: DELETE request is forbidden
- Make a DELETE request to
/classes/:term_id/:class_erp
endpoint for usingstudent
account token. - Ensure the endpoint returns a
403
forbidden status code. - And the response headers'
code
parameter should contain "ForbiddenException"
Scenario 4: DELETE request is unauthorized
- Send a DELETE request to
/classes/:term_id/:class_erp
endpoint without an authorization token - Ensure a
401
unauthorized status code is returned. - And the response headers'
code
parameter should contain "TokenMissingException"