
Security News
AGENTS.md Gains Traction as an Open Format for AI Coding Agents
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
ember-addon-tests
Advanced tools
Ember Addon Tests provides declarative test helpers for testing ember addons.
Ember addons provide a great developer experience for most integration test cases out of the box. The dummy app allows to test components and services provided by the addon in the context of a consuming application. Ember-try helps to test the addon against different versions of dependencies.
But Ember addons do not provide a great test story for some less common cases:
ember install addon
) and blueprints run by it.ember serve
).Ember Addon Tests tries to fill that gap. It's inspired by Ember CLI Addon Tests. It could be seen as a rewrite of Ember CLI Addon Tests using a modernized architecture utilizing yarn workspaces.
ember-cli
is installed globally.ember-addon-tests
in your project.If using NPM:
npm install --global ember-cli
npm install --save-dev ember-addon-tests
If using Yarn:
yarn global add ember-cli
yarn add --dev ember-addon-tests
const TestProject = require('ember-addon-tests');
const { expect } = require('chai');
const axios = require('axios');
// Create a new test project
let testProject = new TestProject({
projectRoot: '/path-to/npm-package/or/yarn-workspace-root',
});
// Create a new ember application within your test project
await testProject.createEmberApp();
// Install addon under test in the test project
await testProject.addOwnPackageAsDevDependency(
'name-of-a-npm-package-within-project-root'
);
// Build the application
await testProject.runEmberCommand('build', '--prod');
// Do some assertions against build
expect(
await fs.stat(path.join(testProject.path, 'dist', 'vendor.js')).size
).to.be.lessThan(1 * 1024 * 1024);
// Start Ember's development server
await testProject.startEmberServer();
// Do some assertions against the running development server
let response = await axios.get('http://localhost:4200');
expect(response.headers).to.include({
'content-security-policy': "default-src: 'none';"
});
// Stop Ember's development server again
await testProject.stopEmberServer();
TestProject.createEmberApp()
and TestProject.createEmberAddon()
methods
use globally installed Ember CLI to create a new Ember project. They will use
whatever Ember version is installed globally. Upgrade or downgrade globally
installed Ember CLI to test your addon against different Ember CLI versions.
Please refer to source code as API documentation for now.
This project is licensed under the MIT License.
FAQs
Declarative integration tests for Ember Addons
The npm package ember-addon-tests receives a total of 8 weekly downloads. As such, ember-addon-tests popularity was classified as not popular.
We found that ember-addon-tests demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.