Skip to content

Commit

Permalink
Update README.md to include tags and endpoints required to run
Browse files Browse the repository at this point in the history
implementations against status list test suite.
  • Loading branch information
JSAssassin committed Dec 11, 2023
1 parent a136a0b commit c51fa07
Showing 1 changed file with 36 additions and 19 deletions.
55 changes: 36 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# VC API Test Suite Implementations _(vc-api-test-suite-implementations)_

[![Build status](https://img.shields.io/github/workflow/status/w3c-ccg/vc-api-test-suite-implementations/Node.js%20CI)](https://github.com/w3c-ccg/vc-api-test-suite-implementations/actions?query=workflow%3A%22Node.js+CI%22)
[![Coverage status](https://img.shields.io/codecov/c/github/w3c-ccg/vc-api-test-suite-implementations)](https://codecov.io/gh/w3c-ccg/vc-api-test-suite-implementations)
[![NPM Version](https://img.shields.io/npm/v/@digitalcredentials/vc-api-test-suite-implementations.svg)](https://npm.im/@digitalcredentials/vc-api-test-suite-implementations)

> Implementations list used across various W3C CCG test suites.
Expand All @@ -18,21 +16,23 @@
- [Usage](#usage)
- [Adding a new implementation](#adding-a-new-implementation)
- [Testing locally](#testing-locally)
- [Tags](#tags)
- [Opting into a Test Suite](#opting-into-a-test-suite)
- [Contribute](#contribute)
- [License](#license)

## Background

Implementations added to this package are tested against various test suites in order to demonstrate interoperability.
Implementations added to this package are tested against various test suites
in order to demonstrate interoperability.

## Security

Please do not commit any sensitive materials such as oauth2 client secret or client secrets used for signing zcaps or HTTP Signature Headers.
Please do not commit any sensitive materials such as oauth2 client secret or
client secrets used for signing zcaps or HTTP Signature Headers.

## Install

- Node.js 16+ is required.
- Node.js 18+ is required.

### NPM

Expand Down Expand Up @@ -91,12 +91,15 @@ following form:
}
```

Please note: implementations may have security using oauth2 or zcaps, but not both.
Implementations may also contain no security (do not add a OAUTH2 or ZCAP section in that case).
Please note: implementations may have security using oauth2 or zcaps, but not
both.
Implementations may also contain no security (do not add a OAUTH2 or ZCAP
section in that case).

#### Testing locally

If you need to add implementations for endpoints running locally you may add a config file in the root dir of your test project:
If you need to add implementations for endpoints running locally you may add a
config file in the root dir of your test project:

```
.vcApiTestImplementationsConfig.cjs
Expand All @@ -122,24 +125,38 @@ module.exports = [{
}];
```

### Tags
Tags tell the test suites which tests should be run on your issuer, verifier,
and status lists.
### Opting into a Test Suite

* `vc-api` - This tag will run the [vc-api-issuer tests](https://github.com/w3c-ccg/vc-api-issuer-test-suite) on your issuer and the [vc-api-verifier tests](https://github.com/w3c-ccg/vc-api-verifier-test-suite) on your verifier.
Tags determine which test suites are executed on your issuers and verifiers.

* `Ed25519Signature2020` - This tag will run the [Ed25519 tests](https://github.com/w3c/vc-di-ed25519signature2020-test-suite) on your issuer and/or verifier.
* `vc-api` - This tag will run the [vc-api-issuer tests](https://github.com/w3c-ccg/vc-api-issuer-test-suite)
on your issuer and the [vc-api-verifier tests](https://github.com/w3c-ccg/vc-api-verifier-test-suite)
on your verifier.

* `StatusList2021` - This tag will run the [Status List 2021 tests](https://github.com/w3c-ccg/status-list-2021-test-suite) on your issuer and/or verifier.
* `Ed25519Signature2020` - This tag will run the [Ed25519 tests](https://github.com/w3c/vc-di-ed25519signature2020-test-suite) on your issuer and/or verifier.

* `did-key` - This tag will run the [DID Key Test Suite](https://github.com/w3c-ccg/did-key-test-suite) on your DID resolver endpoint.
* `StatusList2021` and `Revocation`/`Suspension`- Combining the `StatusList2021`
tag with `Revocation` or `Suspension` tags will run the
[Status List 2021 tests](https://github.com/w3c-ccg/status-list-2021-test-suite)
on your issuer and/or verifier.
* Adding the `Revocation` tag alongside `StatusList2021` runs tests for
issuers or verifiers issuing/verifying VCs with the revocation status purpose.
* Adding the `Suspension` tag alongside `StatusList2021` runs tests for
issuers or verifiers issuing/verifying VCs with the suspension status purpose.
* Additional endpoints `setStatusLists` - `/credentials/status` and
`publishStatusLists` - `/credentials/publish` also may need to be specified
to update the status of VCs and publish the updated status.

* `did-key` - This tag will run the [DID Key Test Suite](https://github.com/w3c-ccg/did-key-test-suite)
on your DID resolver endpoint.

* `ecdsa-rdfc-2019` or `ecdsa-sd-2023` - These tags will run the
[VC Data Integrity ECDSA Test Suite](https://github.com/w3c/vc-di-ecdsa-test-suite)
on your issuer and verifier endpoints.
* Alongside this cryptosuite tag, you must also specify the `supportedEcdsaKeyTypes`
key parallel to `tags` listing the ECDSA key types that your implementation issues or
can verify. Currently, the test suite supports `P-256` and `P-384` ECDSA key types.
* Alongside this cryptosuite tag, you must also specify the
`supportedEcdsaKeyTypes` key parallel to `tags` listing the ECDSA key types
that your implementation issues or can verify. Currently, the test suite
supports `P-256` and `P-384` ECDSA key types.

* `eddsa-rdfc-2022` - This tag will run the [VC Data Integrity EDDSA Test Suite](https://github.com/w3c/vc-di-eddsa-test-suite) on your issuer and verifier endpoints.

Expand Down

0 comments on commit c51fa07

Please sign in to comment.