Coder Social home page Coder Social logo

chainsafe / test-plans Goto Github PK

View Code? Open in Web Editor NEW

This project forked from libp2p/test-plans

0.0 1.0 0.0 694 KB

Testground testplans for libp2p

License: Other

Python 25.51% Go 54.88% Rust 2.94% PowerShell 5.05% Jupyter Notebook 9.16% Dockerfile 0.62% Jinja 1.85%

test-plans's Introduction

Testground test plans for libp2p

Made by Protocol Labs Go version

This repository contains Testground test plans for libp2p components.

How to add a new version to ping/go

When a new version of libp2p is released, we want to make it permanent in the ping/go test folder.

  1. In the ping/_compositions/go.toml file,
    • copy the [master] section and turn it into a [[groups]] item
    • update the [master] section with the future version
  2. In the ping/go folder,
    • Add a new compatibility shim in compat/ if needed, or add your new selector to the latest shim (see compat/libp2p.v0.17.go for example).
    • Create the new mod and sum files (go.v0.21.mod for example). Assuming you're updating from v$A to v$B, a simple way to do this is to:
      • cp go.v$A.mod go.v$B.mod; cp go.v$A.sum go.v$B.sum
      • ln -s go.v$B.mod go.mod; ln -s go.v$B.sum go.sum (you may also use this for local development, these files are ignored by git)
      • update the go-libp2p version, go version, and update the code if needed.
      • then go get -tags v$B && go mod tidy
  3. Run the test on your machine
    • Do once, from the test-plans root: import the test-plans with testground plan import --from ./ --name libp2p
    • Run the test with testground run composition -f ping/_compositions/go-cross-versions.toml --wait

How to add a new version to ping/rust

When a new version of libp2p is released, we want to make it permanent in the ping/rust test folder.

  1. In the ping/_compositions/rust.toml file,
    • Copy the latest [[groups]] section and update it's Id and CargoFeature name.
  2. In the ping/rust folder,
    • Cargo.toml: create the feature flags libp2pvxxx with the released version,
    • src/main.rs: Update the mod libp2p definition with the new version,
    • Run cargo update if needed. Try to build with cargo build --features libp2pvxxx
  3. Run the test on your machine
    • Do once, from the test-plans root: import the test-plans with testground plan import --from ./ --name libp2p
    • Run the test with testground run composition -f ping/_compositions/rust-cross-versions.toml --wait

License

Dual-licensed: MIT, Apache Software License v2, by way of the Permissive License Stack.

test-plans's People

Contributors

laurentsenta avatar noot avatar raulk avatar nonsense avatar mxinden avatar yusefnapora avatar elenaf9 avatar marten-seemann avatar libp2p-mgmt-read-write[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.