Skip to content
The official test suite for the Decentralized Identifiers 1.0 specification
HTML JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
implementations Initial commit. May 8, 2019
.gitignore Add gitignore. May 8, 2019
LICENSE Initial commit. May 8, 2019 Update README instructions for creating config.json. May 8, 2019
config.json.example Initial commit. May 8, 2019
w3c.json Initial commit. May 8, 2019

W3C Decentralized Identifiers Working Group Test Suite

This repository contains the W3C Credentials Community Group test suite. Any conforming implementation MUST pass all tests in the test suite.

There are multiple test suites, each of which is detailed below.

Decentralized Identifiers 1.0 Test Suite

This test suite will check any application that generates Decentralized Identifiers documents to ensure conformance with the specification.

Creating a Binary

You web application will need to be accessible from the command line. It will also need to accept the following command line parameters:

Usage: <your_program> [options] [command]

  -?, --question                         //TODO add commands
  -h, --help                             output usage information

  validate? // TODO commands

All tests will run against your binary and assume that an exit code greater than 0 represents an error.

Creating a config file

An example local configuration for the test suite. To use:

  1. Copy the file config.json.example to a new file called config.json.
  2. Modify the file and replace with appropriate values for your system.
  "generator": "../your-application/bin",

Running the Test Suite

  1. npm install
  2. Copy the config.json.example file to config.json and modify.
  3. All that is needed is a path to the binary that runs the tests
  4. npm test

Submit an Implementation Report

  1. npm install
  2. Copy the config.json.example file to config.json and modify.
  3. npm run report
  4. Rename implementation/results.json to implementation/YOUR_IMPLEMENTATION-results.json.
  5. git add implementations/YOUR_IMPLEMENTATION-results.json and submit a pull request for your implementation.


You may contribute to this test suite by submitting pull requests here:

You can’t perform that action at this time.