mirror of
https://github.com/sissbruecker/linkding.git
synced 2025-08-06 18:38:31 +02:00
46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
import os
|
|
from unittest import mock
|
|
|
|
from django.test import TestCase
|
|
|
|
from bookmarks.models import User
|
|
from bookmarks.management.commands.create_initial_superuser import Command
|
|
|
|
|
|
class TestCreateInitialSuperuserCommand(TestCase):
|
|
|
|
@mock.patch.dict(os.environ, {'LD_SUPERUSER_NAME': 'john', 'LD_SUPERUSER_PASSWORD': 'password123'})
|
|
def test_create_with_password(self):
|
|
Command().handle()
|
|
|
|
self.assertEqual(1, User.objects.count())
|
|
|
|
user = User.objects.first()
|
|
self.assertEqual('john', user.username)
|
|
self.assertTrue(user.has_usable_password())
|
|
self.assertTrue(user.check_password('password123'))
|
|
|
|
@mock.patch.dict(os.environ, {'LD_SUPERUSER_NAME': 'john'})
|
|
def test_create_without_password(self):
|
|
Command().handle()
|
|
|
|
self.assertEqual(1, User.objects.count())
|
|
|
|
user = User.objects.first()
|
|
self.assertEqual('john', user.username)
|
|
self.assertFalse(user.has_usable_password())
|
|
|
|
def test_create_without_options(self):
|
|
Command().handle()
|
|
|
|
self.assertEqual(0, User.objects.count())
|
|
|
|
@mock.patch.dict(os.environ, {'LD_SUPERUSER_NAME': 'john', 'LD_SUPERUSER_PASSWORD': 'password123'})
|
|
def test_create_multiple_times(self):
|
|
Command().handle()
|
|
Command().handle()
|
|
Command().handle()
|
|
|
|
self.assertEqual(1, User.objects.count())
|
|
|