diff --git a/packages/@ember/test/index.js b/packages/@ember/test/index.js index 2c5d3ae272d..3f226dbcac6 100644 --- a/packages/@ember/test/index.js +++ b/packages/@ember/test/index.js @@ -1,11 +1,27 @@ -import { Test } from 'ember-testing'; +import require, { has } from 'require'; -const { - registerAsyncHelper, - registerHelper, - registerWaiter, - unregisterHelper, - unregisterWaiter, -} = Test; +export let registerAsyncHelper; +export let registerHelper; +export let registerWaiter; +export let unregisterHelper; +export let unregisterWaiter; -export { registerAsyncHelper, registerHelper, registerWaiter, unregisterHelper, unregisterWaiter }; +if (has('ember-testing')) { + let { Test } = require('ember-testing'); + + registerAsyncHelper = Test.registerAsyncHelper; + registerHelper = Test.registerHelper; + registerWaiter = Test.registerWaiter; + unregisterHelper = Test.unregisterHelper; + unregisterWaiter = Test.unregisterWaiter; +} else { + let testingNotAvailableMessage = () => { + throw new Error('Attempted to use test utilities, but `ember-testing` was not included'); + }; + + registerAsyncHelper = testingNotAvailableMessage; + registerHelper = testingNotAvailableMessage; + registerWaiter = testingNotAvailableMessage; + unregisterHelper = testingNotAvailableMessage; + unregisterWaiter = testingNotAvailableMessage; +}