Thursday, 15 March 2012

javascript - Getting “App is not defined” in teardown while testing Ember.js (ember-cli) app -



javascript - Getting “App is not defined” in teardown while testing Ember.js (ember-cli) app -

i'm trying test simple ember-cli app (following @bcardarella dockyard tutorial: http://reefpoints.dockyard.com/2014/05/09/building-an-ember-app-with-rails-part-3.html)

here's test:

import startapp 'wallet2/tests/helpers/start-app'; module('integration - landing page', { setup: function() { var app; homecoming app = startapp(); }, teardown: function() { homecoming ember.run(app, "destroy"); } }); test('should inquire me log in', function() { homecoming visit('/').then(function() { equal(find('h1#title').text(), 'please login'); homecoming equal(find('form').length, 1); }); });

the test works,

3. teardown failed on should inquire me log in: app not defined source: @ object.module.teardown (wallet2/tests/integration/landing-page-test.js:13:26) @ object.test.teardown (http://localhost:4200/assets/qunit.js:228:35) @ http://localhost:4200/assets/qunit.js:364:10 @ process (http://localhost:4200/assets/qunit.js:1453:24) @ http://localhost:4200/assets/qunit.js:479:5

here's start-app.js

var application = require('wallet2/app')['default']; var router = require('wallet2/router')['default']; export default function startapp(attrs) { var app; var attributes = ember.merge({ // useful test defaults rootelement: '#ember-testing', log_active_generation:false, log_view_lookups: false }, attrs); // can override; router.reopen({ location: 'none' }); ember.run(function(){ app = application.create(attributes); app.setupfortesting(); app.injecttesthelpers(); }); app.reset(); // shouldn't needed, want able "start app @ specific url" homecoming app; }

this driving me crazy since yesterday. help!

app defined in setup method. update module part :

import startapp '../../helpers/start-app'; // alter due folder var app; module('integration - landing page', { setup: function() { app = startapp(); }, teardown: function() { ember.run(app, "destroy"); } });

javascript ember.js ember-cli

No comments:

Post a Comment