Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    karma-osx-reporterpublic

    karma-osx-reporter

    Reporter using Mac OS 10.8+ Notification Center to display results.

    image

    Built on top of node-osx-notifier and based on AvnerCohen's code.

    Works with Karma 0.9 or later.

    For more information on Karma see the homepage.

    Installation

    1. Install Karma and karma-osx-reporter plugin.

    a. Globally. System-wide with karma available on command line.

    ```sh
    npm install -g karma
    npm install -g karma-osx-reporter
    ```
    

    b. Locally to your project (preferred). Simply run:

    ```sh
    npm install karma --save-dev
    npm install karma-osx-reporter --save-dev
    ```
    
    or add the dependencies to `package.json` manually and run `npm install`:
    
    ```js
    "devDependencies": {
      "karma": ">=0.9",
      "karma-osx-reporter": "*"
    }
    ```
    
    If you install locally, you'll need to run Karma using `node_modules/karma/bin/karma`.
    

    In any case, the plugin needs to be installed as a peer dependency to Karma (i.e. in the sibling folder). This just means you cannot use global Karma with local plugins or vice-versa.

    1. Add it as a reporter in the config file
    reporters: ['progress', 'osx']

    or pass through the command line

    $ karma start --reporters=progress,osx karma.conf.js

    Configuration

    Host and Port

    OSX Notifier runs on localhost:1337 by default. If you need to change that, simply override it in the Karma config file.

    config.set({
      osxReporter: {
        host: "localhost",
        port: 1337
      }
    });

    Notification Mode

    • always - always show a notification
    • change - show a notification when the current result is different than the last
    • failOnly - show a notification if the result is fail
    • failChange - show a notification when the result is fail or first success after fail
    config.set({
      osxReporter: {
        notificationMode: 'always'
      }
    })

    Additional Options

    Any additional parameter will be passed to node-osx-notifier. Check the documentation for details. Some examples:

    config.set({
      osxReporter: {
        activate: 'com.apple.Terminal',
        open: 'http://google.com',
        execute: 'open .'
      }
    });

    To decide dynamically what to pass into these options, define them as functions:

    config.set({
      osxReporter: {
        activate: function(results, browser) {
          return results.failed > 0 ? 'com.apple.Terminal' : 'com.apple.Safari';
        }
      }
    });

    License

    MIT License

    install

    npm i karma-osx-reporter

    Downloadsweekly downloads

    1,716

    version

    0.2.1

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar