feat: add parser source dashboard and scheduling
Some checks failed
CI/CD Pipeline / Run Tests (pull_request) Successful in 1m13s
CI/CD Pipeline / Code Quality Checks (pull_request) Successful in 1m18s
CI/CD Pipeline / Build Docker Images (pull_request) Failing after 2m46s
CI/CD Pipeline / Push to Gitea Registry (pull_request) Has been skipped

This commit is contained in:
2026-04-27 23:36:28 +02:00
parent 199d871923
commit 14196a7549
96 changed files with 15014 additions and 309 deletions

View File

@@ -191,7 +191,7 @@ class LoginSerializerTest(TestCase):
def setUp(self):
self.login_data = {
"email": fake.email(),
"username": fake.user_name(),
"password": fake.password(length=12, special_chars=False),
}
@@ -200,16 +200,36 @@ class LoginSerializerTest(TestCase):
serializer = LoginSerializer(data=self.login_data)
self.assertTrue(serializer.is_valid())
def test_missing_email(self):
"""Test validation fails without email"""
def test_email_login_data_is_still_supported(self):
"""Test legacy email login payload is still valid."""
serializer = LoginSerializer(
data={
"email": fake.email(),
"password": fake.password(length=12, special_chars=False),
}
)
self.assertTrue(serializer.is_valid())
def test_login_alias_is_supported(self):
"""Test login alias can be used instead of username."""
serializer = LoginSerializer(
data={
"login": fake.user_name(),
"password": fake.password(length=12, special_chars=False),
}
)
self.assertTrue(serializer.is_valid())
def test_missing_identity(self):
"""Test validation fails without username, login or email."""
data = {"password": fake.password(length=12, special_chars=False)}
serializer = LoginSerializer(data=data)
self.assertFalse(serializer.is_valid())
self.assertIn("email", serializer.errors)
self.assertIn("username", serializer.errors)
def test_missing_password(self):
"""Test validation fails without password"""
data = {"email": fake.email()}
data = {"username": fake.user_name()}
serializer = LoginSerializer(data=data)
self.assertFalse(serializer.is_valid())
self.assertIn("password", serializer.errors)