Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Native tests. #28449

Open
wants to merge 95 commits into
base: symbols-tframework
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
d0b38c5
new version notification
ungaro Sep 10, 2024
85a61ea
formatting updates
ungaro Sep 11, 2024
30f936e
handle edge case
ungaro Sep 11, 2024
836da49
satisfy clippy warnings
ungaro Sep 11, 2024
27630b8
Merge remote-tracking branch 'ungaro/alp/new-version-notification' in…
d0cd Nov 8, 2024
bc848ef
Address comments in review
d0cd Nov 8, 2024
b87a79d
Introduce StaticAnalyzer pass; move future await checking to this pass
d0cd Nov 14, 2024
1379843
Add check for futures awaited out of order
d0cd Nov 14, 2024
5501a40
Cleanup
d0cd Nov 14, 2024
d3b0780
Add check for complex async call
d0cd Nov 14, 2024
f27d157
Fix and regen some expectations
d0cd Nov 14, 2024
87072d7
Fix and pass tests
d0cd Nov 14, 2024
ec67f3d
Regen expectations
d0cd Nov 15, 2024
166a3c3
Merge pull request #28440 from ProvableHQ/feat/cli-new-version-notifi…
d0cd Nov 15, 2024
bcdb1f5
Merge pull request #28443 from ProvableHQ/feat/analyzers
d0cd Nov 18, 2024
77d646c
Add scaffolding for leo test
d0cd Nov 18, 2024
7c4f9bd
Add dev dependencies to CLI and Manifest
d0cd Nov 19, 2024
53abcdc
Add build_tests flag to compiler options
d0cd Nov 19, 2024
7a19c83
WIP
d0cd Nov 19, 2024
b101f55
Fix codecov CI
d0cd Nov 19, 2024
2bf7bfa
Update leo-executable CI
d0cd Nov 19, 2024
82585fa
Update examples CI script
d0cd Nov 19, 2024
216b52a
Update examples
d0cd Nov 19, 2024
c532c01
Attempt to sanitize mtimes
d0cd Nov 19, 2024
16b882b
Minor tweaks
d0cd Nov 19, 2024
2d15fb5
Fix usage of cargo-mtime
d0cd Nov 19, 2024
4323c1e
Fix
d0cd Nov 19, 2024
53319d9
Make watched files in build script more granular
d0cd Nov 19, 2024
b16d9ac
More granularity on tracked changes
d0cd Nov 19, 2024
8d31693
Merge pull request #28450 from ProvableHQ/fix/ci
d0cd Nov 19, 2024
cc12117
chore(leo): bump version for new release
d0cd Nov 20, 2024
67e5b0e
Fix Rust checkout for Linux musl
d0cd Nov 20, 2024
8de9b3a
Merge pull request #28451 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
a6aa391
Fix again
d0cd Nov 20, 2024
ed61457
Merge pull request #28452 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
af6f0df
Attempt another fix
d0cd Nov 20, 2024
af5666d
Merge pull request #28453 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
602d499
Set toolchain
d0cd Nov 20, 2024
d4d5319
Merge pull request #28454 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
9a66abf
Another fix attempt
d0cd Nov 20, 2024
808ad5f
Merge pull request #28455 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
0c8f304
Update
d0cd Nov 20, 2024
055e426
Merge pull request #28456 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
ceb39d5
Use stable instead of x86_64
d0cd Nov 20, 2024
8a8f565
Merge pull request #28457 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
45f67ba
Add tag dispatch to CI
d0cd Nov 20, 2024
d4651d5
Merge pull request #28458 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
ad3bbe5
Checkout correctly and optionally select tag
d0cd Nov 20, 2024
23a8066
Merge pull request #28459 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
71c2b4f
Temporary fix for release
d0cd Nov 20, 2024
3906c9a
Merge pull request #28460 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
d477d51
Force tag
d0cd Nov 20, 2024
bac534f
Merge pull request #28461 from ProvableHQ/fix/release-ci-linux-musl
d0cd Nov 20, 2024
761c9b1
Change release CI so that it is explicitly triggered
d0cd Nov 20, 2024
c921524
MacOS M1
d0cd Nov 20, 2024
eb75b85
Fix
d0cd Nov 20, 2024
1b46db1
Fix
d0cd Nov 20, 2024
d9fe41a
Merge pull request #28462 from ProvableHQ/fix/revert-ci-changes-to-pa…
d0cd Nov 22, 2024
1ea1c7d
Add test to AST
d0cd Nov 23, 2024
dc60453
Add test visitors
d0cd Nov 23, 2024
520f1f8
Initialize tests directory on leo new
d0cd Nov 23, 2024
caa4366
Add parser for Tests
d0cd Nov 23, 2024
fec941a
Error on futures in arrays, structs, or mappings.
mikebenfield Nov 25, 2024
7ea23ca
WIP
d0cd Nov 26, 2024
17c8ad3
WIP
d0cd Nov 26, 2024
c6e49ad
Fix build pathway for tests
d0cd Nov 27, 2024
ff4e46f
Test flow up to loop unrolling working
d0cd Nov 27, 2024
0f406a5
Merge pull request #28466 from ProvableHQ/no-futures-in-structs
d0cd Nov 27, 2024
5564edc
chore: remove redundant words and fix some typos in comment
cuibuwei Dec 2, 2024
ae1d840
Update snarkVM rev
d0cd Dec 3, 2024
2813d5f
Merge pull request #28468 from ProvableHQ/update/snarkvm
d0cd Dec 3, 2024
b66eb4b
chore(leo): bump version for new release
d0cd Dec 3, 2024
00c54b0
Fix CI
d0cd Dec 3, 2024
2f49d3b
Merge pull request #28470 from ProvableHQ/fix/windows-ci
d0cd Dec 3, 2024
16d71a8
Select fee based on consensus height
d0cd Dec 9, 2024
fc882c1
Better defaults
d0cd Dec 9, 2024
8f0b836
Remove Test and use Program; tests are programs
d0cd Dec 9, 2024
1623a77
Delete temp, add to gitignore
d0cd Dec 9, 2024
3152050
Simplify default test definition, add dev dependencies to retriever
d0cd Dec 9, 2024
385d17f
Typecheck block.height.
mikebenfield Dec 11, 2024
76a6fbc
Merge pull request #28474 from ProvableHQ/height_type_check
d0cd Dec 16, 2024
a81b97d
Error for future parameters except on async functions.
mikebenfield Nov 26, 2024
9d52b65
always add Future arguments to symbol table
mikebenfield Dec 1, 2024
7b88c3e
Fix future consumption checking.
mikebenfield Dec 2, 2024
b90f958
Merge pull request #28467 from cuibuwei/mainnet
d0cd Dec 16, 2024
402a8e4
Merge pull request #28469 from ProvableHQ/fix-futures
d0cd Dec 16, 2024
582d3b1
Allow base_fee option in CLI
d0cd Dec 16, 2024
26234fd
Fix leo execution CLI
d0cd Dec 16, 2024
4f45f42
Debugger.
mikebenfield Oct 23, 2024
aa6a5f3
Merge pull request #28441 from ProvableHQ/interpreter
d0cd Dec 17, 2024
c7aac4c
Merge pull request #28473 from ProvableHQ/fix/executions-fees
d0cd Dec 17, 2024
26ce60d
chore(leo): bump version for new release
d0cd Dec 17, 2024
2cf9934
Merge branch 'mainnet' into feat/compile-tests
d0cd Dec 20, 2024
c80f748
Support annotation bodies
d0cd Jan 6, 2025
a43458e
Improve validation for test annotations
d0cd Jan 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 15 additions & 6 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,20 @@ commands:
- run:
name: Install Rust
command: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
rustup install 1.82.0
rustup override set 1.82.0
cargo --version --verbose
rustc --version
# If Rust is not installed on the machine, install it
if ! command -v rustc &> /dev/null; then
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
rustup install 1.82.0
rustup override set 1.82.0
cargo --version --verbose
rustc --version
fi
if [ ! -f "Cargo.lock" ]; then
cargo generate-lockfile
fi
cargo install cargo-mtime



