diff --git a/addons/api/README.md b/addons/api/README.md index 3e942bc54..413d47342 100644 --- a/addons/api/README.md +++ b/addons/api/README.md @@ -21,17 +21,50 @@ This addon contains the API data access layer for Boundary. ## Add API to an App Add this addon to an Ember application's `devDependencies` as: -`"api": "workspace:*"`, for applications included in this monorepo. +`"api": "workspace:*"`, for applications included in this monorepo. -Since this addon also includes Mirage mocks, be sure to install -`ember-cli-mirage` and add the following config to your UI project: +This addon also includes Mirage mocks. To include the `miragejs` dependency and this addon's mirage handlers configure the consuming app's `config/environment.js` ```js -'ember-cli-mirage': { - directory: '../../addons/api/mirage' +mirage: { + enabled: true } ``` +Include `miragejs` and any api addon `peerDependencies` used by the mirage as dev dependencies in the consuming app, +eg: `@faker-js/faker`, otherwise mirage handler code might fail with an error. + +To have mirage start and intercept requests when the application starts: +1. Add the `@embroider/macros` dependency to your application +2. Configure `@embroider/macros` with `startMirageWithApp` based on app's config within `ember-cli-build.js`: + +```js +// ember-cli-build.js +module.exports = async function (defaults) { + // load the app's config + const { EMBER_ENV } = process.env; + var config = require('./config/environment')(EMBER_ENV); + + const app = new EmberApp(defaults, { + '@embroider/macros': { + setOwnConfig: { + startMirageWithApp: config.mirage?.enabled ?? false + }, + }, + }); +} +``` + +3. Finally, use the `@embroider/macros` config value for `startMirageWithApp` in `app/app.js` to conditionally start mirage: + +```js +import { macroCondition, importSync, getOwnConfig, isTesting } from '@embroider/macros'; + +if (macroCondition(getOwnConfig().startMirageWithApp && !isTesting())) { + const startServer = importSync('[name of host app]/mirage/config').default; + startServer({}); +} +``` ## Installation See monorepo README for installation instructions. diff --git a/addons/api/addon-test-support/helpers/create-mirage-helper.js b/addons/api/addon-test-support/helpers/create-mirage-helper.js new file mode 100644 index 000000000..78845969d --- /dev/null +++ b/addons/api/addon-test-support/helpers/create-mirage-helper.js @@ -0,0 +1,34 @@ +/** + * Copyright IBM Corp. 2021, 2026 + * SPDX-License-Identifier: BUSL-1.1 + */ + +import { settled } from '@ember/test-helpers'; + +export function createSetupMirage(startMirage) { + return function setupMirage(hooks) { + hooks.beforeEach(function () { + if (!this.owner) { + throw new Error( + 'Must call one of the ember-qunit setupTest() / setupRenderingTest() / setupApplicationTest() first', + ); + } + + // the environment property here is configuration to the mirage server: + // https://github.com/miragejs/miragejs/blob/7ff4f3f6fe56bf0cb1648f5af3f5210fcb07e20b/types/index.d.ts#L383 + // It is not related to ember's build environment. In this case for mirage the "test" environment does + // not load the default scenario: + // https://github.com/miragejs/miragejs/blob/7ff4f3f6fe56bf0cb1648f5af3f5210fcb07e20b/lib/server.js#L302 + this.server = startMirage({ environment: 'test' }); + }); + + hooks.afterEach(function () { + return settled().then(() => { + if (this.server) { + this.server.shutdown(); + delete this.server; + } + }); + }); + }; +} diff --git a/addons/api/mirage/config.js b/addons/api/app/mirage/config.js similarity index 78% rename from addons/api/mirage/config.js rename to addons/api/app/mirage/config.js index 745af03ba..a9eb58499 100644 --- a/addons/api/mirage/config.js +++ b/addons/api/app/mirage/config.js @@ -3,12 +3,7 @@ * SPDX-License-Identifier: BUSL-1.1 */ -import { - discoverEmberDataModels, - applyEmberDataSerializers, -} from 'ember-cli-mirage'; import { createServer, Response } from 'miragejs'; -import environmentConfig from '../config/environment'; import { authHandler, deauthHandler } from './route-handlers/auth'; import { targetHandler } from './route-handlers/target'; import { pickRandomStatusString } from './factories/session'; @@ -17,19 +12,177 @@ import makeBooleanFilter from './helpers/bexpr-filter'; import { faker } from '@faker-js/faker'; import { asciicasts } from './data/asciicasts'; import { TYPE_WORKER_PKI } from 'api/models/worker'; +import environmentConfig from 'ember-get-config'; + +// mirage models (alphabetical) +import accountModel from './models/account'; +import aliasModel from './models/alias'; +import authMethodModel from './models/auth-method'; +import baseModel from './models/base'; +import channelRecordingModel from './models/channel-recording'; +import connectionRecordingModel from './models/connection-recording'; +import credentialLibraryModel from './models/credential-library'; +import credentialStoreModel from './models/credential-store'; +import credentialModel from './models/credential'; +import groupModel from './models/group'; +import hostCatalogModel from './models/host-catalog'; +import hostSetModel from './models/host-set'; +import hostModel from './models/host'; +import managedGroupModel from './models/managed-group'; +import policyModel from './models/policy'; +import roleModel from './models/role'; +import scopeModel from './models/scope'; +import sessionRecordingModel from './models/session-recording'; +import sessionModel from './models/session'; +import storageBucketModel from './models/storage-bucket'; +import targetModel from './models/target'; +import userModel from './models/user'; +import workerModel from './models/worker'; + +// mirage serializers (alphabetical) +import accountSerializer from './serializers/account'; +import aliasSerializer from './serializers/alias'; +import applicationSerializer from './serializers/application'; +import authMethodSerializer from './serializers/auth-method'; +import channelRecordingSerializer from './serializers/channel-recording'; +import connectionRecordingSerializer from './serializers/connection-recording'; +import credentialLibrarySerializer from './serializers/credential-library'; +import credentialStoreSerializer from './serializers/credential-store'; +import credentialSerializer from './serializers/credential'; +import groupSerializer from './serializers/group'; +import hostCatalogSerializer from './serializers/host-catalog'; +import hostSetSerializer from './serializers/host-set'; +import hostSerializer from './serializers/host'; +import managedGroupSerializer from './serializers/managed-group'; +import policySerializer from './serializers/policy'; +import roleSerializer from './serializers/role'; +import scopeSerializer from './serializers/scope'; +import sessionRecordingSerializer from './serializers/session-recording'; +import sessionSerializer from './serializers/session'; +import storageBucketSerializer from './serializers/storage-bucket'; +import targetSerializer from './serializers/target'; +import userSerializer from './serializers/user'; +import workerSerializer from './serializers/worker'; + +// mirage scenarios (alphabetical) +import defaultScenario from './scenarios/default'; +import ipcScenario from './scenarios/ipc'; + +// mirage factories (alphabetical) +import accountFactory from './factories/account'; +import aliasFactory from './factories/alias'; +import authMethodFactory from './factories/auth-method'; +import channelRecordingFactory from './factories/channel-recording'; +import connectionRecordingFactory from './factories/connection-recording'; +import credentialLibraryFactory from './factories/credential-library'; +import credentialStoreFactory from './factories/credential-store'; +import credentialFactory from './factories/credential'; +import groupFactory from './factories/group'; +import hostCatalogFactory from './factories/host-catalog'; +import hostSetFactory from './factories/host-set'; +import hostFactory from './factories/host'; +import managedGroupFactory from './factories/managed-group'; +import policyFactory from './factories/policy'; +import roleFactory from './factories/role'; +import scopeFactory from './factories/scope'; +import sessionRecordingFactory from './factories/session-recording'; +import storageBucketFactory from './factories/storage-bucket'; +import sessionFactory from './factories/session'; +import targetFactory from './factories/target'; +import userFactory from './factories/user'; +import workerFactory from './factories/worker'; const isTesting = environmentConfig.environment === 'test'; // Main function -// More info about server configuration https://www.ember-cli-mirage.com/docs/advanced/server-configuration +// More info about server configuration: +// https://github.com/miragejs/miragejs/blob/7ff4f3f6fe56bf0cb1648f5af3f5210fcb07e20b/types/index.d.ts#L375-L404 export default function (mirageConfig) { let finalConfig = { ...mirageConfig, - models: { - ...discoverEmberDataModels(mirageConfig.store), - ...mirageConfig.models, + + scenarios: { + default: defaultScenario, + ipcScenario: ipcScenario, }, - serializers: applyEmberDataSerializers(mirageConfig.serializers), + + factories: { + account: accountFactory, + alias: aliasFactory, + authMethod: authMethodFactory, + channelRecording: channelRecordingFactory, + connectionRecording: connectionRecordingFactory, + credentialLibrary: credentialLibraryFactory, + credentialStore: credentialStoreFactory, + credential: credentialFactory, + group: groupFactory, + hostCatalog: hostCatalogFactory, + hostSet: hostSetFactory, + host: hostFactory, + managedGroup: managedGroupFactory, + policy: policyFactory, + role: roleFactory, + scope: scopeFactory, + sessionRecording: sessionRecordingFactory, + session: sessionFactory, + storageBucket: storageBucketFactory, + target: targetFactory, + user: userFactory, + worker: workerFactory, + }, + + models: { + account: accountModel, + alias: aliasModel, + authMethod: authMethodModel, + base: baseModel, + channelRecording: channelRecordingModel, + connectionRecording: connectionRecordingModel, + credentialLibrary: credentialLibraryModel, + credentialStore: credentialStoreModel, + credential: credentialModel, + group: groupModel, + hostCatalog: hostCatalogModel, + hostSet: hostSetModel, + host: hostModel, + managedGroup: managedGroupModel, + policy: policyModel, + role: roleModel, + scope: scopeModel, + sessionRecording: sessionRecordingModel, + session: sessionModel, + storageBucket: storageBucketModel, + target: targetModel, + user: userModel, + worker: workerModel, + }, + + serializers: { + account: accountSerializer, + alias: aliasSerializer, + application: applicationSerializer, + authMethod: authMethodSerializer, + channelRecording: channelRecordingSerializer, + connectionRecording: connectionRecordingSerializer, + credentialLibrary: credentialLibrarySerializer, + credentialStore: credentialStoreSerializer, + credential: credentialSerializer, + group: groupSerializer, + hostCatalog: hostCatalogSerializer, + hostSet: hostSetSerializer, + host: hostSerializer, + managedGroup: managedGroupSerializer, + policy: policySerializer, + role: roleSerializer, + scope: scopeSerializer, + sessionRecording: sessionRecordingSerializer, + session: sessionSerializer, + storageBucket: storageBucketSerializer, + target: targetSerializer, + user: userSerializer, + worker: workerSerializer, + }, + routes, }; return createServer(finalConfig); @@ -58,7 +211,7 @@ function routes() { }); // make this `/api`, for example, if your API is namespaced - this.namespace = environmentConfig.api.namespace; + this.namespace = environmentConfig.api?.namespace; // delay for each request, automatically set to 0 during testing this.timing = 1; diff --git a/addons/api/mirage/data/asciicasts.js b/addons/api/app/mirage/data/asciicasts.js similarity index 100% rename from addons/api/mirage/data/asciicasts.js rename to addons/api/app/mirage/data/asciicasts.js diff --git a/addons/api/mirage/factories/account.js b/addons/api/app/mirage/factories/account.js similarity index 100% rename from addons/api/mirage/factories/account.js rename to addons/api/app/mirage/factories/account.js diff --git a/addons/api/mirage/factories/alias.js b/addons/api/app/mirage/factories/alias.js similarity index 100% rename from addons/api/mirage/factories/alias.js rename to addons/api/app/mirage/factories/alias.js diff --git a/addons/api/mirage/factories/auth-method.js b/addons/api/app/mirage/factories/auth-method.js similarity index 100% rename from addons/api/mirage/factories/auth-method.js rename to addons/api/app/mirage/factories/auth-method.js diff --git a/addons/api/mirage/factories/channel-recording.js b/addons/api/app/mirage/factories/channel-recording.js similarity index 100% rename from addons/api/mirage/factories/channel-recording.js rename to addons/api/app/mirage/factories/channel-recording.js diff --git a/addons/api/mirage/factories/connection-recording.js b/addons/api/app/mirage/factories/connection-recording.js similarity index 100% rename from addons/api/mirage/factories/connection-recording.js rename to addons/api/app/mirage/factories/connection-recording.js diff --git a/addons/api/mirage/factories/credential-library.js b/addons/api/app/mirage/factories/credential-library.js similarity index 100% rename from addons/api/mirage/factories/credential-library.js rename to addons/api/app/mirage/factories/credential-library.js diff --git a/addons/api/mirage/factories/credential-store.js b/addons/api/app/mirage/factories/credential-store.js similarity index 100% rename from addons/api/mirage/factories/credential-store.js rename to addons/api/app/mirage/factories/credential-store.js diff --git a/addons/api/mirage/factories/credential.js b/addons/api/app/mirage/factories/credential.js similarity index 100% rename from addons/api/mirage/factories/credential.js rename to addons/api/app/mirage/factories/credential.js diff --git a/addons/api/mirage/factories/group.js b/addons/api/app/mirage/factories/group.js similarity index 100% rename from addons/api/mirage/factories/group.js rename to addons/api/app/mirage/factories/group.js diff --git a/addons/api/mirage/factories/host-catalog.js b/addons/api/app/mirage/factories/host-catalog.js similarity index 100% rename from addons/api/mirage/factories/host-catalog.js rename to addons/api/app/mirage/factories/host-catalog.js diff --git a/addons/api/mirage/factories/host-set.js b/addons/api/app/mirage/factories/host-set.js similarity index 100% rename from addons/api/mirage/factories/host-set.js rename to addons/api/app/mirage/factories/host-set.js diff --git a/addons/api/mirage/factories/host.js b/addons/api/app/mirage/factories/host.js similarity index 100% rename from addons/api/mirage/factories/host.js rename to addons/api/app/mirage/factories/host.js diff --git a/addons/api/mirage/factories/managed-group.js b/addons/api/app/mirage/factories/managed-group.js similarity index 100% rename from addons/api/mirage/factories/managed-group.js rename to addons/api/app/mirage/factories/managed-group.js diff --git a/addons/api/mirage/factories/policy.js b/addons/api/app/mirage/factories/policy.js similarity index 100% rename from addons/api/mirage/factories/policy.js rename to addons/api/app/mirage/factories/policy.js diff --git a/addons/api/mirage/factories/role.js b/addons/api/app/mirage/factories/role.js similarity index 100% rename from addons/api/mirage/factories/role.js rename to addons/api/app/mirage/factories/role.js diff --git a/addons/api/mirage/factories/scope.js b/addons/api/app/mirage/factories/scope.js similarity index 100% rename from addons/api/mirage/factories/scope.js rename to addons/api/app/mirage/factories/scope.js diff --git a/addons/api/mirage/factories/session-recording.js b/addons/api/app/mirage/factories/session-recording.js similarity index 100% rename from addons/api/mirage/factories/session-recording.js rename to addons/api/app/mirage/factories/session-recording.js diff --git a/addons/api/mirage/factories/session.js b/addons/api/app/mirage/factories/session.js similarity index 100% rename from addons/api/mirage/factories/session.js rename to addons/api/app/mirage/factories/session.js diff --git a/addons/api/mirage/factories/storage-bucket.js b/addons/api/app/mirage/factories/storage-bucket.js similarity index 100% rename from addons/api/mirage/factories/storage-bucket.js rename to addons/api/app/mirage/factories/storage-bucket.js diff --git a/addons/api/mirage/factories/target.js b/addons/api/app/mirage/factories/target.js similarity index 100% rename from addons/api/mirage/factories/target.js rename to addons/api/app/mirage/factories/target.js diff --git a/addons/api/mirage/factories/user.js b/addons/api/app/mirage/factories/user.js similarity index 100% rename from addons/api/mirage/factories/user.js rename to addons/api/app/mirage/factories/user.js diff --git a/addons/api/mirage/factories/worker.js b/addons/api/app/mirage/factories/worker.js similarity index 100% rename from addons/api/mirage/factories/worker.js rename to addons/api/app/mirage/factories/worker.js diff --git a/addons/api/mirage/generated/factories/account.js b/addons/api/app/mirage/generated/factories/account.js similarity index 100% rename from addons/api/mirage/generated/factories/account.js rename to addons/api/app/mirage/generated/factories/account.js diff --git a/addons/api/mirage/generated/factories/alias.js b/addons/api/app/mirage/generated/factories/alias.js similarity index 100% rename from addons/api/mirage/generated/factories/alias.js rename to addons/api/app/mirage/generated/factories/alias.js diff --git a/addons/api/mirage/generated/factories/auth-method.js b/addons/api/app/mirage/generated/factories/auth-method.js similarity index 100% rename from addons/api/mirage/generated/factories/auth-method.js rename to addons/api/app/mirage/generated/factories/auth-method.js diff --git a/addons/api/mirage/generated/factories/channel-recording.js b/addons/api/app/mirage/generated/factories/channel-recording.js similarity index 100% rename from addons/api/mirage/generated/factories/channel-recording.js rename to addons/api/app/mirage/generated/factories/channel-recording.js diff --git a/addons/api/mirage/generated/factories/connection-recording.js b/addons/api/app/mirage/generated/factories/connection-recording.js similarity index 100% rename from addons/api/mirage/generated/factories/connection-recording.js rename to addons/api/app/mirage/generated/factories/connection-recording.js diff --git a/addons/api/mirage/generated/factories/credential-library.js b/addons/api/app/mirage/generated/factories/credential-library.js similarity index 100% rename from addons/api/mirage/generated/factories/credential-library.js rename to addons/api/app/mirage/generated/factories/credential-library.js diff --git a/addons/api/mirage/generated/factories/credential-store.js b/addons/api/app/mirage/generated/factories/credential-store.js similarity index 100% rename from addons/api/mirage/generated/factories/credential-store.js rename to addons/api/app/mirage/generated/factories/credential-store.js diff --git a/addons/api/mirage/generated/factories/credential.js b/addons/api/app/mirage/generated/factories/credential.js similarity index 100% rename from addons/api/mirage/generated/factories/credential.js rename to addons/api/app/mirage/generated/factories/credential.js diff --git a/addons/api/mirage/generated/factories/group.js b/addons/api/app/mirage/generated/factories/group.js similarity index 100% rename from addons/api/mirage/generated/factories/group.js rename to addons/api/app/mirage/generated/factories/group.js diff --git a/addons/api/mirage/generated/factories/host-catalog.js b/addons/api/app/mirage/generated/factories/host-catalog.js similarity index 100% rename from addons/api/mirage/generated/factories/host-catalog.js rename to addons/api/app/mirage/generated/factories/host-catalog.js diff --git a/addons/api/mirage/generated/factories/host-set.js b/addons/api/app/mirage/generated/factories/host-set.js similarity index 100% rename from addons/api/mirage/generated/factories/host-set.js rename to addons/api/app/mirage/generated/factories/host-set.js diff --git a/addons/api/mirage/generated/factories/host.js b/addons/api/app/mirage/generated/factories/host.js similarity index 100% rename from addons/api/mirage/generated/factories/host.js rename to addons/api/app/mirage/generated/factories/host.js diff --git a/addons/api/mirage/generated/factories/managed-group.js b/addons/api/app/mirage/generated/factories/managed-group.js similarity index 100% rename from addons/api/mirage/generated/factories/managed-group.js rename to addons/api/app/mirage/generated/factories/managed-group.js diff --git a/addons/api/mirage/generated/factories/org.js b/addons/api/app/mirage/generated/factories/org.js similarity index 100% rename from addons/api/mirage/generated/factories/org.js rename to addons/api/app/mirage/generated/factories/org.js diff --git a/addons/api/mirage/generated/factories/policy.js b/addons/api/app/mirage/generated/factories/policy.js similarity index 100% rename from addons/api/mirage/generated/factories/policy.js rename to addons/api/app/mirage/generated/factories/policy.js diff --git a/addons/api/mirage/generated/factories/project.js b/addons/api/app/mirage/generated/factories/project.js similarity index 100% rename from addons/api/mirage/generated/factories/project.js rename to addons/api/app/mirage/generated/factories/project.js diff --git a/addons/api/mirage/generated/factories/role.js b/addons/api/app/mirage/generated/factories/role.js similarity index 100% rename from addons/api/mirage/generated/factories/role.js rename to addons/api/app/mirage/generated/factories/role.js diff --git a/addons/api/mirage/generated/factories/scope.js b/addons/api/app/mirage/generated/factories/scope.js similarity index 100% rename from addons/api/mirage/generated/factories/scope.js rename to addons/api/app/mirage/generated/factories/scope.js diff --git a/addons/api/mirage/generated/factories/session-recording.js b/addons/api/app/mirage/generated/factories/session-recording.js similarity index 100% rename from addons/api/mirage/generated/factories/session-recording.js rename to addons/api/app/mirage/generated/factories/session-recording.js diff --git a/addons/api/mirage/generated/factories/session.js b/addons/api/app/mirage/generated/factories/session.js similarity index 100% rename from addons/api/mirage/generated/factories/session.js rename to addons/api/app/mirage/generated/factories/session.js diff --git a/addons/api/mirage/generated/factories/storage-bucket.js b/addons/api/app/mirage/generated/factories/storage-bucket.js similarity index 100% rename from addons/api/mirage/generated/factories/storage-bucket.js rename to addons/api/app/mirage/generated/factories/storage-bucket.js diff --git a/addons/api/mirage/generated/factories/target.js b/addons/api/app/mirage/generated/factories/target.js similarity index 100% rename from addons/api/mirage/generated/factories/target.js rename to addons/api/app/mirage/generated/factories/target.js diff --git a/addons/api/mirage/generated/factories/user.js b/addons/api/app/mirage/generated/factories/user.js similarity index 100% rename from addons/api/mirage/generated/factories/user.js rename to addons/api/app/mirage/generated/factories/user.js diff --git a/addons/api/mirage/generated/factories/worker.js b/addons/api/app/mirage/generated/factories/worker.js similarity index 100% rename from addons/api/mirage/generated/factories/worker.js rename to addons/api/app/mirage/generated/factories/worker.js diff --git a/addons/api/mirage/helpers/bexpr-filter.js b/addons/api/app/mirage/helpers/bexpr-filter.js similarity index 100% rename from addons/api/mirage/helpers/bexpr-filter.js rename to addons/api/app/mirage/helpers/bexpr-filter.js diff --git a/addons/api/mirage/helpers/id.js b/addons/api/app/mirage/helpers/id.js similarity index 100% rename from addons/api/mirage/helpers/id.js rename to addons/api/app/mirage/helpers/id.js diff --git a/addons/api/mirage/helpers/permissions.js b/addons/api/app/mirage/helpers/permissions.js similarity index 100% rename from addons/api/mirage/helpers/permissions.js rename to addons/api/app/mirage/helpers/permissions.js diff --git a/addons/api/mirage/models/account.js b/addons/api/app/mirage/models/account.js similarity index 100% rename from addons/api/mirage/models/account.js rename to addons/api/app/mirage/models/account.js diff --git a/addons/api/mirage/models/alias.js b/addons/api/app/mirage/models/alias.js similarity index 100% rename from addons/api/mirage/models/alias.js rename to addons/api/app/mirage/models/alias.js diff --git a/addons/api/mirage/models/auth-method.js b/addons/api/app/mirage/models/auth-method.js similarity index 100% rename from addons/api/mirage/models/auth-method.js rename to addons/api/app/mirage/models/auth-method.js diff --git a/addons/api/mirage/models/base.js b/addons/api/app/mirage/models/base.js similarity index 100% rename from addons/api/mirage/models/base.js rename to addons/api/app/mirage/models/base.js diff --git a/addons/api/mirage/models/channel-recording.js b/addons/api/app/mirage/models/channel-recording.js similarity index 100% rename from addons/api/mirage/models/channel-recording.js rename to addons/api/app/mirage/models/channel-recording.js diff --git a/addons/api/mirage/models/connection-recording.js b/addons/api/app/mirage/models/connection-recording.js similarity index 100% rename from addons/api/mirage/models/connection-recording.js rename to addons/api/app/mirage/models/connection-recording.js diff --git a/addons/api/mirage/models/credential-library.js b/addons/api/app/mirage/models/credential-library.js similarity index 100% rename from addons/api/mirage/models/credential-library.js rename to addons/api/app/mirage/models/credential-library.js diff --git a/addons/api/mirage/models/credential-store.js b/addons/api/app/mirage/models/credential-store.js similarity index 100% rename from addons/api/mirage/models/credential-store.js rename to addons/api/app/mirage/models/credential-store.js diff --git a/addons/api/mirage/models/credential.js b/addons/api/app/mirage/models/credential.js similarity index 100% rename from addons/api/mirage/models/credential.js rename to addons/api/app/mirage/models/credential.js diff --git a/addons/api/mirage/models/group.js b/addons/api/app/mirage/models/group.js similarity index 100% rename from addons/api/mirage/models/group.js rename to addons/api/app/mirage/models/group.js diff --git a/addons/api/mirage/models/host-catalog.js b/addons/api/app/mirage/models/host-catalog.js similarity index 100% rename from addons/api/mirage/models/host-catalog.js rename to addons/api/app/mirage/models/host-catalog.js diff --git a/addons/api/mirage/models/host-set.js b/addons/api/app/mirage/models/host-set.js similarity index 100% rename from addons/api/mirage/models/host-set.js rename to addons/api/app/mirage/models/host-set.js diff --git a/addons/api/mirage/models/host.js b/addons/api/app/mirage/models/host.js similarity index 100% rename from addons/api/mirage/models/host.js rename to addons/api/app/mirage/models/host.js diff --git a/addons/api/mirage/models/managed-group.js b/addons/api/app/mirage/models/managed-group.js similarity index 100% rename from addons/api/mirage/models/managed-group.js rename to addons/api/app/mirage/models/managed-group.js diff --git a/addons/api/mirage/models/policy.js b/addons/api/app/mirage/models/policy.js similarity index 100% rename from addons/api/mirage/models/policy.js rename to addons/api/app/mirage/models/policy.js diff --git a/addons/api/mirage/models/role.js b/addons/api/app/mirage/models/role.js similarity index 100% rename from addons/api/mirage/models/role.js rename to addons/api/app/mirage/models/role.js diff --git a/addons/api/mirage/models/scope.js b/addons/api/app/mirage/models/scope.js similarity index 100% rename from addons/api/mirage/models/scope.js rename to addons/api/app/mirage/models/scope.js diff --git a/addons/api/mirage/models/session-recording.js b/addons/api/app/mirage/models/session-recording.js similarity index 100% rename from addons/api/mirage/models/session-recording.js rename to addons/api/app/mirage/models/session-recording.js diff --git a/addons/api/mirage/models/session.js b/addons/api/app/mirage/models/session.js similarity index 100% rename from addons/api/mirage/models/session.js rename to addons/api/app/mirage/models/session.js diff --git a/addons/api/mirage/models/storage-bucket.js b/addons/api/app/mirage/models/storage-bucket.js similarity index 100% rename from addons/api/mirage/models/storage-bucket.js rename to addons/api/app/mirage/models/storage-bucket.js diff --git a/addons/api/mirage/models/target.js b/addons/api/app/mirage/models/target.js similarity index 100% rename from addons/api/mirage/models/target.js rename to addons/api/app/mirage/models/target.js diff --git a/addons/api/mirage/models/user.js b/addons/api/app/mirage/models/user.js similarity index 100% rename from addons/api/mirage/models/user.js rename to addons/api/app/mirage/models/user.js diff --git a/addons/api/mirage/models/worker.js b/addons/api/app/mirage/models/worker.js similarity index 100% rename from addons/api/mirage/models/worker.js rename to addons/api/app/mirage/models/worker.js diff --git a/addons/api/mirage/route-handlers/auth.js b/addons/api/app/mirage/route-handlers/auth.js similarity index 100% rename from addons/api/mirage/route-handlers/auth.js rename to addons/api/app/mirage/route-handlers/auth.js diff --git a/addons/api/mirage/route-handlers/target.js b/addons/api/app/mirage/route-handlers/target.js similarity index 100% rename from addons/api/mirage/route-handlers/target.js rename to addons/api/app/mirage/route-handlers/target.js diff --git a/addons/api/mirage/scenarios/default.js b/addons/api/app/mirage/scenarios/default.js similarity index 100% rename from addons/api/mirage/scenarios/default.js rename to addons/api/app/mirage/scenarios/default.js diff --git a/addons/api/mirage/scenarios/ipc.js b/addons/api/app/mirage/scenarios/ipc.js similarity index 98% rename from addons/api/mirage/scenarios/ipc.js rename to addons/api/app/mirage/scenarios/ipc.js index 4c94b4daf..0cd614b4d 100644 --- a/addons/api/mirage/scenarios/ipc.js +++ b/addons/api/app/mirage/scenarios/ipc.js @@ -22,6 +22,14 @@ export default function initializeMockIPC(server, config) { clusterUrl = null; + checkOS() { + return { + isLinux: false, + isMac: true, + isWindows: false, + }; + } + getClusterUrl() { return this.clusterUrl; } @@ -273,7 +281,7 @@ export default function initializeMockIPC(server, config) { * We mock certain functions even in electron (e.g. hasMacOSChrome) when running * locally which will force a certain appearance regardless of platform */ - if (config['ember-cli-mirage'].enabled && !isTesting) { + if (config.mirage?.enabled && !isTesting) { const mockIPC = new MockIPC(); window.addEventListener('message', async function (event) { diff --git a/addons/api/mirage/serializers/account.js b/addons/api/app/mirage/serializers/account.js similarity index 100% rename from addons/api/mirage/serializers/account.js rename to addons/api/app/mirage/serializers/account.js diff --git a/addons/api/mirage/serializers/alias.js b/addons/api/app/mirage/serializers/alias.js similarity index 100% rename from addons/api/mirage/serializers/alias.js rename to addons/api/app/mirage/serializers/alias.js diff --git a/addons/api/mirage/serializers/application.js b/addons/api/app/mirage/serializers/application.js similarity index 100% rename from addons/api/mirage/serializers/application.js rename to addons/api/app/mirage/serializers/application.js diff --git a/addons/api/mirage/serializers/auth-method.js b/addons/api/app/mirage/serializers/auth-method.js similarity index 100% rename from addons/api/mirage/serializers/auth-method.js rename to addons/api/app/mirage/serializers/auth-method.js diff --git a/addons/api/mirage/serializers/channel-recording.js b/addons/api/app/mirage/serializers/channel-recording.js similarity index 100% rename from addons/api/mirage/serializers/channel-recording.js rename to addons/api/app/mirage/serializers/channel-recording.js diff --git a/addons/api/mirage/serializers/connection-recording.js b/addons/api/app/mirage/serializers/connection-recording.js similarity index 100% rename from addons/api/mirage/serializers/connection-recording.js rename to addons/api/app/mirage/serializers/connection-recording.js diff --git a/addons/api/mirage/serializers/credential-library.js b/addons/api/app/mirage/serializers/credential-library.js similarity index 100% rename from addons/api/mirage/serializers/credential-library.js rename to addons/api/app/mirage/serializers/credential-library.js diff --git a/addons/api/mirage/serializers/credential-store.js b/addons/api/app/mirage/serializers/credential-store.js similarity index 100% rename from addons/api/mirage/serializers/credential-store.js rename to addons/api/app/mirage/serializers/credential-store.js diff --git a/addons/api/mirage/serializers/credential.js b/addons/api/app/mirage/serializers/credential.js similarity index 100% rename from addons/api/mirage/serializers/credential.js rename to addons/api/app/mirage/serializers/credential.js diff --git a/addons/api/mirage/serializers/group.js b/addons/api/app/mirage/serializers/group.js similarity index 100% rename from addons/api/mirage/serializers/group.js rename to addons/api/app/mirage/serializers/group.js diff --git a/addons/api/mirage/serializers/host-catalog.js b/addons/api/app/mirage/serializers/host-catalog.js similarity index 100% rename from addons/api/mirage/serializers/host-catalog.js rename to addons/api/app/mirage/serializers/host-catalog.js diff --git a/addons/api/mirage/serializers/host-set.js b/addons/api/app/mirage/serializers/host-set.js similarity index 100% rename from addons/api/mirage/serializers/host-set.js rename to addons/api/app/mirage/serializers/host-set.js diff --git a/addons/api/mirage/serializers/host.js b/addons/api/app/mirage/serializers/host.js similarity index 100% rename from addons/api/mirage/serializers/host.js rename to addons/api/app/mirage/serializers/host.js diff --git a/addons/api/mirage/serializers/managed-group.js b/addons/api/app/mirage/serializers/managed-group.js similarity index 100% rename from addons/api/mirage/serializers/managed-group.js rename to addons/api/app/mirage/serializers/managed-group.js diff --git a/addons/api/mirage/serializers/policy.js b/addons/api/app/mirage/serializers/policy.js similarity index 100% rename from addons/api/mirage/serializers/policy.js rename to addons/api/app/mirage/serializers/policy.js diff --git a/addons/api/mirage/serializers/role.js b/addons/api/app/mirage/serializers/role.js similarity index 100% rename from addons/api/mirage/serializers/role.js rename to addons/api/app/mirage/serializers/role.js diff --git a/addons/api/mirage/serializers/scope.js b/addons/api/app/mirage/serializers/scope.js similarity index 100% rename from addons/api/mirage/serializers/scope.js rename to addons/api/app/mirage/serializers/scope.js diff --git a/addons/api/mirage/serializers/session-recording.js b/addons/api/app/mirage/serializers/session-recording.js similarity index 100% rename from addons/api/mirage/serializers/session-recording.js rename to addons/api/app/mirage/serializers/session-recording.js diff --git a/addons/api/mirage/serializers/session.js b/addons/api/app/mirage/serializers/session.js similarity index 100% rename from addons/api/mirage/serializers/session.js rename to addons/api/app/mirage/serializers/session.js diff --git a/addons/api/mirage/serializers/storage-bucket.js b/addons/api/app/mirage/serializers/storage-bucket.js similarity index 100% rename from addons/api/mirage/serializers/storage-bucket.js rename to addons/api/app/mirage/serializers/storage-bucket.js diff --git a/addons/api/mirage/serializers/target.js b/addons/api/app/mirage/serializers/target.js similarity index 100% rename from addons/api/mirage/serializers/target.js rename to addons/api/app/mirage/serializers/target.js diff --git a/addons/api/mirage/serializers/user.js b/addons/api/app/mirage/serializers/user.js similarity index 100% rename from addons/api/mirage/serializers/user.js rename to addons/api/app/mirage/serializers/user.js diff --git a/addons/api/mirage/serializers/worker.js b/addons/api/app/mirage/serializers/worker.js similarity index 100% rename from addons/api/mirage/serializers/worker.js rename to addons/api/app/mirage/serializers/worker.js diff --git a/addons/api/index.js b/addons/api/index.js index dd0515679..d846a5b6c 100644 --- a/addons/api/index.js +++ b/addons/api/index.js @@ -24,12 +24,24 @@ module.exports = { }, }, + treeForApp(appTree) { + if (!this._includeMirageInBuild()) { + return funnel(appTree, { + exclude: ['mirage/**/*'], + }); + } + + return appTree; + }, + treeForAddon() { // Exclude anything in the workers folder from being bundled in the final // build as we're manually bundling the files ourselves below. + const excludedModules = ['api/workers/**/*']; + const tree = this._super.treeForAddon.apply(this, arguments); return funnel(tree, { - exclude: ['api/workers/**/*'], + exclude: excludedModules, }); }, @@ -70,4 +82,10 @@ module.exports = { return merge(trees); }, + + _includeMirageInBuild() { + const env = this.parent.app?.env ?? 'production'; + const config = this.project.config(env); + return Boolean(config.mirage?.enabled); + }, }; diff --git a/addons/api/package.json b/addons/api/package.json index 76dcb6904..58b774a10 100644 --- a/addons/api/package.json +++ b/addons/api/package.json @@ -36,11 +36,10 @@ "ember-can": "^4.2.0", "ember-cli-babel": "^8.2.0", "ember-cli-htmlbars": "^6.3.0", - "ember-cli-mirage": "^3.0.3", "ember-data": "~5.3.12", "esbuild": "^0.25.4", - "miragejs": "^0.1.48", "promise-worker-bi": "^5.0.1", + "js-bexpr": "hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1", "tracked-built-ins": "^4.0.0", "uuid": "^11.0.3" }, @@ -51,7 +50,6 @@ "@ember/test-helpers": "^5.2.1", "@ember/test-waiters": "^4.1.0", "@embroider/test-setup": "^4.0.0", - "@faker-js/faker": "^8.0.2", "@glimmer/component": "^2.0.0", "@glimmer/tracking": "^1.1.2", "broccoli-asset-rev": "^3.0.0", @@ -64,6 +62,7 @@ "ember-cli-sri": "^2.1.1", "ember-cli-terser": "^4.0.2", "ember-exam": "^8.0.0", + "ember-get-config": "^2.1.1", "ember-load-initializers": "^2.1.2", "ember-page-title": "^8.2.3", "ember-qunit": "^8.1.0", @@ -77,16 +76,16 @@ "eslint-plugin-ember": "^12.2.1", "eslint-plugin-n": "^16.6.2", "eslint-plugin-qunit": "^8.1.2", - "js-bexpr": "hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1", "loader.js": "^4.7.0", "prettier": "^3.3.3", "qunit": "^2.22.0", "qunit-dom": "^3.2.1", - "sinon": "^19.0.2", "webpack": "^5.95.0" }, "peerDependencies": { + "@faker-js/faker": "^8.0.2", "ember-source": ">= 4.0.0", + "miragejs": "^0.1.48", "sinon": "^19.0.2" }, "engines": { diff --git a/addons/api/tests/dummy/config/environment.js b/addons/api/tests/dummy/config/environment.js index 5129eaa21..788d6099b 100644 --- a/addons/api/tests/dummy/config/environment.js +++ b/addons/api/tests/dummy/config/environment.js @@ -29,8 +29,8 @@ module.exports = function (environment) { namespace: 'v1', }, - 'ember-cli-mirage': { - directory: './mirage', + mirage: { + enabled: true }, }; diff --git a/addons/api/tests/helpers/index.js b/addons/api/tests/helpers/index.js index 641397bec..76fd04633 100644 --- a/addons/api/tests/helpers/index.js +++ b/addons/api/tests/helpers/index.js @@ -29,7 +29,6 @@ function setupApplicationTest(hooks, options) { // from other addons: // // setupIntl(hooks, 'en-us'); // ember-intl - // setupMirage(hooks); // ember-cli-mirage } function setupRenderingTest(hooks, options) { diff --git a/addons/api/tests/helpers/mirage.js b/addons/api/tests/helpers/mirage.js new file mode 100644 index 000000000..10f379434 --- /dev/null +++ b/addons/api/tests/helpers/mirage.js @@ -0,0 +1,8 @@ +/** + * Copyright IBM Corp. 2021, 2026 + * SPDX-License-Identifier: BUSL-1.1 + */ + +import startMirage from 'dummy/mirage/config'; +import { createSetupMirage } from 'api/test-support/helpers/create-mirage-helper'; +export const setupMirage = createSetupMirage(startMirage); diff --git a/addons/api/tests/unit/adapters/application-test.js b/addons/api/tests/unit/adapters/application-test.js index 1ab8d97bb..f313cbfd9 100644 --- a/addons/api/tests/unit/adapters/application-test.js +++ b/addons/api/tests/unit/adapters/application-test.js @@ -7,7 +7,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import RESTAdapter from '@ember-data/adapter/rest'; import { InvalidError } from '@ember-data/adapter/error'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { Response } from 'miragejs'; module('Unit | Adapter | application', function (hooks) { diff --git a/addons/api/tests/unit/handlers/sqlite-handler-test.js b/addons/api/tests/unit/handlers/sqlite-handler-test.js index 69fa747ef..8976b6c1b 100644 --- a/addons/api/tests/unit/handlers/sqlite-handler-test.js +++ b/addons/api/tests/unit/handlers/sqlite-handler-test.js @@ -7,7 +7,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import SqliteHandler from 'api/handlers/sqlite-handler'; import RequestManager from '@ember-data/request'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { faker } from '@faker-js/faker'; import sinon from 'sinon'; import { assert } from '@ember/debug'; diff --git a/addons/api/tests/unit/models/auth-method-test.js b/addons/api/tests/unit/models/auth-method-test.js index 5aaac0f48..56f71be38 100644 --- a/addons/api/tests/unit/models/auth-method-test.js +++ b/addons/api/tests/unit/models/auth-method-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { TYPE_AUTH_METHOD_PASSWORD, TYPE_AUTH_METHOD_OIDC, diff --git a/addons/api/tests/unit/models/base-test.js b/addons/api/tests/unit/models/base-test.js index a00213135..69e16ced7 100644 --- a/addons/api/tests/unit/models/base-test.js +++ b/addons/api/tests/unit/models/base-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | base', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/group-test.js b/addons/api/tests/unit/models/group-test.js index e4cc03847..19b7b3cab 100644 --- a/addons/api/tests/unit/models/group-test.js +++ b/addons/api/tests/unit/models/group-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | group', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/host-set-test.js b/addons/api/tests/unit/models/host-set-test.js index 8dc7b7d11..70de44fa3 100644 --- a/addons/api/tests/unit/models/host-set-test.js +++ b/addons/api/tests/unit/models/host-set-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | host set', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/role-test.js b/addons/api/tests/unit/models/role-test.js index ae6693c44..ccd2351c4 100644 --- a/addons/api/tests/unit/models/role-test.js +++ b/addons/api/tests/unit/models/role-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { GRANT_SCOPE_THIS, GRANT_SCOPE_CHILDREN, diff --git a/addons/api/tests/unit/models/scope-test.js b/addons/api/tests/unit/models/scope-test.js index 7ca890467..e78391e4c 100644 --- a/addons/api/tests/unit/models/scope-test.js +++ b/addons/api/tests/unit/models/scope-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | scope', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/session-recording-test.js b/addons/api/tests/unit/models/session-recording-test.js index aba1d31e5..bceb07e90 100644 --- a/addons/api/tests/unit/models/session-recording-test.js +++ b/addons/api/tests/unit/models/session-recording-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { TYPE_SESSION_RECORDING_SSH } from 'api/models/session-recording'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { STATE_SESSION_RECORDING_AVAILABLE, STATE_SESSION_RECORDING_STARTED, diff --git a/addons/api/tests/unit/models/target-test.js b/addons/api/tests/unit/models/target-test.js index 7874f1fad..efe072caf 100644 --- a/addons/api/tests/unit/models/target-test.js +++ b/addons/api/tests/unit/models/target-test.js @@ -5,12 +5,12 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; import { TYPE_TARGET_TCP, TYPE_TARGET_SSH, TYPE_TARGET_RDP, } from 'api/models/target'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | target', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/user-test.js b/addons/api/tests/unit/models/user-test.js index 71de4f5ac..650c6aeaa 100644 --- a/addons/api/tests/unit/models/user-test.js +++ b/addons/api/tests/unit/models/user-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; module('Unit | Model | user', function (hooks) { setupTest(hooks); diff --git a/addons/api/tests/unit/models/worker-test.js b/addons/api/tests/unit/models/worker-test.js index 7ce4c6f2b..12b78c6ec 100644 --- a/addons/api/tests/unit/models/worker-test.js +++ b/addons/api/tests/unit/models/worker-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { TYPE_WORKER_PKI } from 'api/models/worker'; module('Unit | Model | worker', function (hooks) { diff --git a/addons/api/tests/unit/serializers/auth-method-test.js b/addons/api/tests/unit/serializers/auth-method-test.js index 5cc18cba3..75297023e 100644 --- a/addons/api/tests/unit/serializers/auth-method-test.js +++ b/addons/api/tests/unit/serializers/auth-method-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { TYPE_AUTH_METHOD_PASSWORD, diff --git a/addons/auth/tests/helpers/index.js b/addons/auth/tests/helpers/index.js index 641397bec..76fd04633 100644 --- a/addons/auth/tests/helpers/index.js +++ b/addons/auth/tests/helpers/index.js @@ -29,7 +29,6 @@ function setupApplicationTest(hooks, options) { // from other addons: // // setupIntl(hooks, 'en-us'); // ember-intl - // setupMirage(hooks); // ember-cli-mirage } function setupRenderingTest(hooks, options) { diff --git a/addons/core/package.json b/addons/core/package.json index 555495fa0..66479d42e 100644 --- a/addons/core/package.json +++ b/addons/core/package.json @@ -84,6 +84,7 @@ "eslint-plugin-qunit": "^8.1.2", "js-bexpr": "hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1", "loader.js": "^4.7.0", + "miragejs": "^0.1.48", "prettier": "^3.3.3", "qunit": "^2.22.0", "qunit-dom": "^3.2.1", diff --git a/addons/core/tests/dummy/config/environment.js b/addons/core/tests/dummy/config/environment.js index 85cddf8e0..b7bcc4a3c 100644 --- a/addons/core/tests/dummy/config/environment.js +++ b/addons/core/tests/dummy/config/environment.js @@ -41,8 +41,8 @@ module.exports = function (environment) { namespace: 'v1', }, - 'ember-cli-mirage': { - directory: '../api/mirage', + mirage: { + enabled: true, }, enableConfirmService: false, diff --git a/addons/core/tests/helpers/index.js b/addons/core/tests/helpers/index.js index 641397bec..76fd04633 100644 --- a/addons/core/tests/helpers/index.js +++ b/addons/core/tests/helpers/index.js @@ -29,7 +29,6 @@ function setupApplicationTest(hooks, options) { // from other addons: // // setupIntl(hooks, 'en-us'); // ember-intl - // setupMirage(hooks); // ember-cli-mirage } function setupRenderingTest(hooks, options) { diff --git a/addons/core/tests/helpers/mirage.js b/addons/core/tests/helpers/mirage.js new file mode 100644 index 000000000..10f379434 --- /dev/null +++ b/addons/core/tests/helpers/mirage.js @@ -0,0 +1,8 @@ +/** + * Copyright IBM Corp. 2021, 2026 + * SPDX-License-Identifier: BUSL-1.1 + */ + +import startMirage from 'dummy/mirage/config'; +import { createSetupMirage } from 'api/test-support/helpers/create-mirage-helper'; +export const setupMirage = createSetupMirage(startMirage); diff --git a/addons/core/tests/unit/authenticators/password-test.js b/addons/core/tests/unit/authenticators/password-test.js index 34a6fdad1..92c2dc84d 100644 --- a/addons/core/tests/unit/authenticators/password-test.js +++ b/addons/core/tests/unit/authenticators/password-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'dummy/tests/helpers/mirage'; import { Response } from 'miragejs'; module('Unit | Authenticator | password', function (hooks) { diff --git a/addons/rose/tests/helpers/index.js b/addons/rose/tests/helpers/index.js index 641397bec..76fd04633 100644 --- a/addons/rose/tests/helpers/index.js +++ b/addons/rose/tests/helpers/index.js @@ -29,7 +29,6 @@ function setupApplicationTest(hooks, options) { // from other addons: // // setupIntl(hooks, 'en-us'); // ember-intl - // setupMirage(hooks); // ember-cli-mirage } function setupRenderingTest(hooks, options) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 05507171d..7e5853f70 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -57,6 +57,9 @@ importers: '@ember/string': specifier: ^4.0.0 version: 4.0.1 + '@faker-js/faker': + specifier: ^8.0.2 + version: 8.4.1 '@sqlite.org/sqlite-wasm': specifier: ^3.49.1-build4 version: 3.49.1-build4 @@ -84,21 +87,24 @@ importers: ember-cli-htmlbars: specifier: ^6.3.0 version: 6.3.0 - ember-cli-mirage: - specifier: ^3.0.3 - version: 3.0.4(4aae64382352ae0e9635b2848df9b5e9) ember-data: specifier: ~5.3.12 version: 5.3.13(@ember/string@4.0.1)(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))(qunit@2.24.1) esbuild: specifier: ^0.25.4 version: 0.25.9 + js-bexpr: + specifier: hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1 + version: https://codeload.github.com/hashicorp/js-bexpr/tar.gz/9b4a4b54d85eba67fdfc0990133d1518d890b1e1 miragejs: specifier: ^0.1.48 version: 0.1.48 promise-worker-bi: specifier: ^5.0.1 version: 5.0.1 + sinon: + specifier: ^19.0.2 + version: 19.0.5 tracked-built-ins: specifier: ^4.0.0 version: 4.0.0(@babel/core@7.27.1) @@ -124,9 +130,6 @@ importers: '@embroider/test-setup': specifier: ^4.0.0 version: 4.0.0 - '@faker-js/faker': - specifier: ^8.0.2 - version: 8.4.1 '@glimmer/component': specifier: ^2.0.0 version: 2.0.0 @@ -163,6 +166,9 @@ importers: ember-exam: specifier: ^8.0.0 version: 8.0.0(@glint/template@1.5.2)(ember-qunit@8.1.1(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@glint/template@1.5.2)(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))(qunit@2.24.1))(qunit@2.24.1)(webpack@5.99.8(esbuild@0.25.9)) + ember-get-config: + specifier: ^2.1.1 + version: 2.1.1(@glint/template@1.5.2) ember-load-initializers: specifier: ^2.1.2 version: 2.1.2(@babel/core@7.27.1) @@ -202,9 +208,6 @@ importers: eslint-plugin-qunit: specifier: ^8.1.2 version: 8.1.2(eslint@8.57.1) - js-bexpr: - specifier: hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1 - version: https://codeload.github.com/hashicorp/js-bexpr/tar.gz/9b4a4b54d85eba67fdfc0990133d1518d890b1e1 loader.js: specifier: ^4.7.0 version: 4.7.0 @@ -217,9 +220,6 @@ importers: qunit-dom: specifier: ^3.2.1 version: 3.4.0 - sinon: - specifier: ^19.0.2 - version: 19.0.5 webpack: specifier: ^5.95.0 version: 5.99.8(esbuild@0.25.9) @@ -519,6 +519,9 @@ importers: loader.js: specifier: ^4.7.0 version: 4.7.0 + miragejs: + specifier: ^0.1.48 + version: 0.1.48 prettier: specifier: ^3.3.3 version: 3.6.2 @@ -804,8 +807,8 @@ importers: specifier: ^5.2.1 version: 5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2) '@embroider/macros': - specifier: ^1.18.0 - version: 1.18.0(@glint/template@1.5.2) + specifier: ^1.18.1 + version: 1.19.3(@glint/template@1.5.2) '@faker-js/faker': specifier: ^8.0.2 version: 8.4.1 @@ -862,7 +865,7 @@ importers: version: 3.3.3(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7)) ember-cli-flash: specifier: ^6.0.0 - version: 6.0.0(@ember/string@4.0.1)(@embroider/macros@1.18.0(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)) + version: 6.0.0(@ember/string@4.0.1)(@embroider/macros@1.19.3(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)) ember-cli-htmlbars: specifier: ^6.3.0 version: 6.3.0 @@ -932,6 +935,9 @@ importers: loader.js: specifier: ^4.7.0 version: 4.7.0 + miragejs: + specifier: ^0.1.48 + version: 0.1.48 postcss: specifier: ^8.4.31 version: 8.5.3 @@ -1012,8 +1018,8 @@ importers: specifier: ^5.2.1 version: 5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2) '@embroider/macros': - specifier: ^1.18.0 - version: 1.18.0(@glint/template@1.5.2) + specifier: ^1.18.1 + version: 1.19.3(@glint/template@1.5.2) '@faker-js/faker': specifier: ^8.0.2 version: 8.4.1 @@ -1064,7 +1070,7 @@ importers: version: 3.3.3(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7)) ember-cli-flash: specifier: ^6.0.0 - version: 6.0.0(@ember/string@4.0.1)(@embroider/macros@1.18.0(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)) + version: 6.0.0(@ember/string@4.0.1)(@embroider/macros@1.19.3(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)) ember-cli-htmlbars: specifier: ^6.3.0 version: 6.3.0 @@ -1140,6 +1146,9 @@ importers: loader.js: specifier: ^4.7.0 version: 4.7.0 + miragejs: + specifier: ^0.1.48 + version: 0.1.48 postcss: specifier: ^8.4.31 version: 8.5.3 @@ -4696,26 +4705,6 @@ packages: resolution: {integrity: sha512-QkLGcYv1WRK35g4MWu/uIeJ5Suk2eJXKtZ+8s+qE7C9INmpCPyPxzaqZABquYzcWNzIdw6kYwz3NWAFdKYFxwg==} engines: {node: ^4.5 || 6.* || >= 7.*} - ember-cli-mirage@3.0.4: - resolution: {integrity: sha512-JpfZJIrvUAcwOVQ44aAzlYSbGiO4/nqnVAbzAKU4kztqgYvYGBa27FX5WxfpIGZMBdnt6OKh78rsimChWo6f/Q==} - engines: {node: 16.* || >= 18} - peerDependencies: - '@ember-data/model': '*' - '@ember/test-helpers': '*' - ember-data: '*' - ember-qunit: '*' - ember-source: '>= 3.28.0' - miragejs: ^0.1.43 - peerDependenciesMeta: - '@ember-data/model': - optional: true - '@ember/test-helpers': - optional: true - ember-data: - optional: true - ember-qunit: - optional: true - ember-cli-normalize-entity-name@1.0.0: resolution: {integrity: sha512-rF4P1rW2P1gVX1ynZYPmuIf7TnAFDiJmIUFI1Xz16VYykUAyiOCme0Y22LeZq8rTzwBMiwBwoE3RO4GYWehXZA==} @@ -10107,7 +10096,7 @@ snapshots: find-up: 5.0.0 fs-extra: 10.1.0 log-symbols: 4.1.0 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - bluebird - supports-color @@ -10276,7 +10265,7 @@ snapshots: '@electron/notarize@2.5.0': dependencies: - debug: 4.4.1 + debug: 4.4.3 fs-extra: 9.1.0 promise-retry: 2.0.1 transitivePeerDependencies: @@ -10285,7 +10274,7 @@ snapshots: '@electron/osx-sign@1.3.3': dependencies: compare-version: 0.1.2 - debug: 4.4.1 + debug: 4.4.3 fs-extra: 10.1.0 isbinaryfile: 4.0.10 minimist: 1.2.8 @@ -10312,7 +10301,7 @@ snapshots: plist: 3.1.0 resedit: 2.0.3 resolve: 1.22.10 - semver: 7.7.2 + semver: 7.7.3 yargs-parser: 21.1.1 transitivePeerDependencies: - supports-color @@ -10330,7 +10319,7 @@ snapshots: node-api-version: 0.2.1 ora: 5.4.1 read-binary-file-arch: 1.0.6 - semver: 7.7.2 + semver: 7.7.3 tar: 6.2.1 yargs: 17.7.2 transitivePeerDependencies: @@ -10341,7 +10330,7 @@ snapshots: dependencies: '@electron/asar': 3.4.1 '@malept/cross-spawn-promise': 2.0.0 - debug: 4.4.1 + debug: 4.4.3 dir-compare: 4.2.0 fs-extra: 11.3.2 minimatch: 9.0.5 @@ -10352,7 +10341,7 @@ snapshots: '@electron/windows-sign@1.2.2': dependencies: cross-dirname: 0.1.0 - debug: 4.4.1 + debug: 4.4.3 fs-extra: 11.3.2 minimist: 1.2.8 postject: 1.0.0-alpha.6 @@ -10365,7 +10354,7 @@ snapshots: '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-cli-path-utils: 1.0.0 @@ -10382,7 +10371,7 @@ snapshots: '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10393,7 +10382,7 @@ snapshots: '@ember-data/graph@5.3.13(62aa5be71c8e28cbbe1a1ab9964e415b)': dependencies: '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10406,7 +10395,7 @@ snapshots: '@ember-data/graph': 5.3.13(62aa5be71c8e28cbbe1a1ab9964e415b) '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) fuse.js: 7.1.0 @@ -10421,7 +10410,7 @@ snapshots: '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/test-waiters': 4.1.0(@glint/template@1.5.2) - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10439,7 +10428,7 @@ snapshots: '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/tracking': 5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-cli-string-utils: 1.1.0 @@ -10455,7 +10444,7 @@ snapshots: '@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))': dependencies: - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10469,7 +10458,7 @@ snapshots: '@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))': dependencies: '@ember/test-waiters': 4.1.0(@glint/template@1.5.2) - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) transitivePeerDependencies: @@ -10484,7 +10473,7 @@ snapshots: '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-cli-path-utils: 1.0.0 @@ -10500,7 +10489,7 @@ snapshots: '@ember-data/request': 5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)) '@ember-data/request-utils': 5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/tracking': 5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10510,7 +10499,7 @@ snapshots: '@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))': dependencies: - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10533,7 +10522,7 @@ snapshots: '@ember/render-modifiers@2.1.0(@babel/core@7.27.1)(@glint/template@1.5.2)(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))': dependencies: - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) ember-cli-babel: 7.26.11 ember-modifier-manager-polyfill: 1.2.0(@babel/core@7.27.1) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -10617,7 +10606,7 @@ snapshots: find-up: 5.0.0 lodash: 4.17.23 resolve: 1.22.10 - semver: 7.7.2 + semver: 7.7.3 optionalDependencies: '@glint/template': 1.5.2 transitivePeerDependencies: @@ -10661,7 +10650,7 @@ snapshots: '@embroider/shared-internals@3.0.1': dependencies: babel-import-util: 3.0.1 - debug: 4.4.1 + debug: 4.4.3 ember-rfc176-data: 0.3.18 fs-extra: 9.1.0 is-subdir: 1.2.0 @@ -10671,7 +10660,7 @@ snapshots: pkg-entry-points: 1.1.1 resolve-package-path: 4.0.3 resolve.exports: 2.0.3 - semver: 7.7.2 + semver: 7.7.3 typescript-memoize: 1.1.1 transitivePeerDependencies: - supports-color @@ -11754,7 +11743,7 @@ snapshots: '@warp-drive/build-config@0.0.2(@glint/template@1.5.2)': dependencies: '@embroider/addon-shim': 1.10.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) babel-import-util: 2.1.1 broccoli-funnel: 3.0.8 semver: 7.7.2 @@ -11765,7 +11754,7 @@ snapshots: '@warp-drive/build-config@0.0.3(@glint/template@1.5.2)': dependencies: '@embroider/addon-shim': 1.10.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) babel-import-util: 2.1.1 semver: 7.7.2 transitivePeerDependencies: @@ -11774,7 +11763,7 @@ snapshots: '@warp-drive/core-types@0.0.3(@glint/template@1.5.2)': dependencies: - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) transitivePeerDependencies: - '@glint/template' @@ -13706,11 +13695,11 @@ snapshots: resolve: 1.22.10 semver: 5.7.2 - ember-cli-flash@6.0.0(@ember/string@4.0.1)(@embroider/macros@1.18.0(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)): + ember-cli-flash@6.0.0(@ember/string@4.0.1)(@embroider/macros@1.19.3(@glint/template@1.5.2))(ember-modifier@4.2.2(@babel/core@7.27.1)): dependencies: '@ember/string': 4.0.1 '@embroider/addon-shim': 1.10.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) ember-modifier: 4.2.2(@babel/core@7.27.1) transitivePeerDependencies: - supports-color @@ -13785,29 +13774,6 @@ snapshots: ember-cli-lodash-subset@2.0.1: {} - ember-cli-mirage@3.0.4(4aae64382352ae0e9635b2848df9b5e9): - dependencies: - '@babel/core': 7.27.1 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) - broccoli-file-creator: 2.1.1 - broccoli-funnel: 3.0.8 - broccoli-merge-trees: 4.2.0 - ember-auto-import: 2.10.0(@glint/template@1.5.2)(webpack@5.99.8(esbuild@0.25.9)) - ember-cli-babel: 8.2.0(@babel/core@7.27.1) - ember-get-config: 2.1.1(@glint/template@1.5.2) - ember-inflector: 4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) - ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) - miragejs: 0.1.48 - optionalDependencies: - '@ember-data/model': 5.3.13(7234f3c6c8908f8ca3320dc27c62478e) - '@ember/test-helpers': 5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2) - ember-data: 5.3.13(@ember/string@4.0.1)(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))(qunit@2.24.1) - ember-qunit: 8.1.1(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@glint/template@1.5.2)(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)))(qunit@2.24.1) - transitivePeerDependencies: - - '@glint/template' - - supports-color - - webpack - ember-cli-normalize-entity-name@1.0.0: dependencies: silent-error: 1.1.1 @@ -14144,7 +14110,7 @@ snapshots: '@ember-data/store': 5.3.13(@ember-data/request-utils@5.3.13(@ember/string@4.0.1)(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-inflector@4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@ember-data/request@5.3.13(@ember/test-waiters@4.1.0(@glint/template@1.5.2))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2)))(@ember-data/tracking@5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))))(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember-data/tracking': 5.3.13(@glint/template@1.5.2)(@warp-drive/core-types@0.0.3(@glint/template@1.5.2))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9))) '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.18.0(@glint/template@1.5.2) + '@embroider/macros': 1.19.3(@glint/template@1.5.2) '@warp-drive/build-config': 0.0.3(@glint/template@1.5.2) '@warp-drive/core-types': 0.0.3(@glint/template@1.5.2) ember-source: 5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8(esbuild@0.25.9)) @@ -14883,7 +14849,7 @@ snapshots: eslint-compat-utils@0.5.1(eslint@8.57.1): dependencies: eslint: 8.57.1 - semver: 7.7.2 + semver: 7.7.3 eslint-config-prettier@9.1.0(eslint@8.57.1): dependencies: @@ -15148,7 +15114,7 @@ snapshots: extract-zip@2.0.1: dependencies: - debug: 4.4.1 + debug: 4.4.3 get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: @@ -15379,7 +15345,7 @@ snapshots: flora-colossus@2.0.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 fs-extra: 10.1.0 transitivePeerDependencies: - supports-color @@ -15537,7 +15503,7 @@ snapshots: galactus@1.0.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 flora-colossus: 2.0.0 fs-extra: 10.1.0 transitivePeerDependencies: @@ -15681,7 +15647,7 @@ snapshots: es6-error: 4.1.1 matcher: 3.0.0 roarr: 2.15.4 - semver: 7.7.2 + semver: 7.7.3 serialize-error: 7.0.1 optional: true @@ -16689,7 +16655,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 make-fetch-happen@10.2.1: dependencies: @@ -17127,14 +17093,14 @@ snapshots: node-abi@3.77.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 node-addon-api@7.1.1: optional: true node-api-version@0.2.1: dependencies: - semver: 7.7.2 + semver: 7.7.3 node-dir@0.1.17: dependencies: @@ -17152,7 +17118,7 @@ snapshots: dependencies: growly: 1.3.0 is-wsl: 2.2.0 - semver: 7.7.2 + semver: 7.7.3 shellwords: 0.1.1 uuid: 8.3.2 which: 2.0.2 @@ -17190,7 +17156,7 @@ snapshots: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.16.1 - semver: 7.7.2 + semver: 7.7.3 validate-npm-package-license: 3.0.4 normalize-path@2.1.1: @@ -17427,7 +17393,7 @@ snapshots: ky: 1.8.1 registry-auth-token: 5.1.0 registry-url: 6.0.1 - semver: 7.7.2 + semver: 7.7.3 parent-module@1.0.1: dependencies: @@ -19260,7 +19226,7 @@ snapshots: validate-peer-dependencies@1.2.0: dependencies: resolve-package-path: 3.1.0 - semver: 7.7.2 + semver: 7.7.3 validate-peer-dependencies@2.2.0: dependencies: diff --git a/ui/admin/app/app.js b/ui/admin/app/app.js index 55e0c732d..c2ffabc19 100644 --- a/ui/admin/app/app.js +++ b/ui/admin/app/app.js @@ -8,6 +8,12 @@ import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; import config from 'admin/config/environment'; import 'ember-power-select/styles'; +import { + macroCondition, + importSync, + getOwnConfig, + isTesting, +} from '@embroider/macros'; export default class App extends Application { modulePrefix = config.modulePrefix; @@ -16,3 +22,8 @@ export default class App extends Application { } loadInitializers(App, config.modulePrefix); + +if (macroCondition(getOwnConfig().startMirageWithApp && !isTesting())) { + const startServer = importSync('admin/mirage/config').default; + startServer({}); +} diff --git a/ui/admin/config/environment.js b/ui/admin/config/environment.js index cb8e25ae1..f72c61ca8 100644 --- a/ui/admin/config/environment.js +++ b/ui/admin/config/environment.js @@ -139,10 +139,6 @@ module.exports = function (environment) { }, }, - 'ember-cli-mirage': { - directory: '../../addons/api/mirage', - }, - flashMessageDefaults: { timeout: 4000, }, @@ -157,9 +153,11 @@ module.exports = function (environment) { // ENV.APP.LOG_TRANSITIONS_INTERNAL = true; // ENV.APP.LOG_VIEW_LOOKUPS = true; - ENV['ember-cli-mirage'].enabled = process.env.ENABLE_MIRAGE - ? JSON.parse(process.env.ENABLE_MIRAGE) - : true; + ENV.mirage = { + enabled: process.env.ENABLE_MIRAGE + ? JSON.parse(process.env.ENABLE_MIRAGE) + : true, + }; // Default edition in development ENV.features.defaultEdition = 'enterprise'; @@ -197,6 +195,12 @@ module.exports = function (environment) { ENV.ENABLE_A11Y_AUDIT = ENABLE_A11Y_AUDIT; ENV.COLOR_THEME = COLOR_THEME; + + ENV.mirage = { + enabled: process.env.ENABLE_MIRAGE + ? JSON.parse(process.env.ENABLE_MIRAGE) + : true, + }; } if (environment === 'production') { diff --git a/ui/admin/ember-cli-build.js b/ui/admin/ember-cli-build.js index 657cfe6c8..023b13db5 100644 --- a/ui/admin/ember-cli-build.js +++ b/ui/admin/ember-cli-build.js @@ -9,6 +9,8 @@ const EmberApp = require('ember-cli/lib/broccoli/ember-app'); module.exports = async function (defaults) { const { setConfig } = await import('@warp-drive/build-config'); + const { EMBER_ENV } = process.env; + const config = require('./config/environment')(EMBER_ENV); const app = new EmberApp(defaults, { hinting: false, @@ -31,6 +33,11 @@ module.exports = async function (defaults) { api: { enableSqlite: true, }, + '@embroider/macros': { + setOwnConfig: { + startMirageWithApp: config.mirage?.enabled ?? false, + }, + }, }); // TODO: The deprecations object can be removed in ember-data 6.0. diff --git a/ui/admin/package.json b/ui/admin/package.json index 53aa33520..041374660 100644 --- a/ui/admin/package.json +++ b/ui/admin/package.json @@ -52,7 +52,7 @@ "@ember/render-modifiers": "^2.0.4", "@ember/string": "^4.0.0", "@ember/test-helpers": "^5.2.1", - "@embroider/macros": "^1.18.0", + "@embroider/macros": "^1.18.1", "@faker-js/faker": "^8.0.2", "@glimmer/component": "^2.0.0", "@glimmer/tracking": "^1.1.2", @@ -95,6 +95,7 @@ "eslint-plugin-qunit": "^8.1.2", "js-bexpr": "hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1", "loader.js": "^4.7.0", + "miragejs": "^0.1.48", "postcss": "^8.4.31", "prettier": "^3.3.3", "qunit": "^2.22.0", diff --git a/ui/admin/tests/helpers/index.js b/ui/admin/tests/helpers/index.js index 493edbdb5..245204aec 100644 --- a/ui/admin/tests/helpers/index.js +++ b/ui/admin/tests/helpers/index.js @@ -9,7 +9,7 @@ import { setupTest as upstreamSetupTest, } from 'ember-qunit'; import { authenticateSession } from 'ember-simple-auth/test-support'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from './mirage'; // This file exists to provide wrappers around ember-qunit's // test setup functions. This way, you can easily extend the setup that is diff --git a/ui/admin/tests/helpers/mirage.js b/ui/admin/tests/helpers/mirage.js new file mode 100644 index 000000000..6ba2a8706 --- /dev/null +++ b/ui/admin/tests/helpers/mirage.js @@ -0,0 +1,8 @@ +/** + * Copyright IBM Corp. 2021, 2026 + * SPDX-License-Identifier: BUSL-1.1 + */ + +import startMirage from 'admin/mirage/config'; +import { createSetupMirage } from 'api/test-support/helpers/create-mirage-helper'; +export const setupMirage = createSetupMirage(startMirage); diff --git a/ui/admin/tests/integration/components/scope-picker/index-test.js b/ui/admin/tests/integration/components/scope-picker/index-test.js index d0d6164b5..50648cf4e 100644 --- a/ui/admin/tests/integration/components/scope-picker/index-test.js +++ b/ui/admin/tests/integration/components/scope-picker/index-test.js @@ -8,7 +8,7 @@ import { setupRenderingTest } from 'admin/tests/helpers'; import { render } from '@ember/test-helpers'; import { hbs } from 'ember-cli-htmlbars'; import { click } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; diff --git a/ui/admin/tests/unit/controllers/account/change-password-test.js b/ui/admin/tests/unit/controllers/account/change-password-test.js index 4913d947b..8e91d0742 100644 --- a/ui/admin/tests/unit/controllers/account/change-password-test.js +++ b/ui/admin/tests/unit/controllers/account/change-password-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/onboarding/index-test.js b/ui/admin/tests/unit/controllers/onboarding/index-test.js index 35606df42..73959f4c5 100644 --- a/ui/admin/tests/unit/controllers/onboarding/index-test.js +++ b/ui/admin/tests/unit/controllers/onboarding/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { TYPE_TARGET_TCP } from 'api/models/target'; diff --git a/ui/admin/tests/unit/controllers/onboarding/success-test.js b/ui/admin/tests/unit/controllers/onboarding/success-test.js index 5c05adbba..8110dbdef 100644 --- a/ui/admin/tests/unit/controllers/onboarding/success-test.js +++ b/ui/admin/tests/unit/controllers/onboarding/success-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/create-test.js b/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/create-test.js index d2f2ca854..03c4ab0e1 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/create-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/create-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module( diff --git a/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/index-test.js index 6747d76f5..704779ec1 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/add-storage-policy/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module( diff --git a/ui/admin/tests/unit/controllers/scopes/scope/aliases/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/aliases/index-test.js index cdc0862bd..06ad79587 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/aliases/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/aliases/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/account/set-password-test.js b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/account/set-password-test.js index 2bf496d5b..e48a6ac6a 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/account/set-password-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/account/set-password-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { TYPE_AUTH_METHOD_PASSWORD } from 'api/models/auth-method'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/index-test.js index 39354932a..314527ad3 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/accounts/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/managed-groups/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/managed-groups/index-test.js index fcc1216f4..43bb44db1 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/managed-groups/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/auth-method/managed-groups/index-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { visit } from '@ember/test-helpers'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/index-test.js index 85a0e8988..e615d5236 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/auth-methods/index-test.js @@ -7,7 +7,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { waitUntil } from '@ember/test-helpers'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js index e4956ecb9..1ebf1fcfd 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, currentURL, settled } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; module( 'Unit | Controller | scopes/scope/authenticate/method/index', diff --git a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credential-libraries/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credential-libraries/index-test.js index 02d5621c4..6057ebe0f 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credential-libraries/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credential-libraries/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credentials/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credentials/index-test.js index 26efcb1e2..51ba434b9 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credentials/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/credential-store/credentials/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/index-test.js index e8e0a5876..82fb30137 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/credential-stores/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { setupIntl } from 'ember-intl/test-support'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { waitUntil, visit } from '@ember/test-helpers'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/groups/group/add-members-test.js b/ui/admin/tests/unit/controllers/scopes/scope/groups/group/add-members-test.js index 2b6faf576..3a84ced7a 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/groups/group/add-members-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/groups/group/add-members-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/groups/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/groups/index-test.js index 89ee473b9..507880b5d 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/groups/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/groups/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/add-hosts-test.js b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/add-hosts-test.js index 62f0eb8e3..258408d57 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/add-hosts-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/add-hosts-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/create-and-add-host-test.js b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/create-and-add-host-test.js index 5de04f104..7b726f83e 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/create-and-add-host-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/host-set/create-and-add-host-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/index-test.js index 5ea540f5f..79718f4b3 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/host-sets/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/hosts/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/hosts/index-test.js index 6d65672ba..34a0d1e7d 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/hosts/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/host-catalog/hosts/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { TYPE_HOST_CATALOG_STATIC } from 'api/models/host-catalog'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/index-test.js index 5aae06ac3..e53224af6 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/host-catalogs/index-test.js @@ -7,7 +7,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { setupIntl } from 'ember-intl/test-support'; import { waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/index-test.js index 22f134eb0..75795c12e 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/policies/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/policies/index-test.js index bd3848a42..a07fdc049 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/policies/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/policies/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/index-test.js index ebe5dabdb..31a692811 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/add-principals-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/add-principals-test.js index 734e8dc1a..97c27243d 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/add-principals-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/add-principals-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/grants-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/grants-test.js index b9265d2e6..0d39af43e 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/grants-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/grants-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module('Unit | Controller | scopes/scope/roles/role/grants', function (hooks) { diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/index-test.js index 13a450d8d..1f9900bd1 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, currentURL, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { GRANT_SCOPE_THIS } from 'api/models/role'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-custom-scopes-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-custom-scopes-test.js index eea051013..2341268ce 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-custom-scopes-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-custom-scopes-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, currentURL, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-org-projects-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-org-projects-test.js index 57dc4c463..9fb6e4561 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-org-projects-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/manage-scopes/manage-org-projects-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, visit, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/scopes-test.js b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/scopes-test.js index dbb17641a..56d648a5e 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/roles/role/scopes-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/roles/role/scopes-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/index-test.js index e95ce45a1..a069c2ee8 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import sinon from 'sinon'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/session-recording/channels-by-connection/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/session-recording/channels-by-connection/index-test.js index fd42951de..f6f920520 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/session-recording/channels-by-connection/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/session-recordings/session-recording/channels-by-connection/index-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { diff --git a/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets/index-test.js index cc8815750..607ef7940 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/index-test.js index 9cfefd62b..f0dbe08ed 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit, waitUntil } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-brokered-credential-sources-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-brokered-credential-sources-test.js index fc7245ffd..298553ae4 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-brokered-credential-sources-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-brokered-credential-sources-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-host-sources-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-host-sources-test.js index 17f8aca75..ee863e367 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-host-sources-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-host-sources-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-injected-application-credential-sources-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-injected-application-credential-sources-test.js index 97560dcfd..add042a9f 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-injected-application-credential-sources-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/add-injected-application-credential-sources-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/create-storage-bucket-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/create-storage-bucket-test.js index b1a01ed83..aae9df52e 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/create-storage-bucket-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/create-storage-bucket-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/index-test.js index e8225ab05..70230569f 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/targets/target/enable-session-recording/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/users/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/users/index-test.js index 7256de679..4689b0085 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/users/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/users/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { waitUntil, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupSqlite } from 'api/test-support/helpers/sqlite'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/users/user/add-accounts-test.js b/ui/admin/tests/unit/controllers/scopes/scope/users/user/add-accounts-test.js index d6445c11a..3dab518ca 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/users/user/add-accounts-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/users/user/add-accounts-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module( diff --git a/ui/admin/tests/unit/controllers/scopes/scope/workers/index-test.js b/ui/admin/tests/unit/controllers/scopes/scope/workers/index-test.js index b41d17de8..0a7a97d49 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/workers/index-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/workers/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/admin/tests/unit/controllers/scopes/scope/workers/new-test.js b/ui/admin/tests/unit/controllers/scopes/scope/workers/new-test.js index 0cc18dfb7..97989e3a3 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/workers/new-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/workers/new-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module('Unit | Controller | scopes/scope/workers/new', function (hooks) { diff --git a/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/create-tags-test.js b/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/create-tags-test.js index ea30f9787..a89eb043d 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/create-tags-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/create-tags-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { currentURL, visit } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { authenticateSession } from 'ember-simple-auth/test-support'; module( diff --git a/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/tags-test.js b/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/tags-test.js index f47ae6198..e9d3a094a 100644 --- a/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/tags-test.js +++ b/ui/admin/tests/unit/controllers/scopes/scope/workers/worker/tags-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { visit } from '@ember/test-helpers'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'admin/tests/helpers/mirage'; import { setupIntl } from 'ember-intl/test-support'; import { authenticateSession } from 'ember-simple-auth/test-support'; import { HCP_MANAGED_KEY } from 'api/models/worker'; diff --git a/ui/desktop/app/app.js b/ui/desktop/app/app.js index c01340e2e..e721cd857 100644 --- a/ui/desktop/app/app.js +++ b/ui/desktop/app/app.js @@ -7,6 +7,12 @@ import Application from '@ember/application'; import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; import config from './config/environment'; +import { + macroCondition, + getOwnConfig, + importSync, + isTesting, +} from '@embroider/macros'; export default class App extends Application { modulePrefix = config.modulePrefix; @@ -15,3 +21,8 @@ export default class App extends Application { } loadInitializers(App, config.modulePrefix); + +if (macroCondition(getOwnConfig().startMirageWithApp && !isTesting())) { + const startServer = importSync('desktop/mirage/config').default; + startServer({}); +} diff --git a/ui/desktop/config/environment.js b/ui/desktop/config/environment.js index 3a39834f0..70f11c8b9 100644 --- a/ui/desktop/config/environment.js +++ b/ui/desktop/config/environment.js @@ -33,11 +33,6 @@ module.exports = function (environment) { ? JSON.parse(process.env.EMBER_CLI_ELECTRON) : false, - 'ember-cli-mirage': { - //enabled: ENABLE_MIRAGE, - directory: '../../addons/api/mirage', - }, - api: { // there is no default API host in desktop //host: API_HOST, @@ -79,9 +74,11 @@ module.exports = function (environment) { // usually the same as the application origin. ENV.autoOrigin = true; - ENV['ember-cli-mirage'].enabled = process.env.ENABLE_MIRAGE - ? JSON.parse(process.env.ENABLE_MIRAGE) - : true; + ENV.mirage = { + enabled: process.env.ENABLE_MIRAGE + ? JSON.parse(process.env.ENABLE_MIRAGE) + : true, + }; ENV.ENABLE_A11Y_AUDIT = ENABLE_A11Y_AUDIT; ENV.COLOR_THEME = COLOR_THEME; @@ -114,6 +111,12 @@ module.exports = function (environment) { ENV.ENABLE_A11Y_AUDIT = ENABLE_A11Y_AUDIT; ENV.COLOR_THEME = COLOR_THEME; + + ENV.mirage = { + enabled: process.env.ENABLE_MIRAGE + ? JSON.parse(process.env.ENABLE_MIRAGE) + : true, + }; } if (environment === 'production') { diff --git a/ui/desktop/ember-cli-build.js b/ui/desktop/ember-cli-build.js index 6a609643e..a112055fc 100644 --- a/ui/desktop/ember-cli-build.js +++ b/ui/desktop/ember-cli-build.js @@ -9,6 +9,8 @@ const EmberApp = require('ember-cli/lib/broccoli/ember-app'); module.exports = async function (defaults) { const { setConfig } = await import('@warp-drive/build-config'); + const { EMBER_ENV } = process.env; + const config = require('./config/environment')(EMBER_ENV); const app = new EmberApp(defaults, { hinting: false, @@ -28,6 +30,11 @@ module.exports = async function (defaults) { svg: { paths: ['../../addons/core/public'], }, + '@embroider/macros': { + setOwnConfig: { + startMirageWithApp: config.mirage?.enabled ?? false, + }, + }, }); // TODO: The deprecations object removed in ember-data 6.0. diff --git a/ui/desktop/package.json b/ui/desktop/package.json index 070175c1b..3c976a22d 100644 --- a/ui/desktop/package.json +++ b/ui/desktop/package.json @@ -57,7 +57,7 @@ "@ember/render-modifiers": "^2.0.4", "@ember/string": "^4.0.0", "@ember/test-helpers": "^5.2.1", - "@embroider/macros": "^1.18.0", + "@embroider/macros": "^1.18.1", "@faker-js/faker": "^8.0.2", "@glimmer/component": "^2.0.0", "@glimmer/tracking": "^1.1.2", @@ -100,6 +100,7 @@ "eslint-plugin-qunit": "^8.1.2", "js-bexpr": "hashicorp/js-bexpr#9b4a4b54d85eba67fdfc0990133d1518d890b1e1", "loader.js": "^4.7.0", + "miragejs": "^0.1.48", "postcss": "^8.4.31", "prettier": "^3.3.3", "qunit": "^2.22.0", diff --git a/ui/desktop/tests/helpers/index.js b/ui/desktop/tests/helpers/index.js index 8fe33db08..b0d07f8a5 100644 --- a/ui/desktop/tests/helpers/index.js +++ b/ui/desktop/tests/helpers/index.js @@ -9,7 +9,7 @@ import { setupTest as upstreamSetupTest, } from 'ember-qunit'; import { authenticateSession } from 'ember-simple-auth/test-support'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'desktop/tests/helpers/mirage'; // This file exists to provide wrappers around ember-qunit's // test setup functions. This way, you can easily extend the setup that is diff --git a/ui/desktop/tests/helpers/mirage.js b/ui/desktop/tests/helpers/mirage.js new file mode 100644 index 000000000..778b71d6e --- /dev/null +++ b/ui/desktop/tests/helpers/mirage.js @@ -0,0 +1,8 @@ +/** + * Copyright IBM Corp. 2021, 2026 + * SPDX-License-Identifier: BUSL-1.1 + */ + +import startMirage from 'desktop/mirage/config'; +import { createSetupMirage } from 'api/test-support/helpers/create-mirage-helper'; +export const setupMirage = createSetupMirage(startMirage); diff --git a/ui/desktop/tests/integration/components/hidden-secret-test.js b/ui/desktop/tests/integration/components/hidden-secret-test.js index 39f4509f1..9e4d1726e 100644 --- a/ui/desktop/tests/integration/components/hidden-secret-test.js +++ b/ui/desktop/tests/integration/components/hidden-secret-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import { render, click } from '@ember/test-helpers'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'desktop/tests/helpers/mirage'; import { hbs } from 'ember-cli-htmlbars'; import { setupIntl } from 'ember-intl/test-support'; module('Integration | Component | hidden-secret', function (hooks) { diff --git a/ui/desktop/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js b/ui/desktop/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js index 2b7b76c7e..5d2f7f58e 100644 --- a/ui/desktop/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js +++ b/ui/desktop/tests/unit/controllers/scopes/scope/authenticate/method/index-test.js @@ -5,7 +5,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'desktop/tests/helpers/mirage'; import { visit, currentURL, settled } from '@ember/test-helpers'; import { setupIntl } from 'ember-intl/test-support'; import WindowMockIPC from '../../../../../../helpers/window-mock-ipc'; diff --git a/ui/desktop/tests/unit/controllers/scopes/scope/projects/sessions/index-test.js b/ui/desktop/tests/unit/controllers/scopes/scope/projects/sessions/index-test.js index 995cc0a8b..6014ece0f 100644 --- a/ui/desktop/tests/unit/controllers/scopes/scope/projects/sessions/index-test.js +++ b/ui/desktop/tests/unit/controllers/scopes/scope/projects/sessions/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { setupIntl } from 'ember-intl/test-support'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'desktop/tests/helpers/mirage'; import setupStubs from 'api/test-support/handlers/cache-daemon-search'; import { visit } from '@ember/test-helpers'; import { authenticateSession } from 'ember-simple-auth/test-support'; diff --git a/ui/desktop/tests/unit/controllers/scopes/scope/projects/targets/index-test.js b/ui/desktop/tests/unit/controllers/scopes/scope/projects/targets/index-test.js index a6f00dda4..6ffddc056 100644 --- a/ui/desktop/tests/unit/controllers/scopes/scope/projects/targets/index-test.js +++ b/ui/desktop/tests/unit/controllers/scopes/scope/projects/targets/index-test.js @@ -6,7 +6,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { setupIntl } from 'ember-intl/test-support'; -import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; +import { setupMirage } from 'desktop/tests/helpers/mirage'; import setupStubs from 'api/test-support/handlers/cache-daemon-search'; import { waitUntil, visit } from '@ember/test-helpers'; import { authenticateSession } from 'ember-simple-auth/test-support';