Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

chaimel

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

chaimel

Expose chai expect chains as camelCase instead of series.of.dots

  • 3.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
7
Maintainers
1
Weekly downloads
 
Created
Source

chaimel

chai.js expect BDD api wrapped with camelCase method names instead of dot.chaining.style.

Lets you do:

  • expect(error).toHaveProperty("message"); instead of
  • expect(error).to.have.property("message");

Usage

var expect = require("chaimel");
expect(42).notToBeAbove(43);

Why?

dot.chaining.style is problematic for me because:

  • It's out of convention with the standard JavaScript built-in method names
    • toLowerCase, indexOf, forEach, hasOwnProperty
  • It's awkward to speak and hear. Do you say the "dot"s or just imply them?
  • It doesn't work well with text editor autocomplete, whereas camelCase does
  • I also personally find this kind of use of Object.defineProperty unidiomatic for the golden age of JavaScript. It's fully standard and fine, but my opinion is it fundamentally makes the language more magical and ruby-like and these are drawbacks not advantages.
  • It was pretty quick and easy to create this module, so I did

Are all the chai.expect methods supported?

No, I left out abbreviations such as eql, lt gt because I hate abbreviations. Use the full words and use deepEqual instead of eql. Having both equal and eql with different semantics is error-prone, hard to remember, and confusing to read.

Browser Support

The code is designed to work in node.js or in the browser via browserify. If you want vanilla browser support, file and issue and I can add the neccessary boilerplate.

Contributing

  • tests: npm test
  • pull requests welcome

License

MIT

Keywords

FAQs

Package last updated on 29 Sep 2015

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc