36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
import json
|
|
|
|
from django.contrib.auth import get_user_model
|
|
from django.test import TestCase
|
|
from django.urls import reverse
|
|
from rest_framework.test import APIClient, APIRequestFactory, APITestCase
|
|
|
|
|
|
class TestAcceptSubscription(TestCase):
|
|
def setUp(self):
|
|
self.factory = APIRequestFactory()
|
|
self.client = APIClient()
|
|
self.user = get_user_model().objects.create_user(username='john', email='jlennon@beatles.com', password='glass onion')
|
|
self.client.force_authenticate(self.user)
|
|
|
|
def tearDown(self):
|
|
self.user.delete()
|
|
|
|
def test_accept_sub(self):
|
|
payload = {
|
|
"status_type": "subscribe",
|
|
"subscription": {
|
|
"endpoint": "example.com",
|
|
"keys": {
|
|
"auth": "barfoo",
|
|
"p256dh": "foobar"
|
|
}
|
|
},
|
|
"browser": "firefox"
|
|
}
|
|
|
|
url = reverse("save_webpush_info")
|
|
response = self.client.post(url, data=json.dumps(payload), content_type='application/json')
|
|
|
|
self.assertEqual(response.status_code, 201)
|