From fc3932694ac3ad1b7bf6f5607d087869b871d60c Mon Sep 17 00:00:00 2001 From: Josh Holtz Date: Tue, 25 Jan 2022 20:14:55 -0600 Subject: [PATCH] Fix tests and link --- deliver/lib/deliver/runner.rb | 4 +- deliver/lib/deliver/submit_for_review.rb | 4 +- deliver/spec/submit_for_review_spec.rb | 55 +++++++++++++++++++++--- 3 files changed, 51 insertions(+), 12 deletions(-) diff --git a/deliver/lib/deliver/runner.rb b/deliver/lib/deliver/runner.rb index 2dfdd4944eb..79d644cb3cc 100644 --- a/deliver/lib/deliver/runner.rb +++ b/deliver/lib/deliver/runner.rb @@ -200,11 +200,11 @@ def reject_version_if_possible submission = app.get_in_progress_review_submission(platform: platform) if submission - submission.cancel_submission() + submission.cancel_submission UI.message("Review submission cancellation has been requested") # An app version won't get removed from review instantly - # Polling until app version has a state of DEVELOPER_REJECT + # Polling until app version has a state of DEVELOPER_REJECT loop do version = app.get_edit_app_store_version(platform: platform) if version.app_store_state == Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::DEVELOPER_REJECTED diff --git a/deliver/lib/deliver/submit_for_review.rb b/deliver/lib/deliver/submit_for_review.rb index b8ef79fa15f..77e43e167f0 100644 --- a/deliver/lib/deliver/submit_for_review.rb +++ b/deliver/lib/deliver/submit_for_review.rb @@ -28,14 +28,12 @@ def submit!(options) end private - + def create_review_submission(options, app, version, platform) if app.get_in_progress_review_submission(platform: platform) UI.user_error!("Cannot submit for review - A review submission is already in progress") end - # TODO: I don't like this logic here - # Maybe error out if there are aleady items in this review? submission = app.get_ready_review_submission(platform: platform, includes: "items") if submission.nil? diff --git a/deliver/spec/submit_for_review_spec.rb b/deliver/spec/submit_for_review_spec.rb index e92958c1d8d..6df0dfaa12b 100644 --- a/deliver/spec/submit_for_review_spec.rb +++ b/deliver/spec/submit_for_review_spec.rb @@ -8,11 +8,17 @@ let(:app) { double('app') } let(:edit_version) do double('edit_version', + id: '1', version_string: "1.0.0") end let(:selected_build) { double('selected_build') } let(:idfa_declaration) { double('idfa_declaration') } + let(:empty_submission) do + double('empty_submission', + id: '1') + end + before do allow(Deliver).to receive(:cache).and_return({ app: app }) end @@ -84,7 +90,12 @@ expect(edit_version).to receive(:fetch_idfa_declaration).and_return(nil) expect(edit_version).to receive(:uses_idfa).and_return(false) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -108,7 +119,12 @@ expect(edit_version).to receive(:fetch_idfa_declaration).and_return(nil) expect(edit_version).to receive(:uses_idfa).and_return(false) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -135,7 +151,12 @@ contentRightsDeclaration: "USES_THIRD_PARTY_CONTENT" }) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -159,7 +180,12 @@ expect(edit_version).to receive(:update).with(attributes: { usesIdfa: false }).and_return(edit_version) expect(edit_version).to receive(:uses_idfa).and_return(false).exactly(2).times - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -182,7 +208,12 @@ expect(edit_version).to receive(:uses_idfa).and_return(false).exactly(2).times expect(idfa_declaration).to receive(:delete!) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -216,7 +247,12 @@ attributesActionWithPreviousAd: true }) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end @@ -250,7 +286,12 @@ attributesActionWithPreviousAd: true }) - expect(edit_version).to receive(:create_app_store_version_submission) + expect(app).to receive(:get_in_progress_review_submission).and_return(nil) + expect(app).to receive(:get_ready_review_submission).and_return(nil) + expect(app).to receive(:create_review_submission).and_return(empty_submission) + + expect(empty_submission).to receive(:add_app_store_version_to_review_items).with(app_store_version_id: edit_version.id) + expect(empty_submission).to receive(:submit_for_review) review_submitter.submit!(options) end