Skip to content

Commit

Permalink
Upgrade Ember CLI to 3.12 LTS (#138)
Browse files Browse the repository at this point in the history
* Upgrade ember-cli to 3.4
* Update tests/integration/helpers/a11y-audit-if-test.js
* Update tests/integration/helpers/a11y-audit-test.js
* Updated to latest LTS(3.8) & added jQuery guard
* Removed use of/support for node 6 & updated travis config and ember-try
* Travis config file update
* Moved jQuery guard to the correct place
* Updated babel version as per review notes
* Updated as per code review
* Updated concurrent axe test to use settled instead of wait
* Updated to latest LTS (3.12)
* Added @ember/jquery and fixed async/await syntax in tests
* Fix ember-default scenario in .travis.yml
* Update .travis.yml
* Remove 2.12 and 2.16 ember-try configs from .travis.yml
* Fix missing semicolons and JSDoc typo
* Fix Compatibility section in README.md
* Update engines.node section in package.json
* Remove registerAsyncHelper() global-style helper
  • Loading branch information
SergeAstapov authored and Andrew A Lee committed Nov 21, 2019
1 parent f094f29 commit 0e65a54
Show file tree
Hide file tree
Showing 31 changed files with 3,607 additions and 2,074 deletions.
18 changes: 18 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# unconventional js
/blueprints/*/files/
/vendor/

# compiled output
/dist/
/tmp/

# dependencies
/bower_components/

# misc
/coverage/

# ember-try
/.node_modules.ember-try/
/bower.json.ember-try
/package.json.ember-try
21 changes: 7 additions & 14 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
module.exports = {
root: true,
parserOptions: {
ecmaVersion: 2017,
ecmaVersion: 2018,
sourceType: 'module'
},
plugins: [
Expand All @@ -23,20 +23,22 @@ module.exports = {
// node files
{
files: [
'.template-lintrc.js',
'ember-cli-build.js',
'index.js',
'testem.js',
'ember-cli-build.js',
'blueprints/*/index.js',
'config/**/*.js',
'tests/dummy/config/**/*.js'
],
excludedFiles: [
'app/**',
'addon/**',
'addon-test-support/**',
'app/**',
'tests/dummy/app/**'
],
parserOptions: {
sourceType: 'script',
ecmaVersion: 2015
sourceType: 'script'
},
env: {
browser: false,
Expand All @@ -46,15 +48,6 @@ module.exports = {
rules: Object.assign({}, require('eslint-plugin-node').configs.recommended.rules, {
// add your custom rules and overrides for node files here
})
},

// test files
{
files: ['tests/**/*.js'],
excludedFiles: ['tests/dummy/**/*.js'],
env: {
embertest: true
}
}
]
};
22 changes: 11 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
# See https://help.github.com/ignore-files/ for more about ignoring files.

# compiled output
/dist
/tmp
/dist/
/tmp/

# dependencies
/node_modules
/bower_components
/bower_components/
/node_modules/

# misc
/.sass-cache
/connect.lock
/coverage/*
/coverage/
/libpeerconnection.log
npm-debug.log*
yarn-error.log
testem.log
/npm-debug.log*
/testem.log
/yarn-error.log

# ember-try
.node_modules.ember-try/
bower.json.ember-try
package.json.ember-try
/.node_modules.ember-try/
/bower.json.ember-try
/package.json.ember-try
43 changes: 25 additions & 18 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -1,21 +1,28 @@
/bower_components
# compiled output
/dist/
/tmp/

# dependencies
/bower_components/

# misc
/.bowerrc
/.editorconfig
/.ember-cli
/.eslintignore
/.eslintrc.js
/.gitignore
/.watchmanconfig
/.travis.yml
/bower.json
/config/ember-try.js
/dist
/tests
/tmp
**/.gitkeep
.bowerrc
.editorconfig
.ember-cli
.eslintrc.js
.gitignore
.watchmanconfig
.travis.yml
bower.json
ember-cli-build.js
testem.js
/ember-cli-build.js
/testem.js
/tests/
/yarn.lock
.gitkeep

# ember-try
.node_modules.ember-try/
bower.json.ember-try
package.json.ember-try
/.node_modules.ember-try/
/bower.json.ember-try
/package.json.ember-try
5 changes: 3 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@ env:
matrix:
# we recommend new addons test the current and previous LTS
# as well as latest stable release (bonus points to beta/canary)
- EMBER_TRY_SCENARIO=ember-lts-2.12
- EMBER_TRY_SCENARIO=ember-lts-2.16
- EMBER_TRY_SCENARIO=ember-lts-2.18
- EMBER_TRY_SCENARIO=ember-lts-3.4
- EMBER_TRY_SCENARIO=ember-lts-3.8
- EMBER_TRY_SCENARIO=ember-release
- EMBER_TRY_SCENARIO=ember-beta
- EMBER_TRY_SCENARIO=ember-canary
Expand Down
12 changes: 11 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,17 @@ workflow by running during a component's `didRender` phase in non-production
environments. This gives you instant feedback on if your components are
accessible in any given state.

