diff --git a/.watchmanconfig b/.watchmanconfig
index 5e9462c20..e7834e3e4 100644
--- a/.watchmanconfig
+++ b/.watchmanconfig
@@ -1,3 +1,3 @@
{
- "ignore_dirs": ["tmp"]
+ "ignore_dirs": ["tmp", "dist"]
}
diff --git a/bower.json b/bower.json
index c80a72279..abcc56e22 100644
--- a/bower.json
+++ b/bower.json
@@ -5,12 +5,12 @@
"codemirror": "5.2.0",
"devicejs": "0.2.7",
"ember": "1.13.10",
- "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3",
- "ember-cli-test-loader": "0.1.3",
+ "ember-cli-shims": "0.0.6",
+ "ember-cli-test-loader": "0.2.1",
"ember-data": "1.13.13",
"ember-mocha": "0.8.6",
- "ember-load-initializers": "ember-cli/ember-load-initializers#0.1.5",
- "ember-resolver": "0.1.18",
+ "ember-load-initializers": "0.1.7",
+ "ember-resolver": "0.1.20",
"es5-shim": "4.2.0",
"Faker": "3.0.1",
"fastclick": "1.0.6",
@@ -23,7 +23,7 @@
"jqueryui-touch-punch": "furf/jquery-ui-touch-punch#4bc009145202d9c7483ba85f3a236a8f3470354d",
"jquery.simulate.drag-sortable": "0.1.0",
"keymaster": "1.6.3",
- "loader.js": "3.2.1",
+ "loader.js": "ember-cli/loader.js#3.4.0",
"lodash": "~3.7.0",
"moment": "2.10.3",
"normalize.css": "3.0.3",
diff --git a/package.json b/package.json
index 0d1f3010e..83520fb41 100644
--- a/package.json
+++ b/package.json
@@ -19,33 +19,34 @@
"author": "",
"license": "MIT",
"devDependencies": {
- "broccoli-asset-rev": "^2.1.2",
- "ember-cli": "1.13.8",
- "ember-cli-app-version": "0.5.0",
- "ember-cli-babel": "^5.1.3",
+ "broccoli-asset-rev": "2.2.0",
+ "ember-cli": "1.13.13",
+ "ember-cli-app-version": "1.0.0",
+ "ember-cli-babel": "5.1.5",
"ember-cli-content-security-policy": "0.4.0",
- "ember-cli-dependency-checker": "^1.0.1",
+ "ember-cli-dependency-checker": "1.1.0",
"ember-cli-es5-shim": "0.1.1",
"ember-cli-fastclick": "1.0.3",
- "ember-cli-htmlbars": "0.7.9",
- "ember-cli-htmlbars-inline-precompile": "^0.2.0",
- "ember-cli-ic-ajax": "0.2.1",
+ "ember-cli-htmlbars": "1.0.1",
+ "ember-cli-htmlbars-inline-precompile": "0.3.1",
+ "ember-cli-ic-ajax": "0.2.4",
"ember-cli-inject-live-reload": "^1.3.1",
"ember-cli-mirage": "0.1.9",
"ember-cli-mocha": "0.9.3",
"ember-cli-pretender": "0.5.0",
- "ember-cli-release": "0.2.3",
+ "ember-cli-release": "0.2.8",
"ember-cli-selectize": "0.4.0",
- "ember-cli-sri": "^1.0.3",
+ "ember-cli-sri": "1.2.0",
"ember-cli-uglify": "^1.2.0",
"ember-data": "1.13.13",
"ember-data-filter": "1.13.0",
- "ember-disable-proxy-controllers": "^1.0.0",
- "ember-export-application-global": "^1.0.3",
+ "ember-disable-proxy-controllers": "1.0.1",
+ "ember-export-application-global": "1.0.4",
"ember-myth": "0.1.1",
"ember-simple-auth": "1.0.0",
"ember-sinon": "0.2.1",
"ember-suave": "1.2.2",
+ "ember-watson": "0.7.0",
"fs-extra": "0.16.3",
"glob": "^4.0.5",
"walk-sync": "^0.1.3"
diff --git a/tests/acceptance/authentication-test.js b/tests/acceptance/authentication-test.js
index 043c81add..b97494f37 100644
--- a/tests/acceptance/authentication-test.js
+++ b/tests/acceptance/authentication-test.js
@@ -8,12 +8,11 @@ import {
import { expect } from 'chai';
import Ember from 'ember';
import startApp from '../helpers/start-app';
+import destroyApp from '../helpers/destroy-app';
import { authenticateSession, currentSession, invalidateSession } from 'ghost/tests/helpers/ember-simple-auth';
import Mirage from 'ember-cli-mirage';
import windowProxy from 'ghost/utils/window-proxy';
-const {run} = Ember;
-
describe('Acceptance: Authentication', function () {
let application,
originalReplaceLocation;
@@ -23,7 +22,7 @@ describe('Acceptance: Authentication', function () {
});
afterEach(function () {
- run(application, 'destroy');
+ destroyApp(application);
});
describe('general page', function () {
diff --git a/tests/acceptance/settings/navigation-test.js b/tests/acceptance/settings/navigation-test.js
index 9628c1444..83a68a889 100644
--- a/tests/acceptance/settings/navigation-test.js
+++ b/tests/acceptance/settings/navigation-test.js
@@ -7,12 +7,10 @@ import {
afterEach
} from 'mocha';
import { expect } from 'chai';
-import Ember from 'ember';
import startApp from '../../helpers/start-app';
+import destroyApp from '../../helpers/destroy-app';
import { invalidateSession, authenticateSession } from 'ghost/tests/helpers/ember-simple-auth';
-const {run} = Ember;
-
describe('Acceptance: Settings - Navigation', function () {
let application;
@@ -21,7 +19,7 @@ describe('Acceptance: Settings - Navigation', function () {
});
afterEach(function () {
- run(application, 'destroy');
+ destroyApp(application);
});
it('redirects to signin when not authenticated', function () {
diff --git a/tests/acceptance/settings/tags-test.js b/tests/acceptance/settings/tags-test.js
index 4d7028c14..9ea1504e2 100644
--- a/tests/acceptance/settings/tags-test.js
+++ b/tests/acceptance/settings/tags-test.js
@@ -9,6 +9,7 @@ import {
import { expect } from 'chai';
import Ember from 'ember';
import startApp from '../../helpers/start-app';
+import destroyApp from '../../helpers/destroy-app';
import { invalidateSession, authenticateSession } from 'ghost/tests/helpers/ember-simple-auth';
const {run} = Ember;
@@ -48,7 +49,7 @@ describe('Acceptance: Settings - Tags', function () {
});
afterEach(function () {
- run(application, 'destroy');
+ destroyApp(application);
});
it('redirects to signin when not authenticated', function () {
diff --git a/tests/acceptance/setup-test.js b/tests/acceptance/setup-test.js
index 4162a166b..8dc89544a 100644
--- a/tests/acceptance/setup-test.js
+++ b/tests/acceptance/setup-test.js
@@ -8,11 +8,10 @@ import {
import { expect } from 'chai';
import Ember from 'ember';
import startApp from 'ghost/tests/helpers/start-app';
+import destroyApp from 'ghost/tests/helpers/destroy-app';
import { invalidateSession, authenticateSession } from 'ghost/tests/helpers/ember-simple-auth';
import Mirage from 'ember-cli-mirage';
-const {run} = Ember;
-
describe('Acceptance: Setup', function () {
let application;
@@ -21,7 +20,7 @@ describe('Acceptance: Setup', function () {
});
afterEach(function () {
- run(application, 'destroy');
+ destroyApp(application);
});
it('redirects if already authenticated', function () {
diff --git a/tests/helpers/destroy-app.js b/tests/helpers/destroy-app.js
new file mode 100644
index 000000000..13d498950
--- /dev/null
+++ b/tests/helpers/destroy-app.js
@@ -0,0 +1,5 @@
+import Ember from 'ember';
+
+export default function destroyApp(application) {
+ Ember.run(application, 'destroy');
+}
diff --git a/tests/helpers/module-for-acceptance.js b/tests/helpers/module-for-acceptance.js
new file mode 100644
index 000000000..f2377a974
--- /dev/null
+++ b/tests/helpers/module-for-acceptance.js
@@ -0,0 +1,23 @@
+import { module } from 'qunit';
+import startApp from '../helpers/start-app';
+import destroyApp from '../helpers/destroy-app';
+
+export default function (name, options = {}) {
+ module(name, {
+ beforeEach() {
+ this.application = startApp();
+
+ if (options.beforeEach) {
+ options.beforeEach.apply(this, arguments);
+ }
+ },
+
+ afterEach() {
+ destroyApp(this.application);
+
+ if (options.afterEach) {
+ options.afterEach.apply(this, arguments);
+ }
+ }
+ });
+}
diff --git a/tests/index.html b/tests/index.html
index 1059c0d71..f0e8a6729 100644
--- a/tests/index.html
+++ b/tests/index.html
@@ -39,10 +39,12 @@
{{content-for 'body'}}
{{content-for 'test-body'}}
+
-
+
+
{{content-for 'body-footer'}}