A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/SirkoS/chai-sorted below:

SirkoS/chai-sorted: Chai JS Plugin for testing if an array has sorted values (strings, numbers, booleans). Very helpful when writing tests for features that implement Array.prototype.sort()

Chai JS Plugin for testing if an array has sorted values (strings, numbers, booleans). Very helpful when writing tests for features that implement Array.prototype.sort()

Install via npm:

Use this plugin just like other Chai plugins:

var chai = require("chai"),
    expect = chai.expect; // preference and tested with expect

chai.use(require("chai-sorted"));

There is no planned support for keeping a browser build in this repository, so please consider Webpack or similar tool.

If you do want Browser installation support, please open an issue.

Test for ascending sort order of array

expect(["a","b"]).to.be.sorted()
// or
expect(["a","b"]).to.be.sorted({descending: false}) 

Test for descending sort order of array

expect(["b","apples"]).to.be.sorted({descending: true})

Allows for sorting by an attribute

Test for ascending sort order of array by name attribute

expect([{id:2,name:"apple"},{id:3,name:"bat"}]).to.be.sortedBy("name")

Test for descending sort order of array by name attribute

expect([{id:2,name:"bat"},{id:3,name:"apples"}]).to.be.sortedBy("name", {descending: true})

Test for descending sort order of array using a function to access the name attribute

expect([{id:2,name:"bat"},{id:3,name:"apples"}]).to.be.sortedBy((item) => item.name, {descending: true})

Alternate of sortedBy but more explicit

Test for ascending sort order of array by name attribute

expect([{id:2,name:"apple"},{id:3,name:"bat"}]).to.be.ascendingBy("name")

Test for ascending sort order of array using a function to access the name attribute

expect([{id:2,name:"apple"},{id:3,name:"bat"}]).to.be.ascendingBy((item) => item.name)

Alternate of sortedBy but does not require passing true as a second parameter to sortedBy. It is the same as doing sortBy("name",true)

Test for descending sort order of array by name attribute

expect([{id:2,name:"bat"},{id:3,name:"apples"}]).to.be.descendingBy("name")

Test for descending sort order of array using a function to access the name attribute

expect([{id:2,name:"bat"},{id:3,name:"apples"}]).to.be.descendingBy((item) => item.name)

Test for ascending sort order of array using a property syntax

expect(["a","b"]).to.be.ascending

Test for descending sort order of array using a property syntax

expect(["b","apples"]).to.be.descending

For additional usage or more help, please see the tests under ./test/


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4