## Installation

Compatibility
------------------------------------------------------------------------------

* Ember.js v2.18 or above
* Ember CLI v2.13 or above
* Node.js v8 or above


Installation
------------------------------------------------------------------------------

```bash
ember install ember-a11y-testing
Expand Down
6 changes: 0 additions & 6 deletions addon-test-support/audit.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { registerAsyncHelper } from '@ember/test';
import { assert } from '@ember/debug';
import RSVP from 'rsvp';
import config from 'ember-get-config';
Expand Down Expand Up @@ -100,11 +99,6 @@ function runA11yAudit(contextSelector = '#ember-testing-container', axeOptions)
});
}

// Register an async helper to use in acceptance tests
registerAsyncHelper('a11yAudit', function(app, ...args) {
return runA11yAudit(...args);
});

/**
* A wrapper method to run the async a11yAudit test helper if in an acceptance
* testing situation, but also supports being used in integration/unit test
Expand Down
4 changes: 2 additions & 2 deletions addon-test-support/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* @constant
* @private
* @type {Booelan}
* @type {Boolean}
*/
const performance = hasPerformanceApi() ? window.performance : undefined;

Expand All @@ -23,7 +23,7 @@ function hasPerformanceApi() {
/**
* Utility to add a performance marker.
*
* @param {String} name
* @param {String} name
* @public
*/
export function mark(name) {
Expand Down
140 changes: 79 additions & 61 deletions config/ember-try.js
Original file line number Diff line number Diff line change
@@ -1,75 +1,93 @@
module.exports = {
useYarn: true,
scenarios: [
{
name: 'ember-lts-2.12',
npm: {
devDependencies: {
'ember-source': '~2.12.0'
'use strict';

const getChannelURL = require('ember-source-channel-url');

module.exports = async function() {
return {
useYarn: true,
scenarios: [
{
name: 'ember-lts-2.18',
env: {
EMBER_OPTIONAL_FEATURES: JSON.stringify({ 'jquery-integration': true }),
},
npm: {
devDependencies: {
'@ember/jquery': '^0.5.1',
'ember-source': '~2.18.0'
}
}
}
},
{
name: 'ember-lts-2.16',
npm: {
devDependencies: {
'ember-source': '~2.16.0'
},
{
name: 'ember-lts-3.4',
env: {
EMBER_OPTIONAL_FEATURES: JSON.stringify({ 'jquery-integration': true }),
},
npm: {
devDependencies: {
'@ember/jquery': '^0.5.1',
'ember-source': '~3.4.0'
}
}
}
},
{
name: 'ember-release',
bower: {
dependencies: {
'ember': 'components/ember#release'
},
{
name: 'ember-lts-3.8',
env: {
EMBER_OPTIONAL_FEATURES: JSON.stringify({ 'jquery-integration': true }),
},
resolutions: {
'ember': 'release'
npm: {
devDependencies: {
'ember-source': '~3.8.0'
}
}
},
npm: {
devDependencies: {
'ember-source': null
{
name: 'ember-release',
npm: {
devDependencies: {
'ember-source': await getChannelURL('release')
}
}
}
},
{
name: 'ember-beta',
bower: {
dependencies: {
'ember': 'components/ember#beta'
},
resolutions: {
'ember': 'beta'
},
{
name: 'ember-beta',
npm: {
devDependencies: {
'ember-source': await getChannelURL('beta')
}
}
},
npm: {
devDependencies: {
'ember-source': null
{
name: 'ember-canary',
npm: {
devDependencies: {
'ember-source': await getChannelURL('canary')
}
}
}
},
{
name: 'ember-canary',
bower: {
dependencies: {
'ember': 'components/ember#canary'
},
resolutions: {
'ember': 'canary'
},
// The default `.travis.yml` runs this scenario via `npm test`,
// not via `ember try`. It's still included here so that running
// `ember try:each` manually or from a customized CI config will run it
// along with all the other scenarios.
{
name: 'ember-default',
npm: {
devDependencies: {}
}
},
npm: {
devDependencies: {
'ember-source': null
{
name: 'ember-default-with-jquery',
env: {
EMBER_OPTIONAL_FEATURES: JSON.stringify({
'jquery-integration': true
})
},
npm: {
devDependencies: {
'@ember/jquery': '^0.5.1'
}
}
}
},
{
name: 'ember-default',
npm: {
devDependencies: {}
}
}
]
]
};
};
3 changes: 2 additions & 1 deletion index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ var ALLOWED_CONTENT_FOR = [
];

module.exports = {
name: 'ember-a11y-testing',
name: require('./package').name,

/**
* Includes axe-core in builds that have tests. It includes the un-minified
Expand Down Expand Up @@ -92,4 +92,5 @@ module.exports = {

return tree;
}

};
Loading

0 comments on commit 0e65a54

Please sign in to comment.