Home

Awesome

Protobuf Conformance Tests

A repository which runs the protocol buffers conformance test suite against various implementations.

Implementations

The current implementations being tested are:

<!-- LIST-START --> <!-- LIST-END -->

Results

<!-- TABLE-START -->
ImplementationJavaScript and<br>TypeScriptStandard<br>PluginEditionsRequired testsRecommended tests
Protobuf-ES:heavy_check_mark::heavy_check_mark::heavy_check_mark:<sub><img src=".github/genimg/Protobuf-ES-required.svg" height="25" width="125" /></sub><br><sup>(0 failures)<sub><sub><img src=".github/genimg/Protobuf-ES-recommended.svg" height="25" width="125" /></sub><br><sup>(0 failures)<sub>
protobuf-ts:heavy_check_mark::heavy_check_mark::x:<sub><img src=".github/genimg/protobuf-ts-required.svg" height="25" width="125" /></sub><br><sup>(2 failures)<sub><sub><img src=".github/genimg/protobuf-ts-recommended.svg" height="25" width="125" /></sub><br><sup>(1 failures)<sub>
google-protobuf:x::heavy_check_mark::x:<sub><img src=".github/genimg/google-protobuf-required.svg" height="25" width="125" /></sub><br><sup>(574 failures)<sub><sub><img src=".github/genimg/google-protobuf-recommended.svg" height="25" width="125" /></sub><br><sup>(304 failures)<sub>
ts-proto:x::heavy_check_mark::x:<sub><img src=".github/genimg/ts-proto-required.svg" height="25" width="125" /></sub><br><sup>(660 failures)<sub><sub><img src=".github/genimg/ts-proto-recommended.svg" height="25" width="125" /></sub><br><sup>(611 failures)<sub>
protoscript:heavy_check_mark::heavy_check_mark::x:<sub><img src=".github/genimg/protoscript-required.svg" height="25" width="125" /></sub><br><sup>(1086 failures)<sub><sub><img src=".github/genimg/protoscript-recommended.svg" height="25" width="125" /></sub><br><sup>(533 failures)<sub>
protobuf.js:heavy_check_mark::x::x:<sub><img src=".github/genimg/protobuf.js-required.svg" height="25" width="125" /></sub><br><sup>(1287 failures)<sub><sub><img src=".github/genimg/protobuf.js-recommended.svg" height="25" width="125" /></sub><br><sup>(419 failures)<sub>
protoc-gen-ts:x::heavy_check_mark::x:<sub><img src=".github/genimg/protoc-gen-ts-required.svg" height="25" width="125" /></sub><br><sup>(1598 failures)<sub><sub><img src=".github/genimg/protoc-gen-ts-recommended.svg" height="25" width="125" /></sub><br><sup>(470 failures)<sub>
<!-- TABLE-END -->

Since Editions are relatively new, only implementations that advertise support are tested with Editions.

Note: None of the libraries tested implement the text format, so the results for those test runs are not shown.

Running the tests

To run the conformance tests, run npm test from the repo root.

Note that only Linux and OSX operating systems are supported.