New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

dalek-pluginize

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dalek-pluginize

Returns a wrapped Dalek test object to extend with custom asserts and actions

latest
npmnpm
Version
1.0.1
Version published
Weekly downloads
2
-66.67%
Maintainers
1
Weekly downloads
 
Created
Source

dalek-pluginize

Build Status

Enables the creation of Dalek plugins for assertions and actions by wrapping the Dalek test object.

About

The current version of Dalek (<= 1.0.0) does not support the creation of assertion or action plugins to extend the functionality that comes with the library. This shortcoming is already being addressed as part of the DalekJS API proposal for new upcoming version.

The purpose of this library is to temporarily fill in this gap until the new version of Dalek is installed to allow the writing of cleaner and chainable Dalek test code today.

Install

With npm do:

npm install dalek-pluginize --save

Usage

Registering an action/assertion:

var dalekPluginize = require('dalek-pluginize');

dalekPluginize.addAction('showDialog', function(){
  return this.click('.dialog');
});

// Namespace plugins similar to `.assert`
dalekPluginize.addAction('ns', 'open', function(path){
  return this.open('http://localhost:9000/' + path);
});

// Bulk register custom actions
dalekPluginize.addActions({
  showDialog: function() { },
  ...
});

Consuming custom actions/assertions:

var ex = require('dalek-pluginize').extend;

module.exports = {
  'My Dalek test': function(test) {
    ex(test)
      .ns.open('test/index.html')
      .showDialog()
      .assert.visible('.dialog')
      .done();
  }
}

API

.addAction([namespace], pluginName, fn)

Adds a new custom action plugin

  • namespace (optional) namespace for custom action plugin to reside inside
  • pluginName name of the new custom action plugin
  • fn the function to execute. Uses current Dalek test object as its scope

.addActions([namespace], config)

Bulk adds new action plugins

  • namespace (optional) namespace for custom plugin to reside inside
  • config an object with key value pairs mapping to plugin name and function callback

.addAssertion([namespace], pluginName, fn)

Adds a new custom assertion plugin

  • namespace (optional) namespace for custom assertion plugin to reside inside
  • pluginName name of the new custom assertion plugin
  • fn the function to execute. Uses current Dalek test object as its scope

.addAssertions([namespace], config)

Bulk adds new assertion plugins

  • namespace (optional) namespace for custom plugin to reside inside
  • config an object with key value pairs mapping to plugin name and function callback

.extend(test)

Extends a Dalek test object with all registered custom action and assertion plugins

  • test Dalek test object to wrap with registered custom plugins

License

Copyright (c) 2014 Hady Osman Licensed under the MIT license.

Keywords

dalek

FAQs

Package last updated on 26 Feb 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