diff --git a/.gitignore b/.gitignore index fcf8f4012..8c72974ad 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,6 @@ node_modules/ build/ .DS_Store/ /coverage -coverage.json \ No newline at end of file +coverage.json +allFiredEvents +scTopics \ No newline at end of file diff --git a/README.md b/README.md index b41e962d7..8c4b198bb 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Zeppelin Solidity [![NPM Package](https://img.shields.io/npm/v/zeppelin-solidity.svg?style=flat-square)](https://www.npmjs.org/package/zeppelin-solidity) [![Build Status](https://img.shields.io/travis/OpenZeppelin/zeppelin-solidity.svg?branch=master&style=flat-square)](https://travis-ci.org/OpenZeppelin/zeppelin-solidity) -[![Coverage Status](https://coveralls.io/repos/github/OpenZeppelin/zeppelin-solidity/badge.svg?branch=coveralls)](https://coveralls.io/github/OpenZeppelin/zeppelin-solidity?branch=coveralls) +[![Coverage Status](https://coveralls.io/repos/github/OpenZeppelin/zeppelin-solidity/badge.svg?branch=master)](https://coveralls.io/github/OpenZeppelin/zeppelin-solidity?branch=master) OpenZeppelin is a library for writing secure [Smart Contracts](https://en.wikipedia.org/wiki/Smart_contract) on Ethereum. diff --git a/scripts/coverage.sh b/scripts/coverage.sh index 327e8a476..5d69ac560 100755 --- a/scripts/coverage.sh +++ b/scripts/coverage.sh @@ -1,12 +1,24 @@ -#! /bin/bash +#!/bin/bash - +# Executes cleanup function at script exit. +trap cleanup EXIT -output=$(nc -z localhost 8555; echo $?) -[ $output -eq "0" ] && trpc_running=true -if [ ! $trpc_running ]; then +cleanup() { + # Kill the testrpc instance that we started (if we started one). + if [ -n "$testrpc_pid" ]; then + kill -9 $testrpc_pid + fi +} + +testrpc_running() { + nc -z localhost 8555 +} + +if testrpc_running; then + echo "Using existing testrpc-sc instance" +else echo "Starting testrpc-sc to generate coverage" - # we give each account 1M ether, needed for high-value tests + # We define 10 accounts with balance 1M ether, needed for high-value tests. ./node_modules/ethereumjs-testrpc-sc/bin/testrpc --gasLimit 0xfffffffffff --port 8555 \ --account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501200,1000000000000000000000000" \ --account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501201,1000000000000000000000000" \ @@ -19,7 +31,7 @@ if [ ! $trpc_running ]; then --account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501208,1000000000000000000000000" \ --account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501209,1000000000000000000000000" \ > /dev/null & - trpc_pid=$! + testrpc_pid=$! fi -SOLIDITY_COVERAGE=true && ./node_modules/.bin/solidity-coverage +SOLIDITY_COVERAGE=true ./node_modules/.bin/solidity-coverage