[DELETE] A Teacher
arafaysaleem opened this issue · 0 comments
arafaysaleem commented
Summary
As an admin
, I should be able to delete teachers, so that I can remove old or inconsistent entries.
Acceptance Criteria
GIVEN an admin
is deleting a teacher in the app
WHEN the app hits the /teachers/:id
endpoint with a valid DELETE request, containing the path parameter:
:id
, 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:
- Create a new teacher with a POST request to
/teachers
endpoint and ensure status id200
is returned. - Make a DELETE request to
/teachers/:id
endpoint and ensure status id200
is returned. - A subsequent GET request to
/teachers/:id
endpoint should return a status id404
. - And the response headers'
id
parameter should contain "NotFoundException".
Scenario 2: DELETE request is unsuccessful due to unknown teacher id
- Make a DELETE request to
/teachers/:id
endpoint containing a non-existentteacher_id
. - Ensure a
404
status id is returned. - And the response headers'
id
parameter should contain "NotFoundException".
Scenario 3: DELETE request is forbidden
- Make a DELETE request to
/teachers/:id
endpoint using astudent
account token. - Ensure the endpoint returns a
403
forbidden status id. - And the response headers'
id
parameter should contain "ForbiddenException"
Scenario 4: DELETE request is unauthorized
- Send a DELETE request to
/teachers/:id
endpoint without an authorization token - Ensure a
401
unauthorized status id is returned. - And the response headers'
id
parameter should contain "TokenMissingException"