install-rust-windows:
Expand All @@ -71,6 +76,7 @@ commands:
if (!(Test-Path "Cargo.lock" -PathType Leaf)) {
cargo generate-lockfile
}
cargo install cargo-mtime

build-and-test:
description: "Build and run tests"
Expand All @@ -79,12 +85,14 @@ commands:
name: Build
no_output_timeout: 30m
command: |
cargo-mtime . ~/.cache/mtimes/project.db
cargo test --no-run --all --locked --profile ci --features only_testnet
- run:
name: Run tests
no_output_timeout: 30m
# The `--verbose` flag is used to check which files are being recompiled. Ideally, this should be none.
command: |
cargo-mtime . ~/.cache/mtimes/project.db
cargo test --all --locked --profile ci --features only_testnet --verbose

install_rust_nightly:
Expand Down Expand Up @@ -144,6 +152,7 @@ jobs:
- cargo-v1-{{ arch }}-{{ checksum "Cargo.toml" }}-{{ checksum "Cargo.lock" }}
- cargo-v1-{{ arch }}-{{ checksum "Cargo.toml" }}
- cargo-v1-{{ arch }}
- install-rust
- run:
name: Update Submodules
command: git submodule update --init --recursive
Expand Down
6 changes: 6 additions & 0 deletions .circleci/leo-example.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# Alias the leo command to use the local binary.
# Note: Use a full path for $LEO when running locally.
leo() {
$LEO "$@"
}

(
# Create a new Leo lottery example program.
$LEO example lottery || exit
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:
make install DESTDIR=../../kcov-build
cd ../..
rm -rf kcov-master
for file in target/debug/deps/*-*; do if [[ "$file" != *\.* ]]; then mkdir -p "target/cov/$(basename $file)"; ./kcov-build/usr/local/bin/kcov --exclude-pattern=/.cargo,/usr/lib --exclude-region='@kcov_skip(start):@kcov_skip(end)' --verify "target/cov/$(basename $file)" "$file"; fi done
for file in target/ci/deps/*-*; do if [[ "$file" != *\.* ]]; then mkdir -p "target/cov/$(basename $file)"; ./kcov-build/usr/local/bin/kcov --exclude-pattern=/.cargo,/usr/lib --exclude-region='@kcov_skip(start):@kcov_skip(end)' --verify "target/cov/$(basename $file)" "$file"; fi done

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
Expand Down
Loading
Loading