Skip to content

Latest commit

 

History

History
59 lines (41 loc) · 1.56 KB

CONTRIBUTING.md

File metadata and controls

59 lines (41 loc) · 1.56 KB

##Contributing

Prerequisites

Install Node.js and npm. On OSX with Homebrew installed it is as easy as:

brew install node

Install dependencies:

npm install

Running tests

Run tests once and exit:

npm test

Continuous mode. Whenever any source or test file changes, tests will run automatically:

karma start

Chrome starts automatically and stops on Ctrl+C. You can also open http://localhost:9876/ in any other browser and it will run the tests as long as the tab is open.

Adding a test

Jasmine is the testing framework used by Awesomplete.

To write a test (or suite of tests) start by adding a describe function which receives a string describing what is being tested and a function containing what you expect the test to do. Inside the function use the it block to arrange and assert a functionality.

A test would look like this:

describe("A fact", function(){
    it("is always true",function(){
        var fact = true;
        expect(fact).toBe(true);
    });
});

See existing tests in test directory as an example. More expectations and examples on how to use Jasmine can be found on the official documentation.

Build

Run the build with the following command:

gulp

The build will:

  1. Minify awesomplete.js and generate awesomplete.min.js.
  2. Merge awesomplete.base.css and awesomplete.theme.css and generate awesomplete.css.