-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
from django import forms | ||
from django.core.exceptions import ValidationError | ||
from django.test import TestCase, tag | ||
|
||
from rest_framework import status | ||
from rest_framework.test import APIClient, APIRequestFactory, APITestCase | ||
Check failure on line 6 in tests/notificationprofile/destinations/test_base.py GitHub Actions / Lint PythonRuff (F401)
Check failure on line 6 in tests/notificationprofile/destinations/test_base.py GitHub Actions / Lint PythonRuff (F401)
|
||
|
||
from argus.auth.factories import PersonUserFactory | ||
from argus.notificationprofile.factories import DestinationConfigFactory, NotificationProfileFactory, TimeslotFactory | ||
Check failure on line 9 in tests/notificationprofile/destinations/test_base.py GitHub Actions / Lint PythonRuff (F401)
Check failure on line 9 in tests/notificationprofile/destinations/test_base.py GitHub Actions / Lint PythonRuff (F401)
|
||
from argus.notificationprofile.media.base import NotificationMedium | ||
from argus.notificationprofile.models import DestinationConfig, Media | ||
Check failure on line 11 in tests/notificationprofile/destinations/test_base.py GitHub Actions / Lint PythonRuff (F401)
|
||
from argus.notificationprofile.serializers import RequestDestinationConfigSerializer | ||
from argus.util.testing import connect_signals, disconnect_signals | ||
|
||
|
||
class DummyNotificationMedium(NotificationMedium): | ||
MEDIA_SETTINGS_KEY = "foo" | ||
MEDIA_NAME = "Dummy" | ||
MEDIA_SLUG = "dummy" | ||
|
||
class Form(forms.Form): | ||
foo = forms.IntegerField() | ||
|
||
|
||
@tag("unit") | ||
class NotificationMediumTests(TestCase): | ||
def setUp(self): | ||
self.user = PersonUserFactory() | ||
|
||
def test_validate_croaks_on_medium_not_in_database(self): | ||
data = {"settings": None} | ||
form = DummyNotificationMedium.validate_settings(data, self.user) | ||
# | ||
# def test_validate_settings_croaks_on_empty_settings(self): | ||
# data = {"settings": None} | ||
# with self.assertRaises(ValidationError): | ||
# DummmyNotificationMedium.validate_settings(data, self.user) | ||
# | ||
# def test_validate_settings_croaks_on_wrong_settings(self): | ||
# data = {"settings": {"bar": False}} | ||
# with self.assertRaises(ValidationError): | ||
# DummyNotificationMedium.validate_settings(data, self.user) | ||
# | ||
# def test_validate_spits_out_a_valid_form_that_includes_cleaned_settings_and_user(self): | ||
# data = { | ||
# "media": DummyNotificationMedium.MEDIA_SLUG, | ||
# "settings": {"foo": 1} | ||
# } | ||
# form = DummyNotificationMedium.validate(data, self.user) | ||
# self.assertEqual(form.cleaned_data["settings"], data["settings"]) | ||
# self.assertEqual(form.cleaned_data["user"], self.user) | ||
# | ||
# def test_validate_croaks_on_invalid_input(self): | ||
# data = { | ||
# "media": "does not exist", | ||
# "settings": {"foo": 1} | ||
# } | ||
# form = DummyNotificationMedium.validate(data, self.user) | ||
# self.assertEqual(form.cleaned_data["settings"], data["settings"]) | ||
# self.assertEqual(form.cleaned_data["user"], self.user) |