pa11y-webservice-client-node

pa11y-webservice-client-node is a Node.js client library for pa11y-webservice

pa11y-webservice-client-node

pa11y-webservice-client-node is a Node.js client library for pa11y-webservice.

Current Version: 1.1.1
Build Status:
Node Version Support: 0.10

Install pa11y-webservice-client-node with npm:

$ npm install pa11y-webservice-client-node

For more information on the actual web-service endpoints and resource types, read the documentation.

var createClient = require('pa11y-webservice-client-node');
 
// Create client with the base URL of the web-service 
var client = createClient('http://localhost:3000/');
 
// Create a task 
client.tasks.create({
    name: 'Nature Home Page',
    url: 'nature.com',
    standard: 'WCAG2AA'
}, function (errtask) {
    // task  =  object representing the new task, or null if an error occurred 
});
 
// Get all tasks 
client.tasks.get({}, function (errtasks) {
    // tasks  =  array of objects representing tasks, or null if an error occurred 
});
 
// Get all tasks with last results included for each 
client.tasks.get({
    lastres: true
}, function (errtasks) {
    // tasks  =  array of objects representing tasks, or null if an error occurred 
});
 
// Get results for all tasks 
client.tasks.results({}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get results for all tasks within a date range 
client.tasks.results({
    from: '2013-01-01',
    to: '2013-01-31'
}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get results for all tasks with full details 
client.tasks.results({
    full: true
}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get a task by ID 
client.task('5231c687bbdf0f94fa000007').get({}, function (errtask) {
    // task  =  object representing the requested task, or null if an error occurred 
});
 
// Get a task by ID with last results included 
client.task('5231c687bbdf0f94fa000007').get({
    lastres: true
}, function (errtask) {
    // task  =  object representing the requested task, or null if an error occurred 
});
 
// Edit a task by ID 
client.task('5231c687bbdf0f94fa000007').edit({
    name: 'New name'
}, function (errtask) {
    // task  =  object representing the newly updated task, or null if an error occurred 
});
 
// Delete a task by ID 
client.task('5231c687bbdf0f94fa000007').remove(function (err) {
    // err  =  null if task was deleted, or an Error object if something went wrong 
});
 
// Run a task by ID 
client.task('5231c687bbdf0f94fa000007').run(function (err) {
    // err  =  null if task is running, or an Error object if something went wrong 
});
 
// Get results for a task 
client.task('5231c687bbdf0f94fa000007').results({}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get results for a task within a date range 
client.task('5231c687bbdf0f94fa000007').results({
    from: '2013-01-01',
    to: '2013-01-31'
}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get results for a task with full details 
client.task('5231c687bbdf0f94fa000007').results({
    full: true
}, function (errresults) {
    // results  =  array of objects representing results, or null if an error occurred 
});
 
// Get a result by ID 
client.task('5231c687bbdf0f94fa000007').result('523c0ee0ca452f0000000009').get({}, function (errresult) {
    // task  =  object representing the requested result, or null if an error occurred 
});
 
// Get a result by ID with full details 
client.task('5231c687bbdf0f94fa000007').result('523c0ee0ca452f0000000009').get({
    full: true
}, function (errresult) {
    // task  =  object representing the requested result, or null if an error occurred 
});

To develop pa11y-webservice-client-node, you'll need to clone the repo locally and run npm install. You'll also need Grunt to be installed globally in order to run tests, you can do this with npm install -g grunt-cli.

Now you'll be able to run the following commands:

$ grunt       # Run the lint and test tasks together 
$ grunt lint  # Run JSHint with the correct config 
$ grunt test  # Run unit tests 

Code with lint errors or failing tests will not be accepted, please use the build tools outlined above.

For users with push-access, don't commit to the master branch. Code should be in develop until it's ready to be released.

Copyright 2013 Nature Publishing Group.
pa11y-webservice is licensed under the GNU General Public License 3.0.