ping is csrf exempt.

This commit is contained in:
Pēteris Caune 2015-07-22 21:41:15 +03:00
parent a099a498da
commit 965599c8eb
3 changed files with 12 additions and 8 deletions

View File

@ -4,11 +4,9 @@ from django.conf import settings
from django.contrib.auth import authenticate
from django.contrib.auth import login as auth_login, logout as auth_logout
from django.contrib.auth.models import User
from django.core.mail import send_mail
from django.core.urlresolvers import reverse
from django.http import HttpResponseBadRequest
from django.shortcuts import redirect, render
from django.template import loader
from hc.accounts.forms import EmailForm
from hc.api.models import Check

View File

@ -1,5 +1,4 @@
from django.contrib.auth.models import User
from django.test import TestCase
from django.test import Client, TestCase
from hc.api.models import Check
@ -7,10 +6,7 @@ from hc.api.models import Check
class PingTestCase(TestCase):
def test_it_works(self):
user = User(username="jdoe")
user.save()
check = Check(user=user)
check = Check()
check.save()
r = self.client.get("/ping/%s/" % check.code)
@ -18,3 +14,11 @@ class PingTestCase(TestCase):
same_check = Check.objects.get(code=check.code)
assert same_check.status == "up"
def test_post_works(self):
check = Check()
check.save()
csrf_client = Client(enforce_csrf_checks=True)
r = csrf_client.post("/ping/%s/" % check.code)
assert r.status_code == 200

View File

@ -3,10 +3,12 @@ import json
from django.contrib.humanize.templatetags.humanize import naturaltime
from django.http import HttpResponse, HttpResponseBadRequest
from django.utils import timezone
from django.views.decorators.csrf import csrf_exempt
from hc.api.models import Check
@csrf_exempt
def ping(request, code):
try:
check = Check.objects.get(code=code)