Merge pull request #741 from dod-ccpo/bug-resend-invite-button-render

Render Resend Invite Button Bug
This commit is contained in:
montana-mil 2019-04-03 13:04:10 -04:00 committed by GitHub
commit df3ae13b87
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 69 additions and 15 deletions

View File

@ -231,6 +231,7 @@ def task_order_invitations(portfolio_id, task_order_id):
portfolio=portfolio, portfolio=portfolio,
task_order=task_order, task_order=task_order,
form=form, form=form,
user=g.current_user,
) )
else: else:
raise NotFoundError("task_order") raise NotFoundError("task_order")

View File

@ -99,21 +99,23 @@
{{ Link("Update", "edit", onClick="edit") }} {{ Link("Update", "edit", onClick="edit") }}
{% set invite_type = [prefix + "_invite"] %} {% set invite_type = [prefix + "_invite"] %}
{{ {% if not (user == task_order.creator and user == task_order[officer_type]) %}
ConfirmationButton( {{
btn_text="Resend Invitation", ConfirmationButton(
confirm_btn=('task_orders.invitations.resend_btn' | translate), btn_text="Resend Invitation",
confirm_msg=('task_orders.invitations.resend_confirmation_message' | translate), confirm_btn=('task_orders.invitations.resend_btn' | translate),
action=url_for( confirm_msg=('task_orders.invitations.resend_confirmation_message' | translate),
"portfolios.resend_invite", action=url_for(
portfolio_id=portfolio.id, "portfolios.resend_invite",
task_order_id=task_order.id, portfolio_id=portfolio.id,
invite_type=invite_type, task_order_id=task_order.id,
), invite_type=invite_type,
btn_icon=Icon('avatar'), ),
btn_class="icon-link", btn_icon=Icon('avatar'),
) btn_class="icon-link",
}} )
}}
{% endif %}
{{ Link("Remove", "trash", classes="remove") }} {{ Link("Remove", "trash", classes="remove") }}
</div> </div>

View File

@ -289,6 +289,57 @@ class TestTaskOrderInvitations:
assert response.status_code == 404 assert response.status_code == 404
assert time_updated == other_task_order.time_updated assert time_updated == other_task_order.time_updated
def test_does_not_render_resend_invite_if_user_is_mo_and_user_is_cor(
self, client, user_session
):
task_order = TaskOrderFactory.create(
portfolio=self.portfolio,
creator=self.portfolio.owner,
cor_first_name=self.portfolio.owner.first_name,
cor_last_name=self.portfolio.owner.last_name,
cor_email=self.portfolio.owner.email,
cor_phone_number=self.portfolio.owner.phone_number,
cor_dod_id=self.portfolio.owner.dod_id,
cor_invite=True,
)
user_session(self.portfolio.owner)
response = client.get(
url_for(
"portfolios.task_order_invitations",
portfolio_id=self.portfolio.id,
task_order_id=task_order.id,
)
)
assert "Resend Invitation" not in response.data.decode()
def test_renders_resend_invite_if_user_is_mo_and_user_is_not_cor(
self, client, user_session
):
cor = UserFactory.create()
task_order = TaskOrderFactory.create(
portfolio=self.portfolio,
creator=self.portfolio.owner,
contracting_officer_representative=cor,
cor_invite=True,
)
portfolio_role = PortfolioRoleFactory.create(portfolio=self.portfolio, user=cor)
invitation = InvitationFactory.create(
inviter=self.portfolio.owner,
portfolio_role=portfolio_role,
user=cor,
status=InvitationStatus.PENDING,
)
user_session(self.portfolio.owner)
response = client.get(
url_for(
"portfolios.task_order_invitations",
portfolio_id=self.portfolio.id,
task_order_id=task_order.id,
)
)
assert "Resend Invitation" in response.data.decode()
def test_ko_can_view_task_order(client, user_session, portfolio, user): def test_ko_can_view_task_order(client, user_session, portfolio, user):
PortfolioRoleFactory.create( PortfolioRoleFactory.create(