Skip to content

Commit

Permalink
Fix initialiser location
Browse files Browse the repository at this point in the history
  • Loading branch information
mansona committed Feb 17, 2024
1 parent cf8fd03 commit ae591bb
Show file tree
Hide file tree
Showing 3 changed files with 68 additions and 61 deletions.
61 changes: 61 additions & 0 deletions packages/ember-cli-mirage/addon/initializers/ember-cli-mirage.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
import getRfc232TestContext from 'ember-cli-mirage/get-rfc232-test-context';
import startMirageImpl from 'ember-cli-mirage/start-mirage';
import * as config from '../mirage/config';
const { default: makeServer } = config;

//
// This initializer does two things:
//
// 1. Pulls the mirage config objects from the application's config and
// registers them in the container so `ember-cli-mirage/start-mirage` can
// find them (since it doesn't have access to the app's namespace).
// 2. Provides legacy support for auto-starting mirage in pre-rfc268 acceptance
// tests.
//
export function initialize(application) {
if (makeServer) {
application.register('mirage:make-server', makeServer, {
instantiate: false,
});
}

const ENV = application.resolveRegistration('config:environment');

ENV['ember-cli-mirage'] = ENV['ember-cli-mirage'] || {};
if (_shouldUseMirage(ENV.environment, ENV['ember-cli-mirage'])) {
startMirage(application.__container__, ENV);
}
}

export default {
name: 'ember-cli-mirage',
initialize,
};

function startMirage(owner, env) {
return startMirageImpl(owner, { env, makeServer });
}

function _shouldUseMirage(env, addonConfig) {
if (typeof FastBoot !== 'undefined') {
return false;
}
if (getRfc232TestContext()) {
return false;
}
let userDeclaredEnabled = typeof addonConfig.enabled !== 'undefined';
let defaultEnabled = _defaultEnabled(env, addonConfig);

return userDeclaredEnabled ? addonConfig.enabled : defaultEnabled;
}

/*
Returns a boolean specifying the default behavior for whether
to initialize Mirage.
*/
function _defaultEnabled(env, addonConfig) {
let usingInDev = env === 'development' && !addonConfig.usingProxy;
let usingInTest = env === 'test';

return usingInDev || usingInTest;
}
62 changes: 4 additions & 58 deletions packages/ember-cli-mirage/app/initializers/ember-cli-mirage.js
Original file line number Diff line number Diff line change
@@ -1,58 +1,4 @@
import ENV from '../config/environment';
import getRfc232TestContext from 'ember-cli-mirage/get-rfc232-test-context';
import startMirageImpl from 'ember-cli-mirage/start-mirage';
import * as config from '../mirage/config';
const { default: makeServer } = config;

//
// This initializer does two things:
//
// 1. Pulls the mirage config objects from the application's config and
// registers them in the container so `ember-cli-mirage/start-mirage` can
// find them (since it doesn't have access to the app's namespace).
// 2. Provides legacy support for auto-starting mirage in pre-rfc268 acceptance
// tests.
//
export default {
name: 'ember-cli-mirage',
initialize(application) {
if (makeServer) {
application.register('mirage:make-server', makeServer, {
instantiate: false,
});
}

ENV['ember-cli-mirage'] = ENV['ember-cli-mirage'] || {};
if (_shouldUseMirage(ENV.environment, ENV['ember-cli-mirage'])) {
startMirage(application.__container__, ENV);
}
},
};

function startMirage(owner, env = ENV) {
return startMirageImpl(owner, { env, makeServer });
}

function _shouldUseMirage(env, addonConfig) {
if (typeof FastBoot !== 'undefined') {
return false;
}
if (getRfc232TestContext()) {
return false;
}
let userDeclaredEnabled = typeof addonConfig.enabled !== 'undefined';
let defaultEnabled = _defaultEnabled(env, addonConfig);

return userDeclaredEnabled ? addonConfig.enabled : defaultEnabled;
}

/*
Returns a boolean specifying the default behavior for whether
to initialize Mirage.
*/
function _defaultEnabled(env, addonConfig) {
let usingInDev = env === 'development' && !addonConfig.usingProxy;
let usingInTest = env === 'test';

return usingInDev || usingInTest;
}
export {
default,
initialize,
} from 'ember-cli-mirage/initializers/ember-cli-mirage';
6 changes: 3 additions & 3 deletions packages/ember-cli-mirage/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,8 @@ module.exports = {
});
},

treeForApp(appTree) {
let trees = [appTree];
treeForAddon(addonTree) {
let trees = [addonTree];
let mirageFilesTree = new Funnel(this.mirageDirectory, {
destDir: 'mirage',
});
Expand All @@ -117,7 +117,7 @@ module.exports = {
trees.push(this._lintMirageTree(mirageFilesTree));
}

return mergeTrees(trees);
return this._super(mergeTrees(trees));
},

_shouldIncludeFiles() {
Expand Down

0 comments on commit ae591bb

Please sign in to comment.