Socket
Book a DemoInstallSign in
Socket

ember-current-url

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ember-current-url

The default blueprint for ember-cli addons.

latest
Source
npmnpm
Version
0.1.2
Version published
Weekly downloads
26
-18.75%
Maintainers
1
Weekly downloads
 
Created
Source

ember-current-url

High Level URL Assertions for QUnit in Ember, heavily inspired by qunit-dom.

Installation

ember install ember-current-url

Then run this codemod in you project directory order to migrate. To run the codemod:

If you do not have jscodeshift installed globally, then run: npm i jscodeshift -g

To perform the transformation run the following command:

jscodeshift -t https://raw.githubusercontent.com/dexturr/ember-current-url-codemod/master/index.js ./tests

API

This adds a new functionality to QUnit assert which verifies properties of the current URL. This utaltizes a hash for the query parameters so that tests are not dependant on the order of the query parameters.

equals

  test('Basic routes', async function(assert) {
    await visit('/foo');
    assert.url.equals('/foo');
  });

  // Query params function either by using a URL 
  test('Query params', async function(assert) {
    await visit('/foo?bar=baz&qux=quux');
    assert.url.equals('/foo?bar=baz&qux=quux');
  });

  // Or a hash
  test('Query params (hash)', async function(assert) {
    await visit('/foo?bar=baz&qux=quux');
    assert.url.equals(
        '/foo', 
        { 
            bar: 'baz', 
            qux: 'quux' 
        }
    );
  });

incudes

  test('Includes', async function(assert) {
    await visit('/foo/bar/baz');
    assert.url.includes('bar');
  });

doesNotInclude

  test('Does Not Include', async function(assert) {
    await visit('/foo/bar/baz');
    assert.url.doesNotInclude('qux');
  });

hasQueryParameters

  test('Has query parameters', async function(assert) {
    await visit('/foo?bar=baz');
    assert.url.hasQueryParameters({
      bar: 'baz'
    });
  });

doesNotHaveQueryParameters

  test('Does not have query parameters functions', async function(assert) {
    await visit('/foo?bar=baz');
    assert.url.doesNotHaveQueryParameters({
      qux: 'quux'
    });
  });

Legacy

Previously assert.url was assert.currentUrl. Both are still supported and work as expected.

Contributing

Installation

  • git clone <repository-url>
  • cd ember-current-url
  • npm install

Building

In general you can just run npm build (which runs both the below) however if altering anything in ./lib you will need to build rollup and rebuild Ember in order to see your changes (it sucks, I know).

Rollup build

  • npm run build:dist

Ember Build

  • npm run build:ember

Linting

  • npm run lint:js
  • npm run lint:js -- --fix

Running tests

  • ember test – Runs the test suite on the current Ember version
  • ember test --server – Runs the test suite in "watch mode"
  • ember try:each – Runs the test suite against multiple Ember versions

Running the dummy application

For more information on using ember-cli, visit https://ember-cli.com/.

License

This project is licensed under the MIT License.

Keywords

ember-addon

FAQs

Package last updated on 17 Dec 2018

Did you know?

Socket

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.

Install

Related posts