Skip to content

Commit

Permalink
Merge pull request #1403 from CosmWasm/testing-contract
Browse files Browse the repository at this point in the history
Create a testing contract for easier "full stack" testing
  • Loading branch information
webmaster128 authored Aug 29, 2022
2 parents cb862b4 + 09e70f0 commit 152721c
Show file tree
Hide file tree
Showing 19 changed files with 2,489 additions and 184 deletions.
58 changes: 58 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ workflows:
- package_profiler
- contract_burner
- contract_crypto_verify
- contract_cyberpunk
- contract_hackatom
- contract_ibc_reflect
- contract_ibc_reflect_send
Expand Down Expand Up @@ -503,6 +504,56 @@ jobs:
- target/wasm32-unknown-unknown/release/deps
key: cargocache-v2-contract_crypto_verify-rust:1.59.0-{{ checksum "Cargo.lock" }}

contract_cyberpunk:
docker:
- image: rust:1.59.0
environment:
RUST_BACKTRACE: 1
working_directory: ~/cosmwasm/contracts/cyberpunk
steps:
- checkout:
path: ~/cosmwasm
- run:
name: Version information
command: rustc --version; cargo --version; rustup --version
- restore_cache:
keys:
- cargocache-v2-contract_cyberpunk-rust:1.59.0-{{ checksum "Cargo.lock" }}
- run:
name: Add wasm32 target
command: rustup target add wasm32-unknown-unknown && rustup target list --installed
- run:
name: Build wasm binary
command: cargo wasm --locked
- run:
name: Unit tests
command: cargo unit-test --locked
- run:
name: Integration tests (singlepass backend)
command: cargo integration-test --locked --no-default-features
- run:
name: Build and run schema generator
command: cargo schema --locked
- run:
name: Ensure schemas are up-to-date
command: |
CHANGES_IN_REPO=$(git status --porcelain)
if [[ -n "$CHANGES_IN_REPO" ]]; then
echo "Repository is dirty. Showing 'git status' and 'git --no-pager diff' for debugging now:"
git status && git --no-pager diff
exit 1
fi
- save_cache:
paths:
- /usr/local/cargo/registry
- target/debug/.fingerprint
- target/debug/build
- target/debug/deps
- target/wasm32-unknown-unknown/release/.fingerprint
- target/wasm32-unknown-unknown/release/build
- target/wasm32-unknown-unknown/release/deps
key: cargocache-v2-contract_cyberpunk-rust:1.59.0-{{ checksum "Cargo.lock" }}

contract_hackatom:
docker:
- image: rust:1.59.0
Expand Down Expand Up @@ -1039,6 +1090,13 @@ jobs:
mkdir -p target/wasm32-unknown-unknown/release
touch target/wasm32-unknown-unknown/release/crypto_verify.wasm
cargo clippy --all-targets -- -D warnings
- run:
name: Clippy linting on cyberpunk
working_directory: ~/project/contracts/cyberpunk
command: |
mkdir -p target/wasm32-unknown-unknown/release
touch target/wasm32-unknown-unknown/release/cyberpunk.wasm
cargo clippy --all-targets -- -D warnings
- run:
name: Clippy linting on hackatom
working_directory: ~/project/contracts/hackatom
Expand Down
42 changes: 0 additions & 42 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions contracts/cyberpunk/.cargo/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[alias]
wasm = "build --release --target wasm32-unknown-unknown"
wasm-debug = "build --target wasm32-unknown-unknown"
unit-test = "test --lib"
integration-test = "test --test integration"
schema = "run --example schema"
Loading

0 comments on commit 152721c

Please sign in to comment.