# Zombienet tests _The content of this directory is meant to be used by Parity's private CI/CD infrastructure with private tools. At the moment those tools are still early stage of development and we don't know if / when they will available for public use._ ## Contents of this directory `parachains` At the moment this directory only have one test related to parachains: `/parachains-smoke-test`, that check the parachain registration and the block height. ## Resources - [zombienet repo](https://github.com/paritytech/zombienet) - [zombienet book](https://paritytech.github.io/zombienet/) ## Running tests locally To run any test locally use the native provider (`zombienet test -p native ...`) you need first build the binaries. They are: - `adder-collator` -> `polkadot/target/testnet/adder-collator` - `malus` -> `polkadot/target/testnet/malus` - `polkadot` -> `polkadot/target/testnet/polkadot`, `polkadot/target/testnet/polkadot-prepare-worker`, `polkadot/target/testnet/polkadot-execute-worker` - `polkadot-collator` -> `cumulus/target/release/polkadot-parachain` - `undying-collator` -> `polkadot/target/testnet/undying-collator` To build them use: - `adder-collator` -> `cargo build --profile testnet -p test-parachain-adder-collator` - `undying-collator` -> `cargo build --profile testnet -p test-parachain-undying-collator` - `malus` -> `cargo build --profile testnet -p polkadot-test-malus` - `polkadot` (in the Polkadot repo) and `polkadot-collator` (in Cumulus repo) -> `cargo build --profile testnet` One solution is to use the `.set_env` file (from this directory) and fill the `CUSTOM_PATHS` before _source_ it to patch the PATH of your system to find the binaries you just built. E.g.: ``` $ cat .set_env (...) # by the order of this array CUSTOM_PATHS=( "~/polkadot/target/release" "~/polkadot/target/testnet" "~/cumulus/target/release" ) (...) source .set_env ``` Then you have your `PATH` customized and ready to run `zombienet`. **NOTE**: You should need to do this ones per terminal session, since we are patching the `PATH` and re-exporting. **Or** you can also `source` this file in your `.bashrc` file to get executed automatically in each new session. Example: You can run a test locally by executing: ```sh zombienet test -p native 0001-parachains-pvf.zndsl ``` ## Questions / permissions Ping in element Javier (`@javier:matrix.parity.io`) to ask questions or grant permission to run the test from your local setup.