def test_submit(self): task = TranscribePageTaskFactory(children = []) task.children = [] with patch.object(transcribe.TranscribePageTask, "post_page"): with patch.object(transcribe.TranscribePageAttempt, "submit"): task.submit(layout_id="foo") task.post_page.assert_called() assert len(task.children) == 1 task.children[0].submit.assert_called_with(layout_id="foo")
def test_serialize(self): task = TranscribePageTaskFactory() with patch.object(transcribe.TranscribePageTask, "page_url") as page_url_property: with patch.object(transcribe.TranscribePageAttempt, "to_dict"): page_url_property.__get__ = MagicMock(return_value="PAGE_URL") d = task.to_dict() deserialized = TranscribePageTask.from_dict(d) assert deserialized.page_number == task.page_number assert deserialized.validation_code == task.validation_code assert len(deserialized.children) == len(task.children)
def test_post_page(self): mock_page = MagicMock() mock_annotated_page = MagicMock() mock_page.get_annotated_copy = MagicMock(return_value=mock_annotated_page) task = TranscribePageTaskFactory(pdf_page = mock_page) with patch.object(transcribe, "bucket") as mock_bucket: mock_key = MagicMock() mock_bucket.new_key = MagicMock(return_value = mock_key) task.post_page() mock_bucket.new_key.assert_called_with(task.s3_key_name) mock_page.get_annotated_copy.assert_called_with(task.validation_code) mock_annotated_page.save_to_s3.assert_called_with(mock_key)