Skip to content

Commit

Permalink
feat: development book
Browse files Browse the repository at this point in the history
  • Loading branch information
refcell committed Jul 24, 2024
1 parent 0891154 commit f754750
Show file tree
Hide file tree
Showing 9 changed files with 80 additions and 0 deletions.
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,8 @@
# MacOS dust
.DS_Store

# Rust target
**/target

# Environment Variables
.env
14 changes: 14 additions & 0 deletions book/book.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[book]
authors = ["refcell"]
language = "en"
multilingual = false
src = "book/src"
title = "OP Test Vectors"

[preprocessor.mermaid]
command = "mdbook-mermaid"

[preprocessor.template]

[output.html]
additional-js = ["mermaid.min.js", "mermaid-init.js"]
7 changes: 7 additions & 0 deletions book/src/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Summary

- [Introduction](./intro.md)
- [Test Fixture Format](./format.md)
- [Test Runners](./runners.md)
- [Generating a Test Fixture](./generation.md)
- [Contributing](./contributing.md)
Empty file added book/src/contributing.md
Empty file.
Empty file added book/src/format.md
Empty file.
Empty file added book/src/generation.md
Empty file.
33 changes: 33 additions & 0 deletions book/src/intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# OP Test Vectors Book

_Documentation for op test vectors._

## Introduction

OP Test Vectors is a collection of test fixtures for testing OP Stack execution and derivation.
Alongside test fixtures, the op-test-fixtures repository contains a CLI tool for generating new
test fixtures written in Rust with the goal of making test fixture generation simple.

It is built and maintained by members of [OP Labs][op-labs] as well as open source contributors,
and is licensed under the MIT License.

OP Test Vectors is comparible to the [ethereum-tests][ethereum-tests] repository for ethereum.
The aim of [op-test-vectors][op-test-vectors] is then to provide a set of standard tests for all
OP Stack client and node software to use for testing. In order to run these test fixtures against
various execution and derivation implementations, each instance must implement their own test runner.
For example, similar to how [revm][revm] defines a test runner, [revme][revme], to run the
[ethereum-tests][ethereum-tests] against its ethereum execution implementation.

In this book, we will break down the format of test fixtures, how to approach generating new test
fixtures, and how to implement custom runners. Much of this book is specific to Rust, but is
intentionally portable to other languages over the JSON interface.

## Development Status

**OP Test Vectors is currently in active development, and is not yet ready for use in production.**

## Contributing

Contributors are welcome! Please see the [contributing guide][contributing] for more information.

{{#include ./links.md}}
19 changes: 19 additions & 0 deletions book/src/links.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!-- External -->

[kona]: https://github.com/ethereum-optimism/kona
[op-stack]: https://github.com/ethereum-optimism/optimism
[ethereum-tests]: https://github.com/ethereum/tests
[revm]: https://github.com/bluealloy/revm
[revme]: https://github.com/bluealloy/revm/tree/main/bins/revme

<!-- Kona links -->

[op-test-vectors]: https://github.com/ethereum-optimism/op-test-vectors
[book]: https://ethereum-optimism.github.io/op-test-vectors/
[issues]: https://github.com/ethereum-optimism/op-test-vectors/issues
[new-issue]: https://github.com/ethereum-optimism/op-test-vectors/issues/new
[contributing]: https://github.com/ethereum-optimism/op-test-vectors/tree/main/CONTRIBUTING.md

<!-- People -->

[op-labs]: https://github.com/ethereum-optimism
Empty file added book/src/runners.md
Empty file.

0 comments on commit f754750

Please sign in to comment.