diff --git a/.circleci/osx_install_dependencies.sh b/.circleci/osx_install_dependencies.sh index 1cc16a9c9..64a83f56b 100755 --- a/.circleci/osx_install_dependencies.sh +++ b/.circleci/osx_install_dependencies.sh @@ -55,5 +55,9 @@ then wget https://github.com/ethereum/evmone/releases/download/v0.4.0/evmone-0.4.0-darwin-x86_64.tar.gz tar xzpf evmone-0.4.0-darwin-x86_64.tar.gz -C /usr/local rm -f evmone-0.4.0-darwin-x86_64.tar.gz -fi + # hera + wget https://github.com/ewasm/hera/releases/download/v0.3.0/hera-0.3.0-darwin-x86_64.tar.gz + tar xzpf hera-0.3.0-darwin-x86_64.tar.gz -C /usr/local + rm -f hera-0.3.0-darwin-x86_64.tar.gz +fi diff --git a/.circleci/soltest_all.sh b/.circleci/soltest_all.sh index 78cc1137d..02b675aa1 100755 --- a/.circleci/soltest_all.sh +++ b/.circleci/soltest_all.sh @@ -69,7 +69,11 @@ for OPTIMIZE in ${OPTIMIZE_VALUES[@]} do for EVM in ${EVM_VALUES[@]} do - [[ " $RUN_STEPS " =~ " $STEP " ]] && EVM="$EVM" OPTIMIZE="$OPTIMIZE" BOOST_TEST_ARGS="-t !@nooptions" "${REPODIR}/.circleci/soltest.sh" + # run tests against hera ewasm evmc vm, only if OPTIMIZE == 0 and evm version is byzantium + EWASM_ARGS="" + [ "${EVM}" = "byzantium" ] && [ "${OPTIMIZE}" = "0" ] && EWASM_ARGS="--ewasm" + + [[ " $RUN_STEPS " =~ " $STEP " ]] && EVM="$EVM" OPTIMIZE="$OPTIMIZE" SOLTEST_FLAGS="$SOLTEST_FLAGS $EWASM_ARGS" BOOST_TEST_ARGS="-t !@nooptions" "${REPODIR}/.circleci/soltest.sh" STEP=$(($STEP + 1)) done done diff --git a/scripts/tests.sh b/scripts/tests.sh index 00b4a1641..8bb08d963 100755 --- a/scripts/tests.sh +++ b/scripts/tests.sh @@ -115,8 +115,11 @@ do fi fi + EWASM_ARGS="" + [ "${vm}" = "byzantium" ] && [ "${optimize}" = "" ] && EWASM_ARGS="--ewasm" + set +e - "${SOLIDITY_BUILD_DIR}"/test/soltest --show-progress $log -- --testpath "$REPO_ROOT"/test "$optimize" --evm-version "$vm" $SMT_FLAGS $force_abiv2_flag + "${SOLIDITY_BUILD_DIR}"/test/soltest --show-progress $log -- ${EWASM_ARGS} --testpath "$REPO_ROOT"/test "$optimize" --evm-version "$vm" $SMT_FLAGS $force_abiv2_flag if test "0" -ne "$?"; then exit 1