mirror of
https://github.com/ansible/awx.git
synced 2026-02-25 23:16:01 -03:30
* Remove oauth provider This removes the oauth provider functionality from awx. The oauth2_provider app and all references to it have been removed. Migrations to delete the two tables that locally overwrote oauth2_provider tables are included. This change does not include migrations to delete the tables provided by the oauth2_provider app. Also not included here are changes to awxkit, awx_collection or the ui. * Fix linters * Update migrations after rebase * Update collection tests for auth changes The changes in https://github.com/ansible/awx/pull/15554 will cause a few collection tests to fail, depending on what the test configuration is. This changes the tests to look for a specific warning rather than counting the number of warnings emitted. * Update migration * Removed unused oauth_scopes references --------- Co-authored-by: Mike Graves <mgraves@redhat.com> Co-authored-by: Alan Rominger <arominge@redhat.com>
69 lines
2.3 KiB
Python
69 lines
2.3 KiB
Python
from __future__ import absolute_import, division, print_function
|
|
|
|
__metaclass__ = type
|
|
|
|
import pytest
|
|
|
|
from awx.main.models import Project
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_create_project(run_module, admin_user, organization, silence_warning):
|
|
result = run_module(
|
|
'project',
|
|
dict(name='foo', organization=organization.name, scm_type='git', scm_url='https://foo.invalid', wait=False, scm_update_cache_timeout=5),
|
|
admin_user,
|
|
)
|
|
silence_warning.assert_any_call('scm_update_cache_timeout will be ignored since scm_update_on_launch was not set to true')
|
|
|
|
assert result.pop('changed', None), result
|
|
|
|
proj = Project.objects.get(name='foo')
|
|
assert proj.scm_url == 'https://foo.invalid'
|
|
assert proj.organization == organization
|
|
|
|
result.pop('invocation')
|
|
assert result == {'name': 'foo', 'id': proj.id}
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_create_manual_project(run_module, admin_user, organization, mocker):
|
|
mocker.patch('awx.main.models.projects.Project.get_local_path_choices', return_value=['foo_folder/'])
|
|
result = run_module(
|
|
'project',
|
|
dict(name='foo', organization=organization.name, scm_type='manual', local_path='foo_folder/', wait=False),
|
|
admin_user,
|
|
)
|
|
assert result.pop('changed', None), result
|
|
|
|
proj = Project.objects.get(name='foo')
|
|
assert proj.local_path == 'foo_folder/'
|
|
assert proj.organization == organization
|
|
|
|
result.pop('invocation')
|
|
assert result == {'name': 'foo', 'id': proj.id}
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_create_project_copy_from(run_module, admin_user, organization, silence_warning):
|
|
'''Test the copy_from functionality'''
|
|
result = run_module(
|
|
'project',
|
|
dict(name='foo', organization=organization.name, scm_type='git', scm_url='https://foo.invalid', wait=False, scm_update_cache_timeout=5),
|
|
admin_user,
|
|
)
|
|
assert result.pop('changed', None), result
|
|
proj_name = 'bar'
|
|
result = run_module(
|
|
'project',
|
|
dict(name=proj_name, copy_from='foo', scm_type='git', wait=False),
|
|
admin_user,
|
|
)
|
|
assert result.pop('changed', None), result
|
|
result = run_module(
|
|
'project',
|
|
dict(name=proj_name, copy_from='foo', scm_type='git', wait=False),
|
|
admin_user,
|
|
)
|
|
silence_warning.assert_called_with("A project with the name {0} already exists.".format(proj_name))
|