diff --git a/.npmignore b/.npmignore index 076a740..fa8b147 100644 --- a/.npmignore +++ b/.npmignore @@ -13,4 +13,4 @@ .travis.yml bower.json ember-cli-build.js -testem.json +testem.js diff --git a/.travis.yml b/.travis.yml index f919ca8..d1ba920 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,7 @@ --- language: node_js node_js: - - "0.12" + - "4" - "5" sudo: false @@ -12,6 +12,7 @@ cache: env: - EMBER_TRY_SCENARIO=default + - EMBER_TRY_SCENARIO=ember-1.13 - EMBER_TRY_SCENARIO=ember-release - EMBER_TRY_SCENARIO=ember-beta - EMBER_TRY_SCENARIO=ember-canary @@ -22,14 +23,15 @@ matrix: - env: EMBER_TRY_SCENARIO=ember-canary before_install: - - export PATH=/usr/local/phantomjs-2.0.0/bin:$PATH - - "npm config set spin false" - - "npm install -g npm@^2" + - npm config set spin false + - npm install -g bower + - npm install phantomjs-prebuilt install: - - npm install -g bower - npm install - bower install script: - - ember try $EMBER_TRY_SCENARIO test + # Usually, it's ok to finish the test scenario without reverting + # to the addon's original dependency state, skipping "cleanup". + - ember try $EMBER_TRY_SCENARIO test --skip-cleanup diff --git a/README.md b/README.md index cef071f..a466673 100644 --- a/README.md +++ b/README.md @@ -23,4 +23,4 @@ Provides the ilios calendar addon to other ember applications including our fron * `ember build` -For more information on using ember-cli, visit [http://www.ember-cli.com/](http://www.ember-cli.com/). +For more information on using ember-cli, visit [http://ember-cli.com/](http://ember-cli.com/). diff --git a/bower.json b/bower.json index ead1a10..8f1e555 100644 --- a/bower.json +++ b/bower.json @@ -1,17 +1,13 @@ { "name": "ilios-calendar", "dependencies": { - "ember": "2.3.0", - "ember-cli-shims": "0.1.0", + "ember": "~2.6.0", + "ember-cli-shims": "0.1.1", "ember-cli-test-loader": "0.2.2", - "ember-qunit-notifications": "0.1.0", "moment": ">= 2.8.0", "moment-timezone": ">= 0.1.0", "font-awesome": "~4.5.0", "clipboard": "~1.5.5", - "jquery": "1.11.3" - }, - "resolutions": { - "ember": "2.3.0" + "ember-qunit-notifications": "0.1.0" } } diff --git a/config/ember-try.js b/config/ember-try.js index 3e88bc6..014f603 100644 --- a/config/ember-try.js +++ b/config/ember-try.js @@ -3,33 +3,52 @@ module.exports = { scenarios: [ { name: 'default', - dependencies: { } + bower: { + dependencies: { } + } + }, + { + name: 'ember-1.13', + bower: { + dependencies: { + 'ember': '~1.13.0' + }, + resolutions: { + 'ember': '~1.13.0' + } + } }, { name: 'ember-release', - dependencies: { - 'ember': 'components/ember#release' - }, - resolutions: { - 'ember': 'release' + bower: { + dependencies: { + 'ember': 'components/ember#release' + }, + resolutions: { + 'ember': 'release' + } } }, { name: 'ember-beta', - dependencies: { - 'ember': 'components/ember#beta' - }, - resolutions: { - 'ember': 'beta' + bower: { + dependencies: { + 'ember': 'components/ember#beta' + }, + resolutions: { + 'ember': 'beta' + } } }, { name: 'ember-canary', - dependencies: { - 'ember': 'components/ember#canary' - }, - resolutions: { - 'ember': 'canary' + bower: { + dependencies: { + 'ember': 'components/ember#canary' + }, + resolutions: { + 'ember': 'canary' + } } } ] diff --git a/package.json b/package.json index cb6e63e..8f4af1a 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "scripts": { "build": "ember build", "start": "ember server", - "test": "ember try:testall" + "test": "ember try:each" }, "repository": "https://github.com/ilios/calendar", "engines": { @@ -19,39 +19,38 @@ "author": "", "license": "MIT", "devDependencies": { - "broccoli-asset-rev": "^2.2.0", + "broccoli-asset-rev": "^2.4.2", "elemental-calendar": "0.0.8", - "ember-ajax": "0.7.1", - "ember-cli": "2.3.0-beta.2", + "ember-ajax": "2.4.1", + "ember-cli": "2.6.0", "ember-cli-app-version": "^1.0.0", - "ember-cli-clipboard": "0.3.0", - "ember-cli-content-security-policy": "0.4.0", + "ember-cli-clipboard": "0.3.2", + "ember-cli-content-security-policy": "0.5.0", "ember-cli-dependency-checker": "^1.2.0", - "ember-cli-font-awesome": "1.4.0", + "ember-font-awesome": "2.1.1", "ember-cli-htmlbars-inline-precompile": "^0.3.1", - "ember-cli-inject-live-reload": "^1.3.1", - "ember-cli-moment-shim": "0.7.1", - "ember-cli-qunit": "^1.2.1", + "ember-cli-inject-live-reload": "^1.4.0", + "ember-cli-moment-shim": "1.3.0", + "ember-cli-qunit": "^2.0.0", "ember-cli-release": "0.2.8", - "ember-cli-sri": "^2.0.0", + "ember-cli-sri": "^2.1.0", "ember-cli-uglify": "^1.2.0", - "ember-data": "^2.3.0", + "ember-data": "^2.6.0", "ember-disable-prototype-extensions": "^1.1.0", "ember-disable-proxy-controllers": "^1.0.1", - "ember-export-application-global": "^1.0.4", - "ember-load-initializers": "^0.5.0", - "ember-moment": "4.1.0", + "ember-export-application-global": "^1.0.5", + "ember-load-initializers": "^0.5.1", + "ember-moment": "6.1.0", "ember-resolver": "^2.0.3", - "ember-tooltips": "^0.5.8", - "ember-try": "~0.0.8", - "loader.js": "^4.0.0" + "ember-tooltips": "^0.7.0", + "loader.js": "^4.0.1" }, "keywords": [ "ember-addon" ], "dependencies": { "ember-cli-babel": "^5.1.5", - "ember-cli-htmlbars": "^1.0.1", + "ember-cli-htmlbars": "^1.0.3", "ember-cli-sass": "^5.2.1" }, "ember-addon": { diff --git a/testem.json b/testem.js similarity index 81% rename from testem.json rename to testem.js index 0f35392..26044b2 100644 --- a/testem.json +++ b/testem.js @@ -1,4 +1,5 @@ -{ +/*jshint node:true*/ +module.exports = { "framework": "qunit", "test_page": "tests/index.html?hidepassed", "disable_watching": true, @@ -9,4 +10,4 @@ "PhantomJS", "Chrome" ] -} +}; diff --git a/tests/helpers/module-for-acceptance.js b/tests/helpers/module-for-acceptance.js index ed23003..76996fd 100644 --- a/tests/helpers/module-for-acceptance.js +++ b/tests/helpers/module-for-acceptance.js @@ -1,23 +1,23 @@ import { module } from 'qunit'; +import Ember from 'ember'; import startApp from '../helpers/start-app'; import destroyApp from '../helpers/destroy-app'; +const { RSVP: { Promise } } = Ember; + export default function(name, options = {}) { module(name, { beforeEach() { this.application = startApp(); if (options.beforeEach) { - options.beforeEach.apply(this, arguments); + return options.beforeEach.apply(this, arguments); } }, afterEach() { - destroyApp(this.application); - - if (options.afterEach) { - options.afterEach.apply(this, arguments); - } + let afterEach = options.afterEach && options.afterEach.apply(this, arguments); + return Promise.resolve(afterEach).then(() => destroyApp(this.application)); } }); }