Rearrange and rename application routes.

- move application routes to their own Flask blueprint
- squash application routes to be resource-specific
- reorganize application routes
This commit is contained in:
dandds
2019-04-18 14:54:45 -04:00
parent ed25078c39
commit 849c5d4b58
24 changed files with 583 additions and 646 deletions

View File

@@ -126,8 +126,8 @@ def test_atst_activity_history_access(get_url_assert_status):
get_url_assert_status(rando, url, 404)
# portfolios.access_environment
def test_portfolios_access_environment_access(get_url_assert_status):
# applications.access_environment
def test_applications_access_environment_access(get_url_assert_status):
dev = UserFactory.create()
rando = UserFactory.create()
ccpo = UserFactory.create_ccpo()
@@ -149,24 +149,20 @@ def test_portfolios_access_environment_access(get_url_assert_status):
)
env = portfolio.applications[0].environments[0]
url = url_for(
"portfolios.access_environment",
portfolio_id=portfolio.id,
environment_id=env.id,
)
url = url_for("applications.access_environment", environment_id=env.id)
get_url_assert_status(dev, url, 302)
get_url_assert_status(rando, url, 404)
get_url_assert_status(ccpo, url, 404)
# portfolios.create_application
def test_portfolios_create_application_access(post_url_assert_status):
# applications.create
def test_applications_create_access(post_url_assert_status):
ccpo = user_with(PermissionSets.EDIT_PORTFOLIO_APPLICATION_MANAGEMENT)
owner = user_with()
rando = user_with()
portfolio = PortfolioFactory.create(owner=owner)
url = url_for("portfolios.create_application", portfolio_id=portfolio.id)
url = url_for("applications.create", portfolio_id=portfolio.id)
post_url_assert_status(ccpo, url, 200)
post_url_assert_status(owner, url, 200)
post_url_assert_status(rando, url, 404)
@@ -185,8 +181,8 @@ def test_portfolios_create_member_access(post_url_assert_status):
post_url_assert_status(rando, url, 404)
# portfolios.delete_application
def test_portfolios_delete_application_access(post_url_assert_status, monkeypatch):
# applications.delete
def test_applications_delete_access(post_url_assert_status, monkeypatch):
ccpo = UserFactory.create_ccpo()
owner = user_with()
app_admin = user_with()
@@ -212,19 +208,15 @@ def test_portfolios_delete_application_access(post_url_assert_status, monkeypatc
monkeypatch.setattr("atst.domain.applications.Applications.delete", lambda *a: True)
url = url_for(
"portfolios.delete_application",
portfolio_id=portfolio.id,
application_id=application.id,
)
url = url_for("applications.delete", application_id=application.id)
post_url_assert_status(app_admin, url, 404)
post_url_assert_status(rando, url, 404)
post_url_assert_status(owner, url, 302)
post_url_assert_status(ccpo, url, 302)
# portfolios.edit_application
def test_portfolios_edit_application_access(get_url_assert_status):
# applications.settings
def test_application_settings_access(get_url_assert_status):
ccpo = user_with(PermissionSets.VIEW_PORTFOLIO_APPLICATION_MANAGEMENT)
owner = user_with()
rando = user_with()
@@ -234,9 +226,7 @@ def test_portfolios_edit_application_access(get_url_assert_status):
)
app = portfolio.applications[0]
url = url_for(
"portfolios.edit_application", portfolio_id=portfolio.id, application_id=app.id
)
url = url_for("applications.settings", application_id=app.id)
get_url_assert_status(ccpo, url, 200)
get_url_assert_status(owner, url, 200)
get_url_assert_status(rando, url, 404)
@@ -295,14 +285,14 @@ def test_portfolios_ko_review_access(get_url_assert_status):
get_url_assert_status(cor, url, 200)
# portfolios.new_application
def test_portfolios_new_application_access(get_url_assert_status):
# applications.new
def test_applications_new_access(get_url_assert_status):
ccpo = user_with(PermissionSets.EDIT_PORTFOLIO_APPLICATION_MANAGEMENT)
owner = user_with()
rando = user_with()
portfolio = PortfolioFactory.create(owner=owner)
url = url_for("portfolios.new_application", portfolio_id=portfolio.id)
url = url_for("applications.new", portfolio_id=portfolio.id)
get_url_assert_status(ccpo, url, 200)
get_url_assert_status(owner, url, 200)
get_url_assert_status(rando, url, 404)
@@ -321,14 +311,14 @@ def test_portfolios_portfolio_admin_access(get_url_assert_status):
get_url_assert_status(rando, url, 404)
# portfolios.portfolio_applications
def test_portfolios_portfolio_applications_access(get_url_assert_status):
# applications.portfolio_applications
def test_applications_portfolio_applications_access(get_url_assert_status):
ccpo = user_with(PermissionSets.VIEW_PORTFOLIO_APPLICATION_MANAGEMENT)
owner = user_with()
rando = user_with()
portfolio = PortfolioFactory.create(owner=owner)
url = url_for("portfolios.portfolio_applications", portfolio_id=portfolio.id)
url = url_for("applications.portfolio_applications", portfolio_id=portfolio.id)
get_url_assert_status(ccpo, url, 200)
get_url_assert_status(owner, url, 200)
get_url_assert_status(rando, url, 404)
@@ -519,8 +509,8 @@ def test_portfolios_task_order_invitations_access(get_url_assert_status):
get_url_assert_status(rando, url, 404)
# portfolios.update_application
def test_portfolios_update_application_access(post_url_assert_status):
# applications.update
def test_applications_update_access(post_url_assert_status):
ccpo = user_with(PermissionSets.EDIT_PORTFOLIO_APPLICATION_MANAGEMENT)
dev = UserFactory.create()
rando = UserFactory.create()
@@ -531,11 +521,7 @@ def test_portfolios_update_application_access(post_url_assert_status):
)
app = portfolio.applications[0]
url = url_for(
"portfolios.update_application",
portfolio_id=portfolio.id,
application_id=app.id,
)
url = url_for("applications.update", application_id=app.id)
post_url_assert_status(dev, url, 200)
post_url_assert_status(ccpo, url, 200)
post_url_assert_status(rando, url, 404)
@@ -718,18 +704,14 @@ def test_task_orders_update_access(post_url_assert_status):
post_url_assert_status(rando, url, 404)
def test_portfolio_application_team_access(get_url_assert_status):
def test_applications_application_team_access(get_url_assert_status):
ccpo = UserFactory.create_ccpo()
rando = UserFactory.create()
portfolio = PortfolioFactory.create()
application = ApplicationFactory.create(portfolio=portfolio)
url = url_for(
"portfolios.application_team",
portfolio_id=portfolio.id,
application_id=application.id,
)
url = url_for("applications.team", application_id=application.id)
get_url_assert_status(ccpo, url, 200)
get_url_assert_status(portfolio.owner, url, 200)