mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-08-15 22:14:15 +02:00
Fix merge conflict (pt 1)
This commit is contained in:
parent
bbcf406df6
commit
4dadb715e8
2 changed files with 23 additions and 22 deletions
|
@ -12,7 +12,7 @@ from registrar.models import (
|
||||||
)
|
)
|
||||||
from registrar.models.user_portfolio_permission import UserPortfolioPermission
|
from registrar.models.user_portfolio_permission import UserPortfolioPermission
|
||||||
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
||||||
from .common import create_test_user
|
from .common import create_test_user, get_wsgi_request_object
|
||||||
from waffle.testutils import override_flag
|
from waffle.testutils import override_flag
|
||||||
from django.contrib.sessions.middleware import SessionMiddleware
|
from django.contrib.sessions.middleware import SessionMiddleware
|
||||||
|
|
||||||
|
@ -502,14 +502,12 @@ class TestPortfolio(WebTest):
|
||||||
|
|
||||||
# A default organization member should not be able to see any domains
|
# A default organization member should not be able to see any domains
|
||||||
self.app.set_user(self.user.username)
|
self.app.set_user(self.user.username)
|
||||||
self.user.portfolio = self.portfolio
|
permission, _ = UserPortfolioPermission.objects.get_or_create(
|
||||||
self.user.portfolio_roles = [UserPortfolioRoleChoices.ORGANIZATION_MEMBER]
|
user=self.user, portfolio=self.portfolio, roles=[UserPortfolioRoleChoices.ORGANIZATION_MEMBER]
|
||||||
self.user.save()
|
)
|
||||||
self.user.refresh_from_db()
|
|
||||||
|
|
||||||
self.assertFalse(self.user.has_domains_portfolio_permission())
|
|
||||||
|
|
||||||
response = self.app.get(reverse("no-portfolio-domains"))
|
response = self.app.get(reverse("no-portfolio-domains"))
|
||||||
|
self.assertFalse(self.user.has_domains_portfolio_permission(response.request.get("portfolio")))
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertContains(response, "You aren’t managing any domains.")
|
self.assertContains(response, "You aren’t managing any domains.")
|
||||||
|
|
||||||
|
@ -518,25 +516,24 @@ class TestPortfolio(WebTest):
|
||||||
self.assertEqual(response.status_code, 403)
|
self.assertEqual(response.status_code, 403)
|
||||||
|
|
||||||
# Ensure that this user can see domains with the right permissions
|
# Ensure that this user can see domains with the right permissions
|
||||||
self.user.portfolio_additional_permissions = [UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS]
|
permission.additional_permissions = [UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS]
|
||||||
self.user.save()
|
permission.save()
|
||||||
self.user.refresh_from_db()
|
permission.refresh_from_db()
|
||||||
|
|
||||||
self.assertTrue(self.user.has_domains_portfolio_permission())
|
|
||||||
|
|
||||||
# Test the domains page - this user should have access
|
# Test the domains page - this user should have access
|
||||||
response = self.app.get(reverse("domains"))
|
response = self.app.get(reverse("domains"))
|
||||||
|
self.assertTrue(self.user.has_domains_portfolio_permission(response.request.get("portfolio")))
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertContains(response, "Domain name")
|
self.assertContains(response, "Domain name")
|
||||||
|
|
||||||
# Test the managed domains permission
|
# Test the managed domains permission
|
||||||
self.user.portfolio_additional_permissions = [UserPortfolioPermissionChoices.VIEW_MANAGED_DOMAINS]
|
permission.portfolio_additional_permissions = [UserPortfolioPermissionChoices.VIEW_MANAGED_DOMAINS]
|
||||||
self.user.save()
|
permission.save()
|
||||||
self.user.refresh_from_db()
|
permission.refresh_from_db()
|
||||||
|
|
||||||
self.assertTrue(self.user.has_domains_portfolio_permission())
|
|
||||||
|
|
||||||
# Test the domains page - this user should have access
|
# Test the domains page - this user should have access
|
||||||
response = self.app.get(reverse("domains"))
|
response = self.app.get(reverse("domains"))
|
||||||
|
self.assertTrue(self.user.has_domains_portfolio_permission(response.request.get("portfolio")))
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertContains(response, "Domain name")
|
self.assertContains(response, "Domain name")
|
||||||
|
permission.delete()
|
||||||
|
|
|
@ -5,6 +5,7 @@ from django.urls import reverse
|
||||||
from django.contrib import messages
|
from django.contrib import messages
|
||||||
from registrar.forms.portfolio import PortfolioOrgAddressForm, PortfolioSeniorOfficialForm
|
from registrar.forms.portfolio import PortfolioOrgAddressForm, PortfolioSeniorOfficialForm
|
||||||
from registrar.models import Portfolio, User
|
from registrar.models import Portfolio, User
|
||||||
|
from registrar.models.user_portfolio_permission import UserPortfolioPermission
|
||||||
from registrar.models.utility.portfolio_helper import UserPortfolioRoleChoices
|
from registrar.models.utility.portfolio_helper import UserPortfolioRoleChoices
|
||||||
from registrar.views.utility.permission_views import (
|
from registrar.views.utility.permission_views import (
|
||||||
PortfolioDomainRequestsPermissionView,
|
PortfolioDomainRequestsPermissionView,
|
||||||
|
@ -55,14 +56,17 @@ class PortfolioNoDomainsView(NoPortfolioDomainsPermissionView, View):
|
||||||
"""Add additional context data to the template."""
|
"""Add additional context data to the template."""
|
||||||
# We can override the base class. This view only needs this item.
|
# We can override the base class. This view only needs this item.
|
||||||
context = {}
|
context = {}
|
||||||
portfolio = self.request.user.portfolio if self.request and self.request.user else None
|
portfolio = self.request.session.get("portfolio")
|
||||||
if portfolio:
|
if portfolio:
|
||||||
context["portfolio_administrators"] = User.objects.filter(
|
admin_ids = UserPortfolioPermission.objects.filter(
|
||||||
portfolio=portfolio,
|
portfolio=portfolio,
|
||||||
portfolio_roles__overlap=[
|
roles__overlap=[
|
||||||
UserPortfolioRoleChoices.ORGANIZATION_ADMIN,
|
UserPortfolioRoleChoices.ORGANIZATION_ADMIN,
|
||||||
],
|
]
|
||||||
)
|
).values_list("user__id", flat=True)
|
||||||
|
|
||||||
|
admin_users = User.objects.filter(id__in=admin_ids)
|
||||||
|
context["portfolio_administrators"] = admin_users
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue