0.2.0 • Published 8 years ago

rts-server v0.2.0

Weekly downloads
5
License
GPL-3.0
Repository
github
Last release
8 years ago

Remote Test System Server

Build Status NPM version Dependencies Status Gitter

Testing system for remote step-by-step test execution.

Getting Started

Node.js and NPM should be installed beforehand. Please follow the official instruction.

RTS Server is available as an npm package and should be installed globally:

npm install -g rts-server

In Linux this can be done as a root:

sudo npm install -g rts-server

Then to start a server with default options:

rts-server

Usage

General way of usage:

rts-server [options]

Full list of available options can be provided by the rts-server application:

rts-server --help

To run RTS Server with the specific configuration:

rts-server --config ./config.js

API methods and notification events are in api.md file.

Config file options

NameDescription
debugenable verbose debug mode
testrun tests and exit
portHTTP port serving clients requests
dataLimitdefault amount of returned records in lists of users, targets etc.
dataLimitMaxmaximum amount of returned records in lists
databasedatabase connection options passed to node-orm2 package

Default config options are listed in the config.js.

DBMS Support

  • MySQL & MariaDB
  • PostgreSQL
  • Amazon Redshift (not tested)
  • SQLite

There are some config file examples for mysql, postgres, sqlite in memory and other options.

Error codes

ValueMessageDescription
-32700Parse errorInvalid JSON was received by the server. An error occurred on the server while parsing the JSON text.
-32600Invalid RequestThe JSON sent is not a valid Request object.
-32601Method not foundThe method does not exist / is not available.
-32602Invalid paramsInvalid method parameter(s).
-32001Not foundRequested data was not found.
-32002Search failureData search failure.
-32003Save failureData was not saved.
-32004Client onlyThe method is available only for client connections.
-32005Target onlyThe method is available only for target connections.
-32006Not authorizedThe method is available only for authorized client connections.

Development

Install global dependencies:

sudo npm install -g node-dev

Get the latest version of source files:

git clone git@github.com:stbrnd/rts-server.git
cd rts-server

Then install local dependencies:

npm install

If necessary install rts-server as global npm package:

sudo npm link

Now you can start it with default config:

npm start
# or
rts-server
# or
node ./bin/cli.js
# or
node-dev ./bin/cli.js

To see sub-system log details:

DEBUG=* node ./bin/cli.js --debug
# or with specific config file
DEBUG=* node-dev ./bin/cli.js --config ./config.js --debug

Testing

It's possible to run tests locally:

npm test
# or full command
rts-server --config ./tests/configs/sqlite.json --test
# or the same
node ./bin/cli.js --config ./tests/configs/sqlite.json --test
# with debug info
node ./bin/cli.js --config ./tests/configs/sqlite.json --test --debug
# with all available debug info
DEBUG=* node ./bin/cli.js --config ./tests/configs/sqlite.json --test --debug

Tests are also run on Travis CI for node versions 0.12.x and 4.1.

Contribution

If you have any problem or suggestion please open an issue here. Pull requests are welcomed with respect to the JavaScript Code Style.

License

rts-server is released under the GPL-3.0 License.