TaskOrders domain responsible for adding officers
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
import pytest
|
||||
|
||||
from atst.domain.task_orders import TaskOrders
|
||||
from atst.domain.task_orders import TaskOrders, TaskOrderError
|
||||
|
||||
from tests.factories import TaskOrderFactory
|
||||
from tests.factories import TaskOrderFactory, UserFactory
|
||||
|
||||
|
||||
def test_is_section_complete():
|
||||
@@ -29,3 +29,22 @@ def test_all_sections_complete():
|
||||
assert not TaskOrders.all_sections_complete(task_order)
|
||||
task_order.scope = "str12345"
|
||||
assert TaskOrders.all_sections_complete(task_order)
|
||||
|
||||
|
||||
def test_add_officer():
|
||||
task_order = TaskOrderFactory.create()
|
||||
ko = UserFactory.create()
|
||||
owner = task_order.workspace.owner
|
||||
TaskOrders.add_officer(owner, task_order, "contracting_officer", ko.to_dictionary())
|
||||
|
||||
assert task_order.contracting_officer == ko
|
||||
workspace_users = [ws_role.user for ws_role in task_order.workspace.members]
|
||||
assert ko in workspace_users
|
||||
|
||||
|
||||
def test_add_officer_with_nonexistent_role():
|
||||
task_order = TaskOrderFactory.create()
|
||||
ko = UserFactory.create()
|
||||
owner = task_order.workspace.owner
|
||||
with pytest.raises(TaskOrderError):
|
||||
TaskOrders.add_officer(owner, task_order, "pilot", ko.to_dictionary())
|
||||
|
@@ -1,4 +1,4 @@
|
||||
from tests.factories import UserFactory, WorkspaceFactory
|
||||
from tests.factories import UserFactory, WorkspaceFactory, WorkspaceRoleFactory
|
||||
|
||||
from atst.services.invitation import Invitation
|
||||
|
||||
@@ -7,11 +7,8 @@ def test_invite_member(queue):
|
||||
inviter = UserFactory.create()
|
||||
new_member = UserFactory.create()
|
||||
workspace = WorkspaceFactory.create(owner=inviter)
|
||||
invite_service = Invitation(
|
||||
inviter,
|
||||
workspace,
|
||||
{**new_member.to_dictionary(), "workspace_role": "developer"},
|
||||
)
|
||||
ws_member = WorkspaceRoleFactory.create(user=new_member, workspace=workspace)
|
||||
invite_service = Invitation(inviter, ws_member, new_member.email)
|
||||
new_invitation = invite_service.invite()
|
||||
assert new_invitation == new_member.invitations[0]
|
||||
assert len(queue.get_queue()) == 1
|
||||
|
Reference in New Issue
Block a user