Skip to content

digital-substrate/dsviper-node-tests

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dsviper-node-tests

Public test suite for the @digitalsubstrate/dsviper npm package — the Node.js binding over the Viper C++ runtime. The Node twin of dsviper-tests (the Python wheel's suite).

This repository serves two purposes:

  1. Regression net / release gate. Run as a CI check against the @digitalsubstrate/dsviper package to catch behavioural regressions in the Node binding. A red cell blocks the npm publish.
  2. Reference material. Every public @digitalsubstrate/dsviper API surface is exercised here. The unit/ directory is the canonical place to read working examples — useful for human contributors and autonomous agents alike.

Prerequisites

Node 18+ and the @digitalsubstrate/dsviper package:

npm install @digitalsubstrate/dsviper

The suite uses the built-in node:test runner — no test-framework dependency.

Running the tests

From the repository root:

./run_test.sh            # macOS / Linux
run_test.bat             # Windows

These both wrap node --test (auto-discovers unit/*.test.mjs). To run a single file:

node --test unit/test_value_double.test.mjs

Layout

unit/                       # node:test modules covering the package API
run_test.sh, run_test.bat   # convenience launchers

Versioning

This suite tracks the Viper 1.2.x line of @digitalsubstrate/dsviper. The canonical branch is LTS-1.2, pinned to the 1.2.x package releases; main is a mirror of it. Future major lines may live on dedicated branches.

License

This project is licensed under the MIT License — see LICENSE.

Runtime dependency

At runtime, this project depends on the @digitalsubstrate/dsviper npm package, which is proprietary (the Viper runtime is under the Digital Substrate Commercial License). See the package on npm for its licensing posture and contact information.

Releases

No releases published

Packages

 
 
 

Contributors