Coverage for website/announcements/views.py: 100.00%

13 statements  

« prev     ^ index     » next       coverage.py v7.6.7, created at 2025-08-14 10:31 +0000

1from announcements.services import close_announcement 

2from django.http import HttpResponse, HttpResponseBadRequest 

3from django.views.decorators.http import require_POST 

4 

5 

6@require_POST 

7def close_announcement_view(request): 

8 """Close an announcement. 

9 

10 :param: request 

11 :return: Http 204 No Content if successful 

12 """ 

13 if "id" not in request.POST: 

14 return HttpResponseBadRequest("no id specified") 

15 try: 

16 announcement_id = int(request.POST["id"]) 

17 except ValueError: 

18 return HttpResponseBadRequest("no integer id specified") 

19 

20 close_announcement(request, announcement_id) 

21 return HttpResponse(status=204) # 204: No Content