diff --git a/tests/js/jobs_domain.test.js b/tests/js/jobs_domain.test.js index 4d4aa01..459ea61 100644 --- a/tests/js/jobs_domain.test.js +++ b/tests/js/jobs_domain.test.js @@ -52,8 +52,11 @@ test('approved continuation enqueue matches the stored approval scope key', asyn const first = await dispatch(window, 'enqueue', request); const approvalScopeKey = window.slopsmith.jobs._test.jobs.get(first.payload.job.jobId).approvalScopeKey; + const rejected = await dispatch(window, 'enqueue', { ...request, authorization: 'approved-continuation', approvalScopeKey: `${approvalScopeKey}-mismatch` }); const continued = await dispatch(window, 'enqueue', { ...request, authorization: 'approved-continuation', approvalScopeKey }); + assert.equal(rejected.status, 'blocked'); + assert.equal(rejected.outcome, 'denied'); assert.equal(continued.status, 'applied'); assert.equal(calls.length, 2); }); diff --git a/tests/js/jobs_scheduling.test.js b/tests/js/jobs_scheduling.test.js index e88e66b..f8b6fe9 100644 --- a/tests/js/jobs_scheduling.test.js +++ b/tests/js/jobs_scheduling.test.js @@ -137,8 +137,11 @@ test('retry accepts approved continuation using the stored scope key', async () const approvalScopeKey = window.slopsmith.jobs._test.jobs.get(jobId).approvalScopeKey; window.slopsmith.jobs.fail(provider.providerId, jobId, { category: 'provider-failure', safeReason: 'retryable failure', retryable: true }); + const rejected = await dispatch(window, 'retry', { jobId, authorization: 'approved-continuation', approvalScopeKey: `${approvalScopeKey}-mismatch` }); const retried = await dispatch(window, 'retry', { jobId, authorization: 'approved-continuation', approvalScopeKey }); + assert.equal(rejected.status, 'blocked'); + assert.equal(rejected.outcome, 'denied'); assert.equal(retried.status, 'retry-started'); });