Skip to content

Commit 2c9df25

Browse files
committed
chore: tests
1 parent 7fed345 commit 2c9df25

File tree

1 file changed

+45
-0
lines changed
  • packages/examples/cvat/exchange-oracle/tests/integration/services

1 file changed

+45
-0
lines changed

packages/examples/cvat/exchange-oracle/tests/integration/services/test_exchange.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,51 @@ def test_create_assignment_no_required_qualifications(self):
220220
with pytest.raises(Exception, match="User doesn't have required qualifications."):
221221
create_assignment(ESCROW_ADDRESS, Networks.localhost, user_address, [])
222222

223+
def test_create_assignment_with_required_qualifications(self):
224+
cvat_project, cvat_task, cvat_job = create_project_task_and_job(
225+
self.session, ESCROW_ADDRESS, 1
226+
)
227+
initial_job_updated_at = cvat_job.updated_at
228+
initial_task_updated_at = cvat_task.updated_at
229+
initial_project_updated_at = cvat_project.updated_at
230+
231+
user_address = WALLET_ADDRESS1
232+
user = User(
233+
wallet_address=user_address,
234+
cvat_email="[email protected]",
235+
cvat_id=1,
236+
)
237+
self.session.add(user)
238+
239+
self.session.commit()
240+
241+
with (
242+
open("tests/utils/manifest.json") as data,
243+
patch("src.services.exchange.get_escrow_manifest") as mock_get_manifest,
244+
patch("src.services.exchange.cvat_api"),
245+
):
246+
manifest = json.load(data)
247+
manifest["qualifications"] = ["test", "test2"]
248+
mock_get_manifest.return_value = manifest
249+
assignment_id = create_assignment(
250+
cvat_project.escrow_address, Networks(cvat_project.chain_id), user_address, ["test", "test2", "test3"]
251+
)
252+
253+
assignment = self.session.query(Assignment).filter_by(id=assignment_id).first()
254+
255+
assert assignment.cvat_job_id == cvat_job.cvat_id
256+
assert assignment.user_wallet_address == user_address
257+
assert assignment.status == AssignmentStatuses.created
258+
259+
self.session.refresh(cvat_job)
260+
assert cvat_job.updated_at != initial_job_updated_at
261+
262+
self.session.refresh(cvat_task)
263+
assert cvat_task.updated_at != initial_task_updated_at
264+
265+
self.session.refresh(cvat_project)
266+
assert cvat_project.updated_at != initial_project_updated_at
267+
223268
def test_create_assignment_unfinished_assignment(self):
224269
_, _, cvat_job = create_project_task_and_job(self.session, ESCROW_ADDRESS, 1)
225270

0 commit comments

Comments
 (0)