mirror of
https://github.com/retspen/webvirtcloud
synced 2026-11-11 12:46:49 +00:00
test: no seeded admin password, settings changed only for a test, no local libvirt by default
- create_admin had a branch for `"test" in sys.argv` that gave the admin the password "admin"; 17 places signed in with it, and failed silently with ADMIN_PASSWORD set in the environment. The tests now make their own superuser and force_login it, and the shipped code has no test branch: the test runner gives migrate a password (also when ADMIN_PASSWORD is set but empty), so no data/admin_password is written into the checkout. - AccountsTestCase builds its rows in setUpTestData instead of setUpClass and deleting them by hand. - accounts tests set OTP_ENABLED with override_settings instead of assigning settings (one assignment was never undone, so later tests in the process ran with OTP on), and undo their app_settings change. The OTP login class reloads the URLs again only after the setting is off. - computes/tests/test_views.py reached the machine's own libvirt (localhost over the socket) when TEST_LIBVIRT_HOST was unset; its live tests now run only with TEST_LIBVIRT_HOST, like the other live tests, as the README says.
This commit is contained in:
parent
a4ea23004f
commit
ee6b8d3e10
12 changed files with 67 additions and 74 deletions
|
|
@ -66,7 +66,6 @@ def create_admin(sender, **kwargs):
|
|||
"""
|
||||
import os
|
||||
import secrets
|
||||
import sys
|
||||
from django.contrib.auth.models import User
|
||||
|
||||
from accounts.models import UserAttributes
|
||||
|
|
@ -82,17 +81,13 @@ def create_admin(sender, **kwargs):
|
|||
if User.objects.exists():
|
||||
return
|
||||
|
||||
is_testing = "test" in sys.argv
|
||||
admin_user = os.environ.get("ADMIN_USERNAME", "admin")
|
||||
admin_pass = os.environ.get("ADMIN_PASSWORD")
|
||||
generated_password = not admin_pass and not is_testing
|
||||
generated_password = not admin_pass
|
||||
|
||||
if not admin_pass:
|
||||
if is_testing:
|
||||
admin_pass = "admin"
|
||||
else:
|
||||
admin_pass = secrets.token_urlsafe(16)
|
||||
_store_generated_password(admin_pass)
|
||||
if generated_password:
|
||||
admin_pass = secrets.token_urlsafe(16)
|
||||
_store_generated_password(admin_pass)
|
||||
|
||||
print(f"\033[1m* \033[92mCreating default admin user '{admin_user}'\033[0m")
|
||||
with transaction.atomic():
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue