diff --git a/app/javascript/packages/document-capture/context/acuant.tsx b/app/javascript/packages/document-capture/context/acuant.tsx
index ae9dbd5e400..d6662a1a090 100644
--- a/app/javascript/packages/document-capture/context/acuant.tsx
+++ b/app/javascript/packages/document-capture/context/acuant.tsx
@@ -193,8 +193,8 @@ const getActualAcuantCamera = (): AcuantCameraInterface => {
};
function AcuantContextProvider({
- sdkSrc = '/acuant/11.8.1/AcuantJavascriptWebSdk.min.js',
- cameraSrc = '/acuant/11.8.1/AcuantCamera.min.js',
+ sdkSrc,
+ cameraSrc,
credentials = null,
endpoint = null,
glareThreshold = DEFAULT_ACCEPTABLE_GLARE_SCORE,
diff --git a/config/application.yml.default b/config/application.yml.default
index 95b0428c86a..76ac6f12055 100644
--- a/config/application.yml.default
+++ b/config/application.yml.default
@@ -124,8 +124,8 @@ idv_available: true
idv_contact_phone_number: (844) 555-5555
idv_max_attempts: 5
idv_min_age_years: 13
-idv_acuant_sdk_version_default: '11.8.1'
-idv_acuant_sdk_version_alternate: '11.8.0'
+idv_acuant_sdk_version_default: '11.8.2'
+idv_acuant_sdk_version_alternate: '11.8.1'
idv_acuant_sdk_upgrade_a_b_testing_enabled: false
idv_acuant_sdk_upgrade_a_b_testing_percent: 50
idv_send_link_attempt_window_in_minutes: 10
diff --git a/spec/javascript/packages/document-capture/components/acuant-sdk-spec.js b/spec/javascript/packages/document-capture/components/acuant-sdk-spec.js
index eb76b001f18..0c848e0b1cd 100644
--- a/spec/javascript/packages/document-capture/components/acuant-sdk-spec.js
+++ b/spec/javascript/packages/document-capture/components/acuant-sdk-spec.js
@@ -2,50 +2,61 @@
* Acuant SDK Loading Tests
*
*/
+import fs from 'node:fs/promises';
+import path from 'node:path';
+
import { JSDOM } from 'jsdom';
-import AcuantJavascriptWebSdk from '../../../../../public/acuant/11.8.1/AcuantJavascriptWebSdk.min.js';
-
-const sdkPaths = {
- '11.8.1': '../../../../../public/acuant/11.8.1/AcuantJavascriptWebSdk.min.js',
-};
-
-const TEST_URL = `file://${__dirname}/index.html`;
-
-const { window } = new JSDOM(
- '
JSDOM',
- {
- url: TEST_URL,
- runScripts: 'dangerously',
- resources: 'usable',
- },
-);
-const { document } = window;
-
-describe('Acuant SDK Loading Tests', () => {
- it('Can load something from the SDK file', () => {
- expect(AcuantJavascriptWebSdk).to.exist();
- });
- describe('DOM Loading 11.8.1', () => {
- before((done) => {
- const scriptEl = document.createElement('script');
- scriptEl.id = 'test-acuant-sdk-script';
- scriptEl.onload = () => {
- done();
- };
- scriptEl.src = sdkPaths['11.8.1'];
- document.body.append(scriptEl);
- });
- it('There is a script element in the DOM', () => {
- const found = document.getElementById('test-acuant-sdk-script');
- expect(found).to.exist();
- });
- it('Has a global loadAcuantSdk object on the window', () => {
- expect(window.loadAcuantSdk).to.exist();
- });
- it('Calling loadAcuantSdk gives us AcuantJavascriptWebSdk in the global scope and as a prop of the window', () => {
- window.loadAcuantSdk();
- expect(AcuantJavascriptWebSdk).to.exist();
- expect(window.AcuantJavascriptWebSdk).to.exist();
+
+const ACUANT_PUBLIC_DIR = '../../../../../public/acuant';
+const VERSION_REGEX = /^\d+\.\d+\.\d+$/;
+
+describe('Acuant SDK Loading Tests', async () => {
+ const sdks = (await fs.readdir(path.join(__dirname, ACUANT_PUBLIC_DIR))).filter((dir) =>
+ VERSION_REGEX.test(dir),
+ );
+
+ if (!sdks.length) {
+ throw new Error('Expected to find at least one SDK version, but found none');
+ }
+
+ sdks.forEach((version) => {
+ describe(version, () => {
+ const TEST_URL = `file://${__dirname}/index.html`;
+
+ const { window } = new JSDOM(
+ 'JSDOM',
+ {
+ url: TEST_URL,
+ runScripts: 'dangerously',
+ resources: 'usable',
+ },
+ );
+
+ const { document } = window;
+
+ before((done) => {
+ const scriptEl = document.createElement('script');
+ scriptEl.id = 'test-acuant-sdk-script';
+ scriptEl.onload = () => {
+ done();
+ };
+ scriptEl.src = `${ACUANT_PUBLIC_DIR}/${version}/AcuantJavascriptWebSdk.min.js`;
+ document.body.append(scriptEl);
+ });
+
+ it('There is a script element in the DOM', () => {
+ const found = document.getElementById('test-acuant-sdk-script');
+ expect(found).to.exist();
+ });
+
+ it('Has a global loadAcuantSdk object on the window', () => {
+ expect(window.loadAcuantSdk).to.exist();
+ });
+
+ it('Calling loadAcuantSdk gives us AcuantJavascriptWebSdk as a prop of the window', () => {
+ window.loadAcuantSdk();
+ expect(window).to.have.property('AcuantJavascriptWebSdk');
+ });
});
});
});
diff --git a/spec/views/idv/shared/_document_capture.html.erb_spec.rb b/spec/views/idv/shared/_document_capture.html.erb_spec.rb
index e9d5d4a3922..5fa68c60112 100644
--- a/spec/views/idv/shared/_document_capture.html.erb_spec.rb
+++ b/spec/views/idv/shared/_document_capture.html.erb_spec.rb
@@ -15,7 +15,7 @@
let(:back_image_upload_url) { nil }
let(:acuant_sdk_upgrade_a_b_testing_enabled) { false }
let(:use_alternate_sdk) { false }
- let(:acuant_version) { '11.8.1' }
+ let(:acuant_version) { '1.3.3.7' }
let(:in_person_cta_variant_testing_enabled) { false }
let(:in_person_cta_variant_active) { '' }