2012-06-30 21:24:22 +00:00
|
|
|
'''
|
|
|
|
Test the django module
|
|
|
|
'''
|
2013-06-24 19:06:49 +00:00
|
|
|
try:
|
|
|
|
import integration
|
|
|
|
except ImportError:
|
|
|
|
if __name__ == '__main__':
|
|
|
|
import os
|
|
|
|
import sys
|
|
|
|
sys.path.insert(
|
|
|
|
0, os.path.abspath(
|
|
|
|
os.path.join(
|
|
|
|
os.path.dirname(__file__), '../../'
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
import integration
|
|
|
|
|
2012-09-19 20:52:36 +00:00
|
|
|
from salt.modules import djangomod as django
|
2013-06-24 19:06:49 +00:00
|
|
|
from salttesting import skipIf
|
2012-07-20 06:21:01 +00:00
|
|
|
|
2012-06-30 21:24:22 +00:00
|
|
|
django.__salt__ = {}
|
|
|
|
|
2012-06-30 21:53:55 +00:00
|
|
|
try:
|
|
|
|
from mock import MagicMock, patch
|
|
|
|
has_mock = True
|
|
|
|
except ImportError:
|
|
|
|
has_mock = False
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
|
2012-06-30 21:53:55 +00:00
|
|
|
@skipIf(has_mock is False, "mock python module is unavailable")
|
2012-06-30 21:24:22 +00:00
|
|
|
class DjangoModuleTest(integration.ModuleCase):
|
|
|
|
'''
|
|
|
|
Test the django module
|
|
|
|
'''
|
|
|
|
|
|
|
|
def test_command(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
|
|
|
django.command('settings.py', 'runserver')
|
2012-11-30 17:13:12 +00:00
|
|
|
mock.assert_called_once_with(
|
2013-06-17 13:49:15 +00:00
|
|
|
'django-admin.py runserver --settings=settings.py',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_command_with_args(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
2012-11-30 17:13:12 +00:00
|
|
|
django.command(
|
|
|
|
'settings.py',
|
|
|
|
'runserver',
|
|
|
|
None,
|
|
|
|
None,
|
2013-06-17 13:49:15 +00:00
|
|
|
None,
|
2012-11-30 17:13:12 +00:00
|
|
|
'noinput',
|
|
|
|
'somethingelse'
|
|
|
|
)
|
|
|
|
mock.assert_called_once_with(
|
|
|
|
'django-admin.py runserver --settings=settings.py '
|
2013-06-17 13:49:15 +00:00
|
|
|
'--noinput --somethingelse',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_command_with_kwargs(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
2012-11-30 17:13:12 +00:00
|
|
|
django.command(
|
|
|
|
'settings.py',
|
|
|
|
'runserver',
|
|
|
|
None,
|
|
|
|
None,
|
|
|
|
database='something'
|
|
|
|
)
|
|
|
|
mock.assert_called_once_with(
|
|
|
|
'django-admin.py runserver --settings=settings.py '
|
2013-06-17 13:49:15 +00:00
|
|
|
'--database=something',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_command_with_kwargs_ignore_dunder(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
2012-11-30 17:13:12 +00:00
|
|
|
django.command(
|
|
|
|
'settings.py', 'runserver', None, None, __ignore='something'
|
|
|
|
)
|
|
|
|
mock.assert_called_once_with(
|
2013-06-17 13:49:15 +00:00
|
|
|
'django-admin.py runserver --settings=settings.py',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_syncdb(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
|
|
|
django.syncdb('settings.py')
|
2012-11-30 17:13:12 +00:00
|
|
|
mock.assert_called_once_with(
|
2013-06-17 13:49:15 +00:00
|
|
|
'django-admin.py syncdb --settings=settings.py --noinput',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_syncdb_migrate(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
|
|
|
django.syncdb('settings.py', migrate=True)
|
2012-11-30 17:13:12 +00:00
|
|
|
mock.assert_called_once_with(
|
|
|
|
'django-admin.py syncdb --settings=settings.py --migrate '
|
2013-06-17 13:49:15 +00:00
|
|
|
'--noinput',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_createsuperuser(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
2012-11-30 17:13:12 +00:00
|
|
|
django.createsuperuser(
|
|
|
|
'settings.py', 'testuser', 'user@example.com'
|
|
|
|
)
|
|
|
|
mock.assert_called_once_with(
|
|
|
|
'django-admin.py createsuperuser --settings=settings.py '
|
2013-06-17 13:49:15 +00:00
|
|
|
'--noinput --username=testuser --email=user@example.com',
|
|
|
|
env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
2013-06-19 06:35:08 +00:00
|
|
|
def no_test_loaddata(self):
|
2012-06-30 21:24:22 +00:00
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
|
|
|
django.loaddata('settings.py', 'app1,app2')
|
2012-11-30 17:13:12 +00:00
|
|
|
mock.assert_called_once_with(
|
2013-06-17 13:49:15 +00:00
|
|
|
'django-admin.py loaddata --settings=settings.py app1 app2',
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
def test_collectstatic(self):
|
|
|
|
mock = MagicMock()
|
|
|
|
with patch.dict(django.__salt__,
|
|
|
|
{'cmd.run': mock}):
|
2012-11-30 17:13:12 +00:00
|
|
|
django.collectstatic(
|
|
|
|
'settings.py', None, True, 'something', True, True, True, True
|
|
|
|
)
|
|
|
|
mock.assert_called_once_with(
|
|
|
|
'django-admin.py collectstatic --settings=settings.py '
|
2012-11-30 17:33:20 +00:00
|
|
|
'--noinput --no-post-process --dry-run --clear --link '
|
2013-06-17 13:49:15 +00:00
|
|
|
'--no-default-ignore --ignore=something', env=None
|
2012-11-30 17:13:12 +00:00
|
|
|
)
|
2012-06-30 21:24:22 +00:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
2012-07-20 06:21:01 +00:00
|
|
|
from integration import run_tests
|
|
|
|
run_tests(DjangoModuleTest)
|