Fix factories and seed sample script

Update display of defense component on portfolio settings page
This commit is contained in:
leigh-mil 2020-01-02 12:45:11 -05:00
parent dad54ec139
commit 8710028256
4 changed files with 16 additions and 8 deletions

View File

@ -34,7 +34,7 @@ from atst.routes.dev import _DEV_USERS as DEV_USERS
from atst.utils import pick from atst.utils import pick
from tests.factories import ( from tests.factories import (
random_service_branch, random_defense_component,
TaskOrderFactory, TaskOrderFactory,
CLINFactory, CLINFactory,
AttachmentFactory, AttachmentFactory,
@ -308,7 +308,7 @@ def create_demo_portfolio(name, data):
portfolio = Portfolios.create( portfolio = Portfolios.create(
user=portfolio_owner, user=portfolio_owner,
portfolio_attrs={"name": name, "defense_component": random_service_branch()}, portfolio_attrs={"name": name, "defense_component": random_defense_component()},
) )
add_task_orders_to_portfolio(portfolio) add_task_orders_to_portfolio(portfolio)
@ -336,7 +336,7 @@ def seed_db():
user=amanda, user=amanda,
portfolio_attrs={ portfolio_attrs={
"name": "TIE Interceptor", "name": "TIE Interceptor",
"defense_component": random_service_branch(), "defense_component": random_defense_component(),
}, },
) )
add_task_orders_to_portfolio(tie_interceptor) add_task_orders_to_portfolio(tie_interceptor)
@ -347,7 +347,7 @@ def seed_db():
user=amanda, user=amanda,
portfolio_attrs={ portfolio_attrs={
"name": "TIE Fighter", "name": "TIE Fighter",
"defense_component": random_service_branch(), "defense_component": random_defense_component(),
}, },
) )
add_task_orders_to_portfolio(tie_fighter) add_task_orders_to_portfolio(tie_fighter)
@ -363,7 +363,7 @@ def seed_db():
user=user, user=user,
portfolio_attrs={ portfolio_attrs={
"name": ship, "name": ship,
"defense_component": random_service_branch(), "defense_component": random_defense_component(),
}, },
) )
add_task_orders_to_portfolio(portfolio) add_task_orders_to_portfolio(portfolio)

View File

@ -43,7 +43,11 @@
<div> <div>
<div class='admin-title'>{{ "portfolios.admin.defense_component_label" | translate }}</div> <div class='admin-title'>{{ "portfolios.admin.defense_component_label" | translate }}</div>
{% if portfolio.defense_component %} {% if portfolio.defense_component %}
<div class='admin-content'>{{ "forms.portfolio.defense_component.choices.%s" | format(portfolio.defense_component) | translate }}</div> <div class='admin-content'>
{% for component in portfolio.defense_component %}
{{ "forms.portfolio.defense_component.choices.%s" | format(component) | translate }}<br>
{% endfor %}
</div>
{% else %} {% else %}
<div class='admin-content'>{{ "fragments.portfolio_admin.none" | translate }}</div> <div class='admin-content'>{{ "fragments.portfolio_admin.none" | translate }}</div>
{% endif %} {% endif %}

View File

@ -21,6 +21,10 @@ def random_service_branch():
return random_choice(data.SERVICE_BRANCHES) return random_choice(data.SERVICE_BRANCHES)
def random_defense_component():
return [random_choice(data.SERVICE_BRANCHES)]
def random_dod_id(): def random_dod_id():
return "".join(random.choices(string.digits, k=10)) return "".join(random.choices(string.digits, k=10))
@ -104,7 +108,7 @@ class PortfolioFactory(Base):
model = Portfolio model = Portfolio
name = factory.Faker("domain_word") name = factory.Faker("domain_word")
defense_component = factory.LazyFunction(random_service_branch) defense_component = factory.LazyFunction(random_defense_component)
description = factory.Faker("sentence") description = factory.Faker("sentence")
@classmethod @classmethod

View File

@ -34,7 +34,7 @@ def test_create_portfolio_success(client, user_session):
data={ data={
"name": "My project name", "name": "My project name",
"description": "My project description", "description": "My project description",
"defense_component": "army", "defense_component": ["army"],
}, },
) )