virtuintaskdispatcher

0.0.24 • Public • Published

Virtuin Logo Virtuin Test Dispatcher

Overview

Virtuin Test Dispatcher is used to start, stop, and monitor collection of tests running inside a Docker Compose environment.

Build

yarn run prepublish

Installation

For local install:

yarn add @samtec-ash/virtuintestdispatcher

For global install:

yarn global add @samtec-ash/virtuintestdispatcher --prefix /usr/local

Usage

Events

  • collection-log - General log info of collection (string)
  • collection-stdout - Std out from collection processes (string)
  • collection-stderr - Std error from collection processes (string)
  • test-status - Status object (Error, TestStatus)
  • test-log - General log info of active test (string)
  • test-stdout - Std out from collection process (string)
  • test-stderr - Std error from test process (string)
  • error - General runtime errors (Error)

As CLI

Based on the supplied collection definitions, the following will spin up the docker compose environment and run all tests defined in the sequence.

virtuintestdispatcher --verbose=0 /path/to/collection.json

As Package

import {
  VirtuinTestDispatcher
} from '@samtec-hub/virtuintestdispatcher';

const collection = {
	collectionName: 'collectionName',
	collectionTag: '10.0.0'
};
const testConfig = {
	dut: {},
	station: {},
	test: {}
};

const dispatcherStatusUpdate = (err, status) => {
	if (err) {
		console.log(`Status error ${err.message}`);
	} else if (status) {
		console.log(status);
	}
}

dispatcher = new VirtuinTestDispatcher(
  'DebugStation',
  'localhost',
  verbosity=2
);

dispatcher.on('collection-log', (msg) => {
	console.log(`collection-log: ${msg}`);
});
dispatcher.on('test-log', (msg) => {
	console.log(`test-log: ${msg}`);
});
dispatcher.on('test-status', dispatcherStatusUpdate);

await dispatcher.autologin('docker-user', 'docker-pass');
const response = await dispatcher.up(collection);
if (response.success) {
	await dispatcher.startTest(testConfig);
}

API

The autogenerated API can be accessed in following mediums:

Publishing

New versions are published to npmjs.com. BitBucket Pipelines is used to build, test, stage, & deploy. Refer to the pipeline configuration.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Adam Page

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Readme

Keywords

Package Sidebar

Install

npm i virtuintaskdispatcher

Weekly Downloads

2

Version

0.0.24

License

MIT

Unpacked Size

254 kB

Total Files

18

Last publish

Collaborators

  • virtchris