![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
@metahub/karma-jasmine-jquery
Advanced tools
A Karma plugin for Jasmine-jQuery.
npm install karma jasmine-core karma-jasmine jasmine-jquery @metahub/karma-jasmine-jquery --save-dev
Note: @metahub/karma-jasmine-jquery
depends on Jasmine, Karma-Jasmine, and Jasmine-jQuery but they are not bundled, just defined as peer-dependencies. This allow you to use any version independently of @metahub/karma-jasmine-jquery
.
module.exports = function(config) {
config.set({
plugins: ['@metahub/karma-jasmine-jquery', 'karma-*'],
frameworks: ['jasmine-jquery'],
});
};
Note: Karma can auto-load plugins named karma-*
(see plugins). Unfortunatly it doesn't work with scoped packages, therefore @metahub/karma-jasmine-jquery
has to be explicitly added to the plugins
configuration. In order to continue to automatically load other plugins you can add karma-*
to the plugins
configuration.
Note: @metahub/karma-jasmine-jquery
will automatically import the necesary files from jQuery, Jasmine and Karma-Jasmine. No need to add them to plugins
or frameworks
.
In your Jasmine tests, jQuery will be accessible with $
or jQuery
:
describe('Jasmine tests with Jasmine-jQuery', () => {
it('shoud allow to use jQuery', () => {
setFixtures('<div id="fixture" class="fixture-class">fixture content</div>');
expect($('#fixture')).toHaveText('fixture content');
expect(jQuery('#fixture')).toHaveClass('fixture-class');
});
});
@metahub/karma-jasmine-jquery
uses a recent version of jQuery but it might be desirable to use the specific version of jQuery used in your application for executing the Jasmine tests.
In that case you can use Karma-jQuery:
npm install karma-jquery --save-dev
module.exports = function(config) {
config.set({
plugins: ['@metahub/karma-jasmine-jquery', 'karma-*'],
frameworks: ['jasmine-jquery', 'jquery-1.8.3'],
});
};
In your Jasmine tests, the version of jQuery configured with Karma-jQuery will be accessible with $
or jQuery
. The version of jQuery used by @metahub/karma-jasmine-jquery
will be accessible with $j
or jasmineJQuery
:
describe('Jasmine tests with Jasmine-jQuery and Karma-jQuery', () => {
it('shoud allow to use a specific version jQuery', () => {
expect($.fn.jquery).toBe('1.8.3');
$.fn.jquery // 1.8.3 => version installed by Karma-jQuery
jQuery.fn.jquery // 1.8.3 => version installed by Karma-jQuery
expect($j.fn.jquery).toBe('3.2.1');
$j.fn.jquery // 3.2.1 => version installed by @metahub/karma-jasmine-jquery
jasmineJQuery.fn.jquery // 3.2.1 => version installed by @metahub/karma-jasmine-jquery
});
});
FAQs
A Karma plugin for jasmine-jquery
We found that @metahub/karma-jasmine-jquery 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
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.