Когда я делаю Ember.Component.Create() в модульном тесте для миксина, я получаю эту ошибку. Я обновлял ember с 1.13 до 2.10, этот тест работал нормально в 1.13, но в 2.10 я получаю эту ошибку. Похоже, что в 2.10 для запуска компонента ember требуется экземпляр приложения.
Died on test #1 at Module.callback (http://localhost:4200/assets/tests.js:250:19)
at Module.exports (http://localhost:4200/assets/vendor.js:131:32)
at requireModule (http://localhost:4200/assets/vendor.js:30:18)
at TestLoader.require (http://localhost:4200/assets/test-support.js:7104:7)
at TestLoader.loadModules (http://localhost:4200/assets/test-support.js:7096:14)
at Function.TestLoader.load (http://localhost:4200/assets/test-support.js:7126:22)
at http://localhost:4200/assets/test-support.js:7009:18: Cannot instantiate a component without a renderer. Please ensure that you are creating <(subclass of Ember.Component):ember210> with a proper container/registry.@ 9 ms
Source:
Error: Cannot instantiate a component without a renderer. Please ensure that you are creating <(subclass of Ember.Component):ember210> with a proper container/registry.
at Class.init (http://localhost:4200/assets/vendor.js:51954:15)
at Class.superWrapper [as init] (http://localhost:4200/assets/vendor.js:50175:22)
at Class.init (http://localhost:4200/assets/vendor.js:50443:19)
at Class.superWrapper (http://localhost:4200/assets/vendor.js:50175:22)
at Class.init (http://localhost:4200/assets/vendor.js:50493:19)
at Class.superWrapper (http://localhost:4200/assets/vendor.js:50175:22)
at Class.exports.default._emberMetal.Mixin.create._Mixin$create.init (http://localhost:4200/assets/vendor.js:51000:17)
at Class.superWrapper (http://localhost:4200/assets/vendor.js:50175:22)
at Class.init (http://localhost:4200/assets/vendor.js:17472:19)
at Class.superWrapper [as init] (http://localhost:4200/assets/vendor.js:50175:22)
Несколько вещей, которые я пробовал:
ЗапуститьApp() в настройке и уничтожить, аналогично интеграционному тестированию.
Чтобы переопределить init, но init всегда требует вызова _super()
Пытался выполнить в среде интеграционного тестирования, в которой создается приложение.