def test_internal_error_metadata(sys): def fake_get_metadata_throw(oauth, get_endpoint, course_id, item_id): raise publish.InternalError() publish.get_metadata = fake_get_metadata_throw publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_item_not_found_metadata(sys): def fake_get_token_throw(oauth, get_endpoint, authoring_pa_id): raise publish.ItemNotFoundError(PublishParams.authoring_pa_id) publish.get_authoring_pa_id = fake_get_authoring_pa_id publish.get_write_access_token = fake_get_token_throw publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_called_with_write_access_token(): publish.get_authoring_pa_id = fake_get_authoring_pa_id publish.get_write_access_token = fake_get_write_access_token publish.publish_item = MagicMock() publish.command_publish(PublishParams) publish.publish_item.assert_called_with(ANY, "fake-endpoint", "fake-action", "course2345~item3456", "token4567")
def test_item_not_found_publish(sys): def fake_publish_item(oauth, endpoint, action, authoring_pa_id, token): raise publish.ItemNotFoundError(PublishParams.authoring_pa_id) publish.get_write_access_token = fake_get_write_access_token publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_internal_error_publish(sys): def fake_publish_item(oauth, endpoint, action, course, item, metadata): raise publish.InternalError() publish.get_metadata = fake_get_metadata publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_missing_executor(sys): def fake_publish_item(oauth, endpoint, action, course, item, metadata): raise publish.GraderExecutorError( status=publish.GraderExecutorStatus.MISSING) publish.get_metadata = fake_get_metadata publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_item_not_found_metadata(sys): def fake_get_metadata_throw(oauth, get_endpoint, course_id, item_id): raise publish.ItemNotFoundError( PublishParams.course, PublishParams.item) publish.get_metadata = fake_get_metadata_throw publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_assignment_not_ready_publish(sys): def fake_publish_item(oauth, endpoint, action, authoring_pa_id, token): raise publish.ProgrammingAssignmentDraftNotReadyError( PublishParams.authoring_pa_id) publish.get_write_access_token = fake_get_write_access_token publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_internal_error_publish(sys): def fake_publish_item(oauth, endpoint, action, authoring_pa_id, token): raise publish.InternalError() publish.get_authoring_pa_id = fake_get_authoring_pa_id publish.get_write_access_token = fake_get_write_access_token publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_missing_executor(sys): def fake_publish_item(oauth, endpoint, action, authoring_pa_id, token): raise publish.GraderExecutorError( status=publish.GraderExecutorStatus.MISSING) publish.get_authoring_pa_id = fake_get_authoring_pa_id publish.get_write_access_token = fake_get_write_access_token publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_item_not_found_publish(sys): def fake_publish_item(oauth, endpoint, action, course, item, metadata): raise publish.ItemNotFoundError( PublishParams.course, PublishParams.item) publish.get_metadata = fake_get_metadata publish.publish_item = fake_publish_item publish.command_publish(PublishParams) sys.exit.assert_called_with(publish.ErrorCodes.FATAL_ERROR)
def test_multiple_items(): publish.get_metadata = fake_get_metadata publish.publish_item = MagicMock() PublishParams.additional_items = ['4567', '5678'] publish.command_publish(PublishParams) PublishParams.additional_items = None publish.publish_item.assert_has_calls([ call( ANY, "fake-endpoint", "fake-action", "2345", "3456", { "version": 0, "authorId": 1234, "publishedAssignmentId": 4321, "updatedAt": 10000000, } ), call( ANY, "fake-endpoint", "fake-action", "2345", "4567", { "version": 0, "authorId": 1234, "publishedAssignmentId": 4321, "updatedAt": 10000000, } ), call( ANY, "fake-endpoint", "fake-action", "2345", "5678", { "version": 0, "authorId": 1234, "publishedAssignmentId": 4321, "updatedAt": 10000000, } ) ])
def test_multiple_items(): publish.get_authoring_pa_id = fake_get_authoring_pa_id publish.get_write_access_token = fake_get_write_access_token publish.publish_item = MagicMock() PublishParams.additional_items = ['item4567', 'item5678'] publish.command_publish(PublishParams) PublishParams.additional_items = None publish.publish_item.assert_has_calls([ call(ANY, "fake-endpoint", "fake-action", "course2345~item3456", "token4567"), call(ANY, "fake-endpoint", "fake-action", "course2345~item4567", "token4567"), call(ANY, "fake-endpoint", "fake-action", "course2345~item5678", "token4567") ])
def test_called_with_metadata(): publish.get_metadata = fake_get_metadata publish.publish_item = MagicMock() publish.command_publish(PublishParams) publish.publish_item.assert_called_with( ANY, "fake-endpoint", "fake-action", "2345", "3456", { "version": 0, "authorId": 1234, "publishedAssignmentId": 4321, "updatedAt": 10000000, } )