"settings",
]
- def update(self, instance, validated_data):
- super().update(instance, validated_data)
- return instance
-
def create(self, validated_data):
ui_settings = UiSettings.objects.update_or_create(
user=validated_data.get("user"),
"#000000",
)
- def test_ui_settings(self):
- test_user = User.objects.create_superuser(username="test")
- self.client.force_authenticate(user=test_user)
- response = self.client.get("/api/ui_settings/", format="json")
+class TestApiUiSettings(DirectoriesMixin, APITestCase):
+
+ ENDPOINT = "/api/ui_settings/"
+
+ def setUp(self):
+ super().setUp()
+ self.test_user = User.objects.create_superuser(username="test")
+ self.client.force_authenticate(user=self.test_user)
+
+ def test_api_get_ui_settings(self):
+ response = self.client.get(self.ENDPOINT, format="json")
self.assertEqual(response.status_code, 200)
self.assertDictEqual(
response.data["settings"],
{},
)
+ def test_api_set_ui_settings(self):
settings = {
"settings": {
"dark_mode": {
}
response = self.client.post(
- "/api/ui_settings/",
+ self.ENDPOINT,
json.dumps(settings),
content_type="application/json",
)
self.assertEqual(response.status_code, 200)
- response = self.client.get("/api/ui_settings/", format="json")
+ response = self.client.get(self.ENDPOINT, format="json")
self.assertEqual(response.status_code, 200)
self.assertDictEqual(
)
-class TestApiAuth(APITestCase):
+class TestApiAuth(DirectoriesMixin, APITestCase):
def test_auth_required(self):
d = Document.objects.create(title="Test")
self.assertIn("X-Version", response)
-class TestRemoteVersion(APITestCase):
+class TestRemoteVersion(DirectoriesMixin, APITestCase):
ENDPOINT = "/api/remote_version/"
def setUp(self):
dirs.scratch_dir = tempfile.mkdtemp()
dirs.media_dir = tempfile.mkdtemp()
dirs.consumption_dir = tempfile.mkdtemp()
+ dirs.static_dir = tempfile.mkdtemp()
dirs.index_dir = os.path.join(dirs.data_dir, "index")
dirs.originals_dir = os.path.join(dirs.media_dir, "documents", "originals")
dirs.thumbnail_dir = os.path.join(dirs.media_dir, "documents", "thumbnails")
CONSUMPTION_DIR=dirs.consumption_dir,
LOGGING_DIR=dirs.logging_dir,
INDEX_DIR=dirs.index_dir,
+ STATIC_ROOT=dirs.static_dir,
MODEL_FILE=os.path.join(dirs.data_dir, "classification_model.pickle"),
MEDIA_LOCK=os.path.join(dirs.media_dir, "media.lock"),
)
shutil.rmtree(dirs.data_dir, ignore_errors=True)
shutil.rmtree(dirs.scratch_dir, ignore_errors=True)
shutil.rmtree(dirs.consumption_dir, ignore_errors=True)
+ shutil.rmtree(dirs.static_dir, ignore_errors=True)
dirs.settings_override.disable()