Adds external ColonyNetworks tests.

This commit is contained in:
Erik Kundt 2019-04-02 00:38:14 +02:00
parent 09f46b98ca
commit 3a69a72eb9
3 changed files with 77 additions and 1 deletions

View File

@ -136,6 +136,24 @@ jobs:
command: |
test/externalTests/zeppelin.sh /tmp/workspace/soljson.js || test/externalTests/zeppelin.sh /tmp/workspace/soljson.js
test_emscripten_external_colony:
docker:
- image: circleci/node:10
environment:
TERM: xterm
steps:
- checkout
- attach_workspace:
at: /tmp/workspace
- run:
name: Install test dependencies
command: |
sudo apt-get -qy install lsof
- run:
name: External ColonyNetworks tests
command: |
test/externalTests/colony.sh /tmp/workspace/soljson.js || test/externalTests/colony.sh /tmp/workspace/soljson.js
build_x86_linux:
docker:
- image: buildpack-deps:bionic
@ -481,6 +499,10 @@ workflows:
<<: *build_on_tags
requires:
- build_emscripten
- test_emscripten_external_colony:
<<: *build_on_tags
requires:
- build_emscripten
- build_x86_linux: *build_on_tags
- build_x86_linux_cxx17: *build_on_tags
- build_x86_clang7_asan: *build_on_tags
@ -523,8 +545,13 @@ workflows:
<<: *build_on_tags
requires:
- build_emscripten
- test_emscripten_external_colony:
<<: *build_on_tags
requires:
- build_emscripten
- build_x86_linux_ossfuzz: *build_on_tags
- test_x86_ossfuzz_regression:
<<: *build_on_tags
requires:
- build_x86_linux_ossfuzz

47
test/externalTests/colony.sh Executable file
View File

@ -0,0 +1,47 @@
#!/usr/bin/env bash
# ------------------------------------------------------------------------------
# This file is part of solidity.
#
# solidity is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# solidity is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with solidity. If not, see <http://www.gnu.org/licenses/>
#
# (c) 2019 solidity contributors.
#------------------------------------------------------------------------------
source test/externalTests/common.sh
verify_input "$1"
SOLJSON="$1"
function install_fn { yarn; git submodule update --init; }
function compile_fn { yarn run provision:token:contracts; }
function test_fn { yarn run test:contracts; }
function colony_test
{
OPTIMIZER_LEVEL=3
FORCE_ABIv2=false
setup https://github.com/JoinColony/colonyNetwork.git develop master
run_install install_fn
CONFIG=$(find_truffle_config)
cd lib
rm -Rf dappsys
git clone https://github.com/erak/dappsys-monolithic.git -b callvalue-payable-fix dappsys
cd ..
run_test compile_fn test_fn
}
external_test ColonyNetworks colony_test

View File

@ -218,7 +218,9 @@ function run_test
clean
force_solc_settings "$CONFIG" "$optimize" "petersburg"
# Force ABIEncoderV2 in the last step. Has to be the last because code is modified.
[[ "$optimize" =~ yul ]] && force_abi_v2
if [ "$FORCE_ABIv2" = true ]; then
[[ "$optimize" =~ yul ]] && force_abi_v2
fi
printLog "Running compile function..."
$compile_fn