mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #10464 from ethereum/enable-shellcheck-for-external-test-scripts
Enable shellcheck for external test scripts
This commit is contained in:
@@ -42,10 +42,10 @@ source test/externalTests/common.sh
|
||||
|
||||
printTask "Running external tests..."
|
||||
|
||||
$REPO_ROOT/externalTests/zeppelin.sh "$SOLJSON"
|
||||
$REPO_ROOT/externalTests/gnosis.sh "$SOLJSON"
|
||||
$REPO_ROOT/externalTests/colony.sh "$SOLJSON"
|
||||
$REPO_ROOT/externalTests/ens.sh "$SOLJSON"
|
||||
"$REPO_ROOT/externalTests/zeppelin.sh" "$SOLJSON"
|
||||
"$REPO_ROOT/externalTests/gnosis.sh" "$SOLJSON"
|
||||
"$REPO_ROOT/externalTests/colony.sh" "$SOLJSON"
|
||||
"$REPO_ROOT/externalTests/ens.sh" "$SOLJSON"
|
||||
|
||||
# Disabled temporarily as it needs to be updated to latest Truffle first.
|
||||
#test_truffle Gnosis https://github.com/axic/pm-contracts.git solidity-050
|
||||
|
||||
@@ -31,18 +31,17 @@ function test_fn { yarn run test:contracts; }
|
||||
function colony_test
|
||||
{
|
||||
OPTIMIZER_LEVEL=3
|
||||
FORCE_ABIv2=false
|
||||
CONFIG="truffle.js"
|
||||
|
||||
truffle_setup https://github.com/solidity-external-tests/colonyNetwork.git develop_070
|
||||
run_install install_fn
|
||||
truffle_setup "$SOLJSON" https://github.com/solidity-external-tests/colonyNetwork.git develop_070
|
||||
run_install "$SOLJSON" install_fn
|
||||
|
||||
cd lib
|
||||
rm -Rf dappsys
|
||||
git clone https://github.com/solidity-external-tests/dappsys-monolithic.git -b master_060 dappsys
|
||||
cd ..
|
||||
|
||||
truffle_run_test compile_fn test_fn
|
||||
truffle_run_test "$SOLJSON" compile_fn test_fn "NO-FORCE-ABI-V2"
|
||||
}
|
||||
|
||||
external_test ColonyNetworks colony_test
|
||||
|
||||
@@ -40,9 +40,10 @@ function verify_version_input
|
||||
|
||||
function setup
|
||||
{
|
||||
local branch="$1"
|
||||
local soljson="$1"
|
||||
local branch="$2"
|
||||
|
||||
setup_solcjs "$DIR" "$SOLJSON" "$branch" "solc"
|
||||
setup_solcjs "$DIR" "$soljson" "$branch" "solc"
|
||||
cd solc
|
||||
}
|
||||
|
||||
@@ -80,7 +81,7 @@ function download_project
|
||||
printLog "Cloning $branch of $repo..."
|
||||
git clone --depth 1 "$repo" -b "$branch" "$dir/ext"
|
||||
cd ext
|
||||
echo "Current commit hash: `git rev-parse HEAD`"
|
||||
echo "Current commit hash: $(git rev-parse HEAD)"
|
||||
}
|
||||
|
||||
function force_truffle_version
|
||||
@@ -92,10 +93,11 @@ function force_truffle_version
|
||||
|
||||
function truffle_setup
|
||||
{
|
||||
local repo="$1"
|
||||
local branch="$2"
|
||||
local soljson="$1"
|
||||
local repo="$2"
|
||||
local branch="$3"
|
||||
|
||||
setup_solcjs "$DIR" "$SOLJSON" "master" "solc"
|
||||
setup_solcjs "$DIR" "$soljson" "master" "solc"
|
||||
download_project "$repo" "$branch" "$DIR"
|
||||
}
|
||||
|
||||
@@ -207,11 +209,12 @@ function clean
|
||||
|
||||
function run_install
|
||||
{
|
||||
local init_fn="$1"
|
||||
local soljson="$1"
|
||||
local init_fn="$2"
|
||||
printLog "Running install function..."
|
||||
|
||||
replace_version_pragmas
|
||||
force_solc "$CONFIG" "$DIR" "$SOLJSON"
|
||||
force_solc "$CONFIG" "$DIR" "$soljson"
|
||||
|
||||
$init_fn
|
||||
}
|
||||
@@ -232,11 +235,15 @@ function run_test
|
||||
|
||||
function truffle_run_test
|
||||
{
|
||||
local compile_fn="$1"
|
||||
local test_fn="$2"
|
||||
local soljson="$1"
|
||||
local compile_fn="$2"
|
||||
local test_fn="$3"
|
||||
local force_abi_v2_flag="$4"
|
||||
|
||||
test "$force_abi_v2_flag" = "FORCE-ABI-V2" || test "$force_abi_v2_flag" = "NO-FORCE-ABI-V2"
|
||||
|
||||
replace_version_pragmas
|
||||
force_solc "$CONFIG" "$DIR" "$SOLJSON"
|
||||
force_solc "$CONFIG" "$DIR" "$soljson"
|
||||
|
||||
printLog "Checking optimizer level..."
|
||||
if [ -z "$OPTIMIZER_LEVEL" ]; then
|
||||
@@ -258,7 +265,7 @@ function truffle_run_test
|
||||
clean
|
||||
force_solc_settings "$CONFIG" "$optimize" "istanbul"
|
||||
# Force abi coder v2 in the last step. Has to be the last because code is modified.
|
||||
if [ "$FORCE_ABIv2" = true ]; then
|
||||
if [ "$force_abi_v2_flag" = "FORCE-ABI-V2" ]; then
|
||||
[[ "$optimize" =~ yul ]] && force_abi_v2
|
||||
fi
|
||||
|
||||
|
||||
@@ -18,9 +18,7 @@
|
||||
#
|
||||
# (c) 2019 solidity contributors.
|
||||
#------------------------------------------------------------------------------
|
||||
# shellcheck disable=SC1091
|
||||
source scripts/common.sh
|
||||
# shellcheck disable=SC1091
|
||||
source test/externalTests/common.sh
|
||||
|
||||
verify_input "$1"
|
||||
@@ -35,14 +33,14 @@ function ens_test
|
||||
export OPTIMIZER_LEVEL=1
|
||||
export CONFIG="truffle-config.js"
|
||||
|
||||
truffle_setup https://github.com/solidity-external-tests/ens.git upgrade-0.8.0
|
||||
truffle_setup "$SOLJSON" https://github.com/solidity-external-tests/ens.git upgrade-0.8.0
|
||||
|
||||
# Use latest Truffle. Older versions crash on the output from 0.8.0.
|
||||
force_truffle_version ^5.1.55
|
||||
|
||||
run_install install_fn
|
||||
run_install "$SOLJSON" install_fn
|
||||
|
||||
truffle_run_test compile_fn test_fn
|
||||
truffle_run_test "$SOLJSON" compile_fn test_fn "NO-FORCE-ABI-V2"
|
||||
}
|
||||
|
||||
external_test Ens ens_test
|
||||
|
||||
@@ -33,17 +33,17 @@ function gnosis_safe_test
|
||||
OPTIMIZER_LEVEL=1
|
||||
CONFIG="truffle.js"
|
||||
|
||||
truffle_setup https://github.com/solidity-external-tests/safe-contracts.git development_070
|
||||
truffle_setup "$SOLJSON" https://github.com/solidity-external-tests/safe-contracts.git development_070
|
||||
|
||||
force_truffle_version ^5.0.42
|
||||
sed -i 's|github:gnosis/mock-contract#sol_0_5_0|github:solidity-external-tests/mock-contract#master_070|g' package.json
|
||||
rm -f package-lock.json
|
||||
rm -rf node_modules/
|
||||
|
||||
run_install install_fn
|
||||
run_install "$SOLJSON" install_fn
|
||||
replace_libsolc_call
|
||||
|
||||
truffle_run_test compile_fn test_fn
|
||||
truffle_run_test "$SOLJSON" compile_fn test_fn "NO-FORCE-ABI-V2"
|
||||
}
|
||||
|
||||
external_test Gnosis-Safe gnosis_safe_test
|
||||
|
||||
@@ -35,16 +35,16 @@ function solcjs_test
|
||||
SOLCJS_INPUT_DIR="$TEST_DIR"/test/externalTests/solc-js
|
||||
|
||||
# set up solc-js on the branch specified
|
||||
setup master
|
||||
setup "$SOLJSON" master
|
||||
|
||||
printLog "Updating index.js file..."
|
||||
echo "require('./determinism.js');" >> test/index.js
|
||||
|
||||
printLog "Copying determinism.js..."
|
||||
cp -f $SOLCJS_INPUT_DIR/determinism.js test/
|
||||
cp -f "$SOLCJS_INPUT_DIR/determinism.js" test/
|
||||
|
||||
printLog "Copying contracts..."
|
||||
cp -Rf $SOLCJS_INPUT_DIR/DAO test/
|
||||
cp -Rf "$SOLCJS_INPUT_DIR/DAO" test/
|
||||
|
||||
printLog "Copying SMTChecker tests..."
|
||||
cp -Rf "$TEST_DIR"/test/libsolidity/smtCheckerTests test/
|
||||
@@ -52,7 +52,7 @@ function solcjs_test
|
||||
|
||||
# Update version (needed for some tests)
|
||||
echo "Updating package.json to version $VERSION"
|
||||
npm version --allow-same-version --no-git-tag-version $VERSION
|
||||
npm version --allow-same-version --no-git-tag-version "$VERSION"
|
||||
|
||||
run_test compile_fn test_fn
|
||||
}
|
||||
|
||||
@@ -33,10 +33,10 @@ function zeppelin_test
|
||||
OPTIMIZER_LEVEL=1
|
||||
CONFIG="truffle-config.js"
|
||||
|
||||
truffle_setup https://github.com/solidity-external-tests/openzeppelin-contracts.git upgrade-0.7.0
|
||||
run_install install_fn
|
||||
truffle_setup "$SOLJSON" https://github.com/solidity-external-tests/openzeppelin-contracts.git upgrade-0.7.0
|
||||
run_install "$SOLJSON" install_fn
|
||||
|
||||
truffle_run_test compile_fn test_fn
|
||||
truffle_run_test "$SOLJSON" compile_fn test_fn "NO-FORCE-ABI-V2"
|
||||
}
|
||||
|
||||
external_test Zeppelin zeppelin_test
|
||||
|
||||
Reference in New Issue
Block a user