Add / update tests
- add tests for step3 of new application
This commit is contained in:
parent
00547a9b34
commit
337c98f8cd
@ -1,7 +1,9 @@
|
|||||||
from flask import url_for
|
from flask import url_for
|
||||||
|
|
||||||
from tests.factories import PortfolioFactory, ApplicationFactory
|
from tests.factories import PortfolioFactory, ApplicationFactory, UserFactory
|
||||||
from atst.domain.applications import Applications
|
from unittest.mock import Mock
|
||||||
|
from atst.forms.data import ENV_ROLE_NO_ACCESS as NO_ACCESS
|
||||||
|
from atst.models.application_invitation import ApplicationInvitation
|
||||||
|
|
||||||
|
|
||||||
def test_get_name_and_description_form(client, user_session):
|
def test_get_name_and_description_form(client, user_session):
|
||||||
@ -94,3 +96,66 @@ def test_post_environments(client, session, user_session):
|
|||||||
assert response.status_code == 302
|
assert response.status_code == 302
|
||||||
session.refresh(application)
|
session.refresh(application)
|
||||||
assert len(application.environments) == 3
|
assert len(application.environments) == 3
|
||||||
|
|
||||||
|
|
||||||
|
def test_get_members(client, session, user_session):
|
||||||
|
application = ApplicationFactory.create()
|
||||||
|
user_session(application.portfolio.owner)
|
||||||
|
response = client.get(
|
||||||
|
url_for(
|
||||||
|
"applications.view_new_application_step_3", application_id=application.id
|
||||||
|
)
|
||||||
|
)
|
||||||
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
|
||||||
|
def test_post_member(monkeypatch, client, user_session, session):
|
||||||
|
job_mock = Mock()
|
||||||
|
monkeypatch.setattr("atst.jobs.send_mail.delay", job_mock)
|
||||||
|
user = UserFactory.create()
|
||||||
|
application = ApplicationFactory.create(
|
||||||
|
environments=[{"name": "Naboo"}, {"name": "Endor"}]
|
||||||
|
)
|
||||||
|
(env, env_1) = application.environments
|
||||||
|
|
||||||
|
user_session(application.portfolio.owner)
|
||||||
|
|
||||||
|
response = client.post(
|
||||||
|
url_for("applications.create_member", application_id=application.id),
|
||||||
|
data={
|
||||||
|
"user_data-first_name": user.first_name,
|
||||||
|
"user_data-last_name": user.last_name,
|
||||||
|
"user_data-dod_id": user.dod_id,
|
||||||
|
"user_data-email": user.email,
|
||||||
|
"environment_roles-0-environment_id": env.id,
|
||||||
|
"environment_roles-0-role": "Basic Access",
|
||||||
|
"environment_roles-0-environment_name": env.name,
|
||||||
|
"environment_roles-1-environment_id": env_1.id,
|
||||||
|
"environment_roles-1-role": NO_ACCESS,
|
||||||
|
"environment_roles-1-environment_name": env_1.name,
|
||||||
|
"perms_env_mgmt": True,
|
||||||
|
"perms_team_mgmt": True,
|
||||||
|
"perms_del_env": True,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
assert response.status_code == 302
|
||||||
|
expected_url = url_for(
|
||||||
|
"applications.settings",
|
||||||
|
application_id=application.id,
|
||||||
|
fragment="application-members",
|
||||||
|
_anchor="application-members",
|
||||||
|
_external=True,
|
||||||
|
)
|
||||||
|
assert response.location == expected_url
|
||||||
|
assert len(application.roles) == 1
|
||||||
|
environment_roles = application.roles[0].environment_roles
|
||||||
|
assert len(environment_roles) == 1
|
||||||
|
assert environment_roles[0].environment == env
|
||||||
|
|
||||||
|
invitation = (
|
||||||
|
session.query(ApplicationInvitation).filter_by(dod_id=user.dod_id).one()
|
||||||
|
)
|
||||||
|
assert invitation.role.application == application
|
||||||
|
|
||||||
|
assert job_mock.called
|
||||||
|
@ -561,6 +561,7 @@ def test_revoke_invite(client, user_session):
|
|||||||
assert invite.is_revoked
|
assert invite.is_revoked
|
||||||
assert app_role.status == ApplicationRoleStatus.DISABLED
|
assert app_role.status == ApplicationRoleStatus.DISABLED
|
||||||
|
|
||||||
|
|
||||||
def test_filter_environment_roles():
|
def test_filter_environment_roles():
|
||||||
application_role = ApplicationRoleFactory.create(user=None)
|
application_role = ApplicationRoleFactory.create(user=None)
|
||||||
application_role2 = ApplicationRoleFactory.create(
|
application_role2 = ApplicationRoleFactory.create(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user