From 021e8c487c6b9bc76c8fac599da4088722fd2d22 Mon Sep 17 00:00:00 2001 From: Mykola Mokhnach Date: Wed, 19 Jun 2024 20:11:18 +0200 Subject: [PATCH] chore: Bump chai and chai-as-promised --- .github/workflows/unit-test.yml | 6 +++--- package.json | 8 ++------ test/functional/webdriveragent-e2e-specs.js | 15 ++++++++------- test/unit/utils-specs.js | 15 ++++++++++----- test/unit/webdriveragent-specs.js | 16 ++++++++++------ 5 files changed, 33 insertions(+), 27 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index ef98e4ca6..b23ecbee6 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -7,11 +7,11 @@ jobs: prepare_matrix: runs-on: ubuntu-latest outputs: - versions: ${{ steps.generate-matrix.outputs.versions }} + versions: ${{ steps.generate-matrix.outputs.active }} steps: - - name: Select 3 most recent LTS versions of Node.js + - name: Select all active LTS versions of Node.js id: generate-matrix - run: echo "versions=$(curl -s https://endoflife.date/api/nodejs.json | jq -c '[[.[] | select(.lts != false)][:3] | .[].cycle | tonumber]')" >> "$GITHUB_OUTPUT" + uses: msimerson/node-lts-versions@v1 test: needs: diff --git a/package.json b/package.json index 11bcdd145..00d29235e 100644 --- a/package.json +++ b/package.json @@ -56,17 +56,13 @@ "@semantic-release/changelog": "^6.0.1", "@semantic-release/git": "^10.0.1", "@types/bluebird": "^3.5.38", - "@types/chai": "^4.3.5", - "@types/chai-as-promised": "^7.1.5", "@types/lodash": "^4.14.196", "@types/mocha": "^10.0.1", "@types/node": "^20.4.7", - "@types/sinon": "^17.0.0", - "@types/sinon-chai": "^3.2.9", "@types/teen_process": "^2.0.1", "appium-xcode": "^5.0.0", - "chai": "^4.2.0", - "chai-as-promised": "^7.1.1", + "chai": "^5.1.1", + "chai-as-promised": "^8.0.0", "conventional-changelog-conventionalcommits": "^8.0.0", "fancy-log": "^2.0.0", "node-simctl": "^7.0.1", diff --git a/test/functional/webdriveragent-e2e-specs.js b/test/functional/webdriveragent-e2e-specs.js index e715fb6d4..1a1a4324f 100644 --- a/test/functional/webdriveragent-e2e-specs.js +++ b/test/functional/webdriveragent-e2e-specs.js @@ -1,5 +1,3 @@ -import chai from 'chai'; -import chaiAsPromised from 'chai-as-promised'; import Simctl from 'node-simctl'; import { getVersion } from 'appium-xcode'; import { getSimulator } from 'appium-ios-simulator'; @@ -15,10 +13,6 @@ const MOCHA_TIMEOUT_MS = 60 * 1000 * 4; const SIM_DEVICE_NAME = 'webDriverAgentTest'; const SIM_STARTUP_TIMEOUT_MS = MOCHA_TIMEOUT_MS; - -chai.should(); -chai.use(chaiAsPromised); - let testUrl = 'http://localhost:8100/tree'; function getStartOpts (device) { @@ -36,9 +30,16 @@ function getStartOpts (device) { describe('WebDriverAgent', function () { this.timeout(MOCHA_TIMEOUT_MS); - + let chai; let xcodeVersion; + before(async function () { + chai = await import('chai'); + const chaiAsPromised = await import('chai-as-promised'); + + chai.should(); + chai.use(chaiAsPromised.default); + // Don't do these tests on Sauce Labs if (process.env.CLOUD) { this.skip(); diff --git a/test/unit/utils-specs.js b/test/unit/utils-specs.js index ad0548e5e..c8002ea43 100644 --- a/test/unit/utils-specs.js +++ b/test/unit/utils-specs.js @@ -1,21 +1,26 @@ import { getXctestrunFilePath, getAdditionalRunContent, getXctestrunFileName } from '../../lib/utils'; import { PLATFORM_NAME_IOS, PLATFORM_NAME_TVOS } from '../../lib/constants'; -import chai from 'chai'; -import chaiAsPromised from 'chai-as-promised'; import { withMocks } from '@appium/test-support'; import { fs } from '@appium/support'; import path from 'path'; import { fail } from 'assert'; import { arch } from 'os'; -chai.should(); -chai.use(chaiAsPromised); - function get_arch() { return arch() === 'arm64' ? 'arm64' : 'x86_64'; } describe('utils', function () { + let chai; + + before(async function() { + chai = await import('chai'); + const chaiAsPromised = await import('chai-as-promised'); + + chai.should(); + chai.use(chaiAsPromised.default); + }); + describe('#getXctestrunFilePath', withMocks({fs}, function (mocks) { const platformVersion = '12.0'; const sdkVersion = '12.2'; diff --git a/test/unit/webdriveragent-specs.js b/test/unit/webdriveragent-specs.js index 7887fbaef..1b844e08a 100644 --- a/test/unit/webdriveragent-specs.js +++ b/test/unit/webdriveragent-specs.js @@ -1,16 +1,10 @@ import { BOOTSTRAP_PATH } from '../../lib/utils'; import { WebDriverAgent } from '../../lib/webdriveragent'; import * as utils from '../../lib/utils'; -import chai from 'chai'; -import chaiAsPromised from 'chai-as-promised'; import path from 'path'; import _ from 'lodash'; import sinon from 'sinon'; - -chai.should(); -chai.use(chaiAsPromised); - const fakeConstructorArgs = { device: 'some sim', platformVersion: '9', @@ -25,6 +19,16 @@ const customAgentPath = '/path/to/some/agent/WebDriverAgent.xcodeproj'; const customDerivedDataPath = '/path/to/some/agent/DerivedData/'; describe('Constructor', function () { + let chai; + + before(async function() { + chai = await import('chai'); + const chaiAsPromised = await import('chai-as-promised'); + + chai.should(); + chai.use(chaiAsPromised.default); + }); + it('should have a default wda agent if not specified', function () { let agent = new WebDriverAgent({}, fakeConstructorArgs); agent.bootstrapPath.should.eql(BOOTSTRAP_PATH);