diff --git a/.github/workflows/integration-tests.yaml b/.github/workflows/integration-tests.yaml index 9ec5751d8..f62c3ee57 100644 --- a/.github/workflows/integration-tests.yaml +++ b/.github/workflows/integration-tests.yaml @@ -23,7 +23,6 @@ jobs: - name: Run tests run: | cd integration-tests - yarn wait yarn test services: diff --git a/integration-tests/__tests__/table-analyse.spec.js b/integration-tests/__tests__/table-analyse.spec.js index 05847d1ce..f6120380c 100644 --- a/integration-tests/__tests__/table-analyse.spec.js +++ b/integration-tests/__tests__/table-analyse.spec.js @@ -26,7 +26,7 @@ const t1Match = expect.objectContaining({ }), }); -describe.skip('Table analyse', () => { +describe('Table analyse', () => { test.each(engines.map(engine => [engine.label, engine]))( 'Table structure - full analysis (%s)', async (label, engine) => { diff --git a/integration-tests/wait.js b/integration-tests/wait.js index b5bdfee7f..f982a881d 100644 --- a/integration-tests/wait.js +++ b/integration-tests/wait.js @@ -2,23 +2,26 @@ const requireEngineDriver = require('dbgate-api/src/utility/requireEngineDriver' const engines = require('./engines'); global.DBGATE_TOOLS = require('dbgate-tools'); -async function run() { - for (const engine of engines) { - const driver = requireEngineDriver(engine.connection); - for (;;) { - try { - const conn = await driver.connect(engine.connection); - await driver.getVersion(conn); - console.log(`Connect to ${engine.label} - OK`); - await driver.close(conn); - break; - } catch (err) { - console.log(`Waiting for ${engine.label}`); - await new Promise(resolve => setTimeout(resolve, 1000)); - continue; - } +async function connectEngine(engine) { + const driver = requireEngineDriver(engine.connection); + for (;;) { + try { + const conn = await driver.connect(engine.connection); + await driver.getVersion(conn); + console.log(`Connect to ${engine.label} - OK`); + await driver.close(conn); + return; + } catch (err) { + console.log(`Waiting for ${engine.label}, error: ${err.message}`); + await new Promise(resolve => setTimeout(resolve, 2500)); + continue; } } } +async function run() { + await new Promise(resolve => setTimeout(resolve, 10000)); + await Promise.all(engines.map(engine => connectEngine(engine))); +} + run();