forked from mimblewimble/grin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
82 lines (79 loc) · 3.19 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
language: rust
cache: cargo
dist: trusty
sudo: false
rust:
- stable
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- cmake
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
- cmake
- gcc
- binutils-dev
env:
global:
- RUST_BACKTRACE="1"
matrix:
- RUST_TEST_THREADS=1 TEST_DIR=grin
- TEST_DIR=store
- TEST_DIR=chain
- TEST_DIR=pool
- TEST_DIR=wallet
- TEST_DIR=p2p
- TEST_DIR=api
- TEST_DIR=pow
- TEST_DIR=keychain
- TEST_DIR=core
- TEST_DIR=util
after_success: |
pwd &&
wget https://github.com/mimblewimble/kcov/archive/master.tar.gz &&
tar xzf master.tar.gz &&
cd kcov-master &&
mkdir build && cd build &&
cmake .. && make && mv src/kcov ../.. &&
cd ../.. &&
rm -rf kcov-master &&
cd ../
cd api && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_api* &&
echo "Finished coverage for grin_api"
cd core && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_core* &&
echo "Finished coverage for grin_core"
cd chain && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_chain* &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/mine_simple_chain* &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/store_indices* &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/test_coinbase_maturity* &&
echo "Finished coverage for grin_chain"
cd keychain && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_keychain* &&
echo "Finished coverage for grin_keychain"
cd p2p && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_p2p* &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/peer_handshake* &&
echo "Finished coverage for grin_p2p"
cd pow && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_pow* &&
echo "Finished coverage for grin_pow"
cd store && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_store* &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/sumtree* &&
echo "Finished coverage for grin_store"
cd wallet && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_wallet* &&
echo "Finished coverage for grin_wallet"
cd util && cargo test --no-run && cd .. && rm target/debug/*.d &&
./kcov --exclude-pattern=/.cargo,/usr/lib --verify target/cov target/debug/grin_util* &&
echo "Finished coverage for grin_util"
bash <(curl -s https://codecov.io/bash) &&
echo "Uploaded code coverage"
script: cd $TEST_DIR && cargo test --verbose