From 30b93d1c5095941f01d111716190651aa1445da2 Mon Sep 17 00:00:00 2001 From: dandds Date: Wed, 12 Jun 2019 14:18:12 -0400 Subject: [PATCH] Remove unused TO code. --- atst/routes/task_orders/__init__.py | 1 - atst/routes/task_orders/downloads.py | 29 --- atst/routes/task_orders/index.py | 13 -- atst/routes/task_orders/signing.py | 86 --------- templates/fragments/ko_review_message.html | 7 - .../fragments/task_order_review/app_info.html | 9 - .../fragments/task_order_review/funding.html | 72 ------- .../task_order_review/oversight.html | 42 ---- .../task_order_review/reporting.html | 68 ------- templates/portfolios/header.html | 2 +- templates/portfolios/reports/index.html | 2 +- .../portfolios/task_orders/invitations.html | 179 ------------------ templates/portfolios/task_orders/show.html | 111 ----------- .../portfolios/task_orders/so_review.html | 42 ---- .../signing/signature_requested.html | 55 ------ tests/routes/task_orders/test_downloads.py | 31 --- tests/routes/task_orders/test_index.py | 10 - tests/routes/task_orders/test_signing.py | 6 - tests/test_access.py | 30 --- 19 files changed, 2 insertions(+), 793 deletions(-) delete mode 100644 atst/routes/task_orders/signing.py delete mode 100644 templates/fragments/ko_review_message.html delete mode 100644 templates/fragments/task_order_review/app_info.html delete mode 100644 templates/fragments/task_order_review/funding.html delete mode 100644 templates/fragments/task_order_review/oversight.html delete mode 100644 templates/fragments/task_order_review/reporting.html delete mode 100644 templates/portfolios/task_orders/invitations.html delete mode 100644 templates/portfolios/task_orders/show.html delete mode 100644 templates/portfolios/task_orders/so_review.html delete mode 100644 templates/task_orders/signing/signature_requested.html delete mode 100644 tests/routes/task_orders/test_downloads.py delete mode 100644 tests/routes/task_orders/test_signing.py diff --git a/atst/routes/task_orders/__init__.py b/atst/routes/task_orders/__init__.py index cced3a9f..13f37099 100644 --- a/atst/routes/task_orders/__init__.py +++ b/atst/routes/task_orders/__init__.py @@ -4,7 +4,6 @@ task_orders_bp = Blueprint("task_orders", __name__) from . import index from . import new -from . import signing from . import downloads from atst.utils.context_processors import portfolio as portfolio_context_processor diff --git a/atst/routes/task_orders/downloads.py b/atst/routes/task_orders/downloads.py index c23f5250..7cc1b22b 100644 --- a/atst/routes/task_orders/downloads.py +++ b/atst/routes/task_orders/downloads.py @@ -1,28 +1,12 @@ -from io import BytesIO from flask import Response, current_app as app from . import task_orders_bp from atst.domain.task_orders import TaskOrders from atst.domain.exceptions import NotFoundError -from atst.utils.docx import Docx from atst.domain.authz.decorator import user_can_access_decorator as user_can from atst.models.permissions import Permissions -@task_orders_bp.route("/task_orders//download_summary") -@user_can(Permissions.VIEW_TASK_ORDER_DETAILS, message="download task order summary") -def download_summary(task_order_id): - task_order = TaskOrders.get(task_order_id) - byte_str = BytesIO() - Docx.render(byte_str, data=task_order.to_dictionary()) - filename = "{}.docx".format(task_order.portfolio_name) - return Response( - byte_str, - headers={"Content-Disposition": "attachment; filename={}".format(filename)}, - mimetype="application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ) - - def send_file(attachment): generator = app.csp.files.download(attachment.object_name) return Response( @@ -33,19 +17,6 @@ def send_file(attachment): ) -@task_orders_bp.route("/task_orders//csp_estimate") -@user_can( - Permissions.VIEW_TASK_ORDER_DETAILS, - message="download task order cloud service provider estimate", -) -def download_csp_estimate(task_order_id): - task_order = TaskOrders.get(task_order_id) - if task_order.csp_estimate: - return send_file(task_order.csp_estimate) - else: - raise NotFoundError("task_order CSP estimate") - - @task_orders_bp.route("/task_orders//pdf") @user_can(Permissions.VIEW_TASK_ORDER_DETAILS, message="download task order PDF") def download_task_order_pdf(task_order_id): diff --git a/atst/routes/task_orders/index.py b/atst/routes/task_orders/index.py index 0746a606..6ed161b3 100644 --- a/atst/routes/task_orders/index.py +++ b/atst/routes/task_orders/index.py @@ -10,19 +10,6 @@ from atst.models.task_order import Status as TaskOrderStatus from atst.utils.flash import formatted_flash as flash -@task_orders_bp.route("/task_orders/") -@user_can(Permissions.VIEW_TASK_ORDER_DETAILS, message="view task order details") -def view_task_order(task_order_id): - task_order = TaskOrders.get(task_order_id) - to_form_complete = TaskOrders.all_sections_complete(task_order) - return render_template( - "portfolios/task_orders/show.html", - task_order=task_order, - to_form_complete=to_form_complete, - user=g.current_user, - ) - - @task_orders_bp.route("/task_orders//review") @user_can(Permissions.VIEW_TASK_ORDER_DETAILS, message="review task order details") def review_task_order(task_order_id): diff --git a/atst/routes/task_orders/signing.py b/atst/routes/task_orders/signing.py deleted file mode 100644 index 3b3a92e0..00000000 --- a/atst/routes/task_orders/signing.py +++ /dev/null @@ -1,86 +0,0 @@ -from flask import url_for, redirect, render_template, g, request as http_request - -import datetime - -from . import task_orders_bp -from atst.domain.authz import Authorization -from atst.domain.exceptions import NoAccessError -from atst.domain.task_orders import TaskOrders -from atst.forms.task_order import SignatureForm -from atst.utils.flash import formatted_flash as flash -from atst.domain.authz.decorator import user_can_access_decorator as user_can - - -def find_unsigned_ko_to(task_order_id): - task_order = TaskOrders.get(task_order_id) - - if not TaskOrders.can_ko_sign(task_order): - raise NoAccessError("task_order") - - return task_order - - -def wrap_check_is_ko(user, task_order_id=None, **_kwargs): - task_order = TaskOrders.get(task_order_id) - Authorization.check_is_ko(user, task_order) - - return True - - -# TODO: this route needs to be moved under the portfolio blueprint -@task_orders_bp.route("/task_orders//digital_signature", methods=["GET"]) -@user_can( - None, override=wrap_check_is_ko, message="view contracting officer signature page" -) -def signature_requested(task_order_id): - task_order = find_unsigned_ko_to(task_order_id) - - return render_template( - "task_orders/signing/signature_requested.html", - task_order_id=task_order.id, - portfolio_id=task_order.portfolio_id, - form=SignatureForm(), - ) - - -# TODO: this route needs to be moved under the portfolio blueprint -@task_orders_bp.route( - "/task_orders//digital_signature", methods=["POST"] -) -@user_can( - None, override=wrap_check_is_ko, message="submit contracting officer signature" -) -def record_signature(task_order_id): - task_order = find_unsigned_ko_to(task_order_id) - - form_data = {**http_request.form} - - if "unlimited_level_of_warrant" in form_data and form_data[ - "unlimited_level_of_warrant" - ] == ["y"]: - del form_data["level_of_warrant"] - - form = SignatureForm(form_data) - - if form.validate(): - TaskOrders.update( - task_order=task_order, - signer_dod_id=g.current_user.dod_id, - signed_at=datetime.datetime.now(), - **form.data, - ) - - flash("task_order_signed") - return redirect( - url_for("task_orders.view_task_order", task_order_id=task_order.id) - ) - else: - return ( - render_template( - "task_orders/signing/signature_requested.html", - task_order_id=task_order_id, - portfolio_id=task_order.portfolio_id, - form=form, - ), - 400, - ) diff --git a/templates/fragments/ko_review_message.html b/templates/fragments/ko_review_message.html deleted file mode 100644 index 3433e799..00000000 --- a/templates/fragments/ko_review_message.html +++ /dev/null @@ -1,7 +0,0 @@ -{{ "task_orders.ko_review.message" | translate }} -
{{ "fragments.ko_review_message.title" | translate }}:
-
    -
  • {{ "fragments.ko_review_message.bullet_1" | translate }}
  • -
  • {{ "fragments.ko_review_message.bullet_2" | translate }}
  • -
  • {{ "fragments.ko_review_message.bullet_3" | translate }}
  • -
diff --git a/templates/fragments/task_order_review/app_info.html b/templates/fragments/task_order_review/app_info.html deleted file mode 100644 index 93db4525..00000000 --- a/templates/fragments/task_order_review/app_info.html +++ /dev/null @@ -1,9 +0,0 @@ -{% from "components/review_field.html" import ReviewField %} - -
- {{ ReviewField(("task_orders.new.review.portfolio" | translate), task_order.portfolio_name) }} - {{ ReviewField(("task_orders.new.review.dod" | translate), task_order.defense_component, filter="normalizeOrder") }} -
-
- {{ ReviewField(("task_orders.new.review.scope" | translate), task_order.scope) }} -
diff --git a/templates/fragments/task_order_review/funding.html b/templates/fragments/task_order_review/funding.html deleted file mode 100644 index 182f3e16..00000000 --- a/templates/fragments/task_order_review/funding.html +++ /dev/null @@ -1,72 +0,0 @@ -{% from "components/review_field.html" import ReviewField %} - -
- {% call ReviewField(("task_orders.new.review.performance_period" | translate), task_order.performance_length, filter="translateDuration") %} - {% if task_order.csp_estimate %} -

- {{ Icon('download') }} {{ "task_orders.new.review.usage_est_link"| translate }} -

- {% else %} -
- {{ Icon('download') }} {{ "task_orders.new.review.usage_est_link"| translate }} - {{ Icon('alert', classes='icon--red') }} {{ "task_orders.new.review.not_uploaded"| translate }} - {% endif %} - {% endcall %} - -
- - - - - - - - - - - - - - - - - - - - - - - -

{{ "task_orders.new.review.to_value"| translate }}

- {% if task_order.budget %} - {{ task_order.budget | dollars }} - {% endif %} -

{{ "task_orders.new.review.clin_1"| translate }}

- {% if task_order.clin_01 %} - {{ task_order.clin_01 | dollars }} - {% endif %} -

- {{ "task_orders.new.review.clin_2"| translate }} - {% if not config.CLASSIFIED %} -
{{ "task_orders.new.review.classified_inactive"| translate }}
- {% endif %} -

- {% if task_order.clin_02 and config.CLASSIFIED %} - {{ task_order.clin_02 | dollars or RequiredLabel() }} - {% endif %} -

{{ "task_orders.new.review.clin_3"| translate }}

- {% if task_order.clin_03 %} - {{ task_order.clin_03 | dollars or RequiredLabel() }} - {% endif %} -

- {{ "task_orders.new.review.clin_4"| translate }} - {% if not config.CLASSIFIED %} -
{{ "task_orders.new.review.classified_inactive"| translate }}
- {% endif %} -

- {% if task_order.clin_04 and config.CLASSIFIED %} - {{ task_order.clin_04 | dollars or RequiredLabel() }} - {% endif %} -
-
-
diff --git a/templates/fragments/task_order_review/oversight.html b/templates/fragments/task_order_review/oversight.html deleted file mode 100644 index cdeb883e..00000000 --- a/templates/fragments/task_order_review/oversight.html +++ /dev/null @@ -1,42 +0,0 @@ -{% macro ReviewOfficerInfo(heading, officer_data, has_officer, invite_pending) %} -
-

{{ heading | translate }}

- {{ officer_data.first_name }} {{ officer_data.last_name }}
- {{ officer_data.email }}
- {% if officer_data.phone_number %} - {{ officer_data.phone_number | usPhone }} - {% endif %} -
- {{ "task_orders.new.review.dod_id" | translate }} {{ officer_data.dod_id}}
- {% if has_officer %} - {{ Icon('ok', classes='icon--green') }} {{ "task_orders.new.review.invited"| translate }} - {% elif invite_pending %} - {{ Icon('alert', classes='icon--gold') }} {{ "task_orders.new.review.pending_to"| translate }} - {% else %} - {{ Icon('alert', classes='icon--red') }} {{ "task_orders.new.review.not_invited"| translate }} - {% endif %} -
-{% endmacro %} - -
- {{ ReviewOfficerInfo( - "task_orders.new.review.ko", - task_order.officer_dictionary("contracting_officer"), - task_order.contracting_officer, - task_order.ko_invitable - ) }} - {{ ReviewOfficerInfo( - "task_orders.new.review.cor", - task_order.officer_dictionary("contracting_officer_representative"), - task_order.contracting_officer_representative, - task_order.cor_invitable - ) }} -
-
- {{ ReviewOfficerInfo( - "task_orders.new.review.so", - task_order.officer_dictionary("security_officer"), - task_order.security_officer, - task_order.so_invitable - ) }} -
diff --git a/templates/fragments/task_order_review/reporting.html b/templates/fragments/task_order_review/reporting.html deleted file mode 100644 index 49a37a9c..00000000 --- a/templates/fragments/task_order_review/reporting.html +++ /dev/null @@ -1,68 +0,0 @@ -{% from "components/review_field.html" import ReviewField %} - -
- {{ - ReviewField( - ("forms.task_order.app_migration.label" | translate), - ( - ("forms.task_order.app_migration.{}".format(task_order.app_migration) | translate) if task_order.app_migration - ), - filter='safe' - ) - }} - - {{ - ReviewField( - ("forms.task_order.native_apps.label" | translate), - ( - ("forms.task_order.native_apps.{}".format(task_order.native_apps) | translate) if task_order.native_apps - ) - ) - }} -
- -
-
-

{{ "task_orders.new.review.complexity"| translate }}

- {% if task_order.complexity %} -
    - {% for item in task_order.complexity %} -
  • - {{ Icon('ok', classes='icon--gray icon--medium') }}{{ "forms.task_order.complexity.{}".format(item) | translate }}{% if item == 'other' %}: {{ task_order.complexity_other }}{% endif %} -
  • - {% endfor %} -
- {% else %} -

{{ RequiredLabel() }}

- {% endif %} -
-
- -
-
-

{{ "task_orders.new.review.team"| translate }}

- {% if task_order.dev_team %} -
    - {% for item in task_order.dev_team %} -
  • - {% if item == 'other' %} - {{ Icon('ok', classes='icon--gray icon--medium') }}Other: {{ task_order.dev_team_other }} - {% else %} - {{ Icon('ok', classes='icon--gray icon--medium') }}{{ "forms.task_order.dev_team.{}".format(item) | translate }} - {% endif %} -
  • - {% endfor %} -
- {% else %} -

{{ RequiredLabel() }}

- {% endif %} -
- {{ - ReviewField( - ("forms.task_order.team_experience.label" |translate), - ( - ("forms.task_order.team_experience.{}".format(task_order.team_experience) | translate) if task_order.team_experience - ) - ) - }} -
diff --git a/templates/portfolios/header.html b/templates/portfolios/header.html index 1935a0d2..88d12f60 100644 --- a/templates/portfolios/header.html +++ b/templates/portfolios/header.html @@ -27,7 +27,7 @@ icon='funding', text='navigation.portfolio_navigation.breadcrumbs.funding' | translate, url=url_for("task_orders.portfolio_funding", portfolio_id=portfolio.id), - active=request.url_rule.endpoint in ["task_orders.portfolio_funding", "task_orders.view_task_order", "task_orders.review_task_order"], + active=request.url_rule.endpoint in ["task_orders.portfolio_funding", "task_orders.review_task_order"], ) }} {{ Link( icon='applications', diff --git a/templates/portfolios/reports/index.html b/templates/portfolios/reports/index.html index 4c997ac6..8f04f195 100644 --- a/templates/portfolios/reports/index.html +++ b/templates/portfolios/reports/index.html @@ -74,7 +74,7 @@ - {% endif %} - + {{ Icon('cog') }} Manage Task Order diff --git a/templates/portfolios/task_orders/invitations.html b/templates/portfolios/task_orders/invitations.html deleted file mode 100644 index 7474097d..00000000 --- a/templates/portfolios/task_orders/invitations.html +++ /dev/null @@ -1,179 +0,0 @@ -{% extends "portfolios/base.html" %} - -{% set secondary_breadcrumb = "navigation.portfolio_navigation.breadcrumbs.funding" | translate %} - -{% from "components/checkbox_input.html" import CheckboxInput %} -{% from "components/icon.html" import Icon %} -{% from "components/text_input.html" import TextInput %} -{% from "components/confirmation_button.html" import ConfirmationButton %} -{% from 'components/save_button.html' import SaveButton %} - - -{% macro Link(text, icon_name, onClick=None, url='#', classes='') %} - - {{ Icon(icon_name) }} - {{ text }} - -{% endmacro %} - -{% macro EditOfficerInfo(form, officer_type, invited) -%} -
- {{ form.csrf_token }} - -
-{% endmacro %} - -{% macro OfficerInfo(task_order, officer_type, form) %} -
-

{{ ("task_orders.invitations." + officer_type + ".title") | translate }}

-

{{ ("task_orders.invitations." + officer_type + ".description") | translate }}

- - -
- {% set prefix = { "contracting_officer": "ko", "contracting_officer_representative": "cor", "security_officer": "so" }[officer_type] %} - {% set first_name = task_order[prefix + "_first_name"] %} - {% set last_name = task_order[prefix + "_last_name"] %} - {% set email = task_order[prefix + "_email"] %} - {% set phone_number = task_order[prefix + "_phone_number"] %} - {% set dod_id = task_order[prefix + "_dod_id"] %} - {% set invited = False %} - - {% if task_order[officer_type] %} - {% set invited = True %} -
-
-
{{ first_name }} {{ last_name }}
-
- {{ Icon("ok", classes="invited") }} - Invited -
-
- -

{{ phone_number | usPhone }}

-

{{ "task_orders.invitations.dod_id_label" | translate}}: {{ dod_id }}

-
-
- {{ Link("Update", "edit", onClick="edit") }} - {% set invite_type = [prefix + "_invite"] %} - - {% if not (user == task_order.creator and user == task_order[officer_type]) %} - {{ - ConfirmationButton( - btn_text="Resend Invitation", - confirm_btn=('task_orders.invitations.resend_btn' | translate), - confirm_msg=('task_orders.invitations.resend_confirmation_message' | translate), - action=url_for( - "task_orders.resend_invite", - task_order_id=task_order.id, - invite_type=invite_type, - ), - btn_icon=Icon('avatar'), - btn_class="icon-link", - ) - }} - {% endif %} - - {{ Link("Remove", "trash", classes="remove") }} -
- {% elif first_name and last_name %} -
-
-
{{ first_name }} {{ last_name }}
-
- {{ Icon("alert", classes="uninvited") }} - Not Invited -
-
- -

{{ phone_number | usPhone }}

-
-
- {{ Link("Update", "edit", onClick="edit") }} - {{ Link("Remove", "trash", classes="remove") }} - -
- {% else %} -
-
- {{ Icon("alert", classes="uninvited") }} - Not specified -
-
-
- -
- {% endif %} - - {{ EditOfficerInfo(form, officer_type, invited) }} -
-
-
-{% endmacro %} - -{% block portfolio_content %} - -
- {% include "fragments/flash.html" %} - -
-
-

-
Edit Task Order
- Oversight -

-
- - {% for officer in ["contracting_officer", "contracting_officer_representative", "security_officer"] %} - {{ OfficerInfo(task_order, officer, form[officer]) }} - {% endfor %} -
-
-{% endblock %} diff --git a/templates/portfolios/task_orders/show.html b/templates/portfolios/task_orders/show.html deleted file mode 100644 index 7ac320a1..00000000 --- a/templates/portfolios/task_orders/show.html +++ /dev/null @@ -1,111 +0,0 @@ -{% extends "portfolios/base.html" %} - -{% set secondary_breadcrumb = "navigation.portfolio_navigation.breadcrumbs.funding" | translate %} - -{% from "components/icon.html" import Icon %} - -{% block portfolio_content %} - -{% macro DocumentLink(title="", link_url="", description="") %} - {% set disabled = not link_url %} - -{% endmacro %} - - -
- {% include "fragments/flash.html" %} - -
-
-

New Task Order

- {{ task_order.status.value }} -
-
-
-
Started
-
- - -
-
-
-
Task order value
-
{{ task_order.budget | dollars }}
-
-
-
- -
-
-
-

{{ "task_orders.view.whats_next" | translate }}

-
-
-
-
-
-

Download documents

- {% set description -%} - last updated on - - {%- endset %} - {% if task_order.pdf %} - {{ DocumentLink( - title="Task Order", - link_url=url_for('task_orders.download_task_order_pdf', task_order_id=task_order.id), - description=description) }} - {% else %} - {{ DocumentLink( - title="Task Order Draft", - link_url=to_form_complete and url_for('task_orders.download_summary', task_order_id=task_order.id), - description=description) }} - {% endif %} -
-
-
- {{ DocumentLink( - title="Instruction Sheet", - link_url="#") }} - {{ DocumentLink( - title="Market Research", - link_url="#") }} -
-
-
-
-
-

Invitations

- {% if to_form_complete %} - - {{ "common.manage" | translate }} - {{ Icon("edit") }} - - {% endif %} -
-
-
-
-
-
- -{% endblock %} diff --git a/templates/portfolios/task_orders/so_review.html b/templates/portfolios/task_orders/so_review.html deleted file mode 100644 index 99bffea1..00000000 --- a/templates/portfolios/task_orders/so_review.html +++ /dev/null @@ -1,42 +0,0 @@ -{% extends 'portfolios/base.html' %} - -{% from "components/text_input.html" import TextInput %} -{% from "components/multi_checkbox_input.html" import MultiCheckboxInput %} -{% from 'components/save_button.html' import SaveButton %} - -{% block content %} - -{% include "fragments/flash.html" %} - -
-
- -
-

-
{{ "task_orders.so_review.title" | translate }}
-

-
- - -
-
- {{ form.csrf_token }} -

{{ "task_orders.so_review.certification" | translate }}

- {{ TextInput(form.certifying_official) }} - {{ TextInput(form.certifying_official_title) }} - {{ TextInput(form.certifying_official_phone, placeholder='(123) 456-7890', validation='usPhone') }} - {{ TextInput(form.certifying_official_address, paragraph=True) }} - -
- - {{ MultiCheckboxInput(form.required_distribution) }} - -
- {{ SaveButton(text='Continue', additional_classes="usa-button-big") }} -
-
-
-
-
-
-{% endblock %} diff --git a/templates/task_orders/signing/signature_requested.html b/templates/task_orders/signing/signature_requested.html deleted file mode 100644 index 7c67bbf8..00000000 --- a/templates/task_orders/signing/signature_requested.html +++ /dev/null @@ -1,55 +0,0 @@ -{% extends "base.html" %} - -{% from "components/text_input.html" import TextInput %} -{% from "components/checkbox_input.html" import CheckboxInput %} -{% from "components/icon.html" import Icon %} -{% from 'components/save_button.html' import SaveButton %} - -{% block content %} - -
- {{ form.csrf_token }} -
-
-
-
-

-
{{ "task_orders.sign.task_order_builder_title" | translate }}
- {{ "task_orders.sign.title" | translate }} -

-
- -
-
-
- - {{ TextInput(form.level_of_warrant, validation='dollars', placeholder='$0.00', disabled=True) }} - - - - {{ TextInput(form.level_of_warrant, validation='dollars', placeholder='$0.00') }} - - - - {{ CheckboxInput(form.unlimited_level_of_warrant) }} -
-
- - {{ CheckboxInput(form.signature) }} -
-
-
- {{ SaveButton(text=('common.sign' | translate), additional_classes="usa-button-big") }} - - {{ Icon('caret_left') }} - - {{ "common.back" | translate }} - -
-
-
-
-
-{% endblock %} diff --git a/tests/routes/task_orders/test_downloads.py b/tests/routes/task_orders/test_downloads.py deleted file mode 100644 index 173a0f27..00000000 --- a/tests/routes/task_orders/test_downloads.py +++ /dev/null @@ -1,31 +0,0 @@ -import pytest -from flask import url_for -from io import BytesIO -import re -from zipfile import ZipFile - -from atst.utils.docx import Docx - -from tests.factories import TaskOrderFactory, PortfolioFactory, UserFactory - - -def xml_translated(val): - val = re.sub("'", "'", str(val)) - val = re.sub(" & ", " & ", str(val)) - return val - - -def test_download_summary(client, user_session): - user = UserFactory.create() - portfolio = PortfolioFactory.create(owner=user) - task_order = TaskOrderFactory.create(creator=user, portfolio=portfolio, _pdf=None) - user_session(user) - response = client.get( - url_for("task_orders.download_summary", task_order_id=task_order.id) - ) - bytes_str = BytesIO(response.data) - zip_ = ZipFile(bytes_str, mode="r") - doc = zip_.read(Docx.DOCUMENT_FILE).decode() - for attr, val in task_order.to_dictionary().items(): - assert attr in doc - assert xml_translated(val) in doc diff --git a/tests/routes/task_orders/test_index.py b/tests/routes/task_orders/test_index.py index d9494ad2..3d6d5706 100644 --- a/tests/routes/task_orders/test_index.py +++ b/tests/routes/task_orders/test_index.py @@ -123,13 +123,3 @@ class TestPortfolioFunding: _, context = templates[0] assert context["funding_end_date"] is expiring_to.end_date assert context["funded"] == False - - def test_user_can_only_access_to_in_their_portfolio( - self, app, user_session, portfolio - ): - other_task_order = TaskOrderFactory.create() - user_session(portfolio.owner) - response = app.test_client().get( - url_for("task_orders.view_task_order", task_order_id=other_task_order.id) - ) - assert response.status_code == 404 diff --git a/tests/routes/task_orders/test_signing.py b/tests/routes/task_orders/test_signing.py deleted file mode 100644 index 324783a9..00000000 --- a/tests/routes/task_orders/test_signing.py +++ /dev/null @@ -1,6 +0,0 @@ -from flask import url_for - -from atst.domain.task_orders import TaskOrders -from tests.factories import UserFactory, TaskOrderFactory, PortfolioFactory - -# TODO: add tests! diff --git a/tests/test_access.py b/tests/test_access.py index f3b588a9..6841a09b 100644 --- a/tests/test_access.py +++ b/tests/test_access.py @@ -428,36 +428,6 @@ def test_applications_update_environments(post_url_assert_status): post_url_assert_status(rando, url, 404) -# task_orders.view_task_order -def test_task_orders_view_task_order_access(get_url_assert_status): - ccpo = user_with(PermissionSets.VIEW_PORTFOLIO_FUNDING) - owner = user_with() - rando = user_with() - - portfolio = PortfolioFactory.create(owner=owner) - task_order = TaskOrderFactory.create(portfolio=portfolio) - - url = url_for("task_orders.view_task_order", task_order_id=task_order.id) - get_url_assert_status(owner, url, 200) - get_url_assert_status(ccpo, url, 200) - get_url_assert_status(rando, url, 404) - - -# task_orders.download_summary -def test_task_orders_download_summary_access(get_url_assert_status): - ccpo = user_with(PermissionSets.VIEW_PORTFOLIO_FUNDING) - owner = user_with() - rando = user_with() - - portfolio = PortfolioFactory.create(owner=owner) - task_order = TaskOrderFactory.create(portfolio=portfolio) - - url = url_for("task_orders.download_summary", task_order_id=task_order.id) - get_url_assert_status(owner, url, 200) - get_url_assert_status(ccpo, url, 200) - get_url_assert_status(rando, url, 404) - - # task_orders.download_task_order_pdf def test_task_orders_download_task_order_pdf_access(get_url_assert_status, monkeypatch): monkeypatch.setattr(