Skip to content

Commit 4f1129f

Browse files
committed
cleaned up, updated to googletest-1.8.0, and added build.log publishing
1 parent 79a7013 commit 4f1129f

File tree

4 files changed

+107
-109
lines changed

4 files changed

+107
-109
lines changed

.c9build.sh

Lines changed: 34 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,50 @@
11
#!/bin/bash
22

33
# System prerequisites
4-
sudo apt-get update
5-
sudo apt-get install wget unzip python make g++
6-
sudo apt-get install cmake
4+
#sudo apt-get update
5+
#sudo apt-get install wget unzip python make g++
6+
#sudo apt-get install cmake
77
sudo pip install gcovr
88

99
# Download framework
10-
rm -rf gtest
11-
wget https://github.com/google/googletest/archive/release-1.7.0.zip
12-
unzip release-1.7.0.zip
13-
mv googletest-release-1.7.0 gtest
14-
rm release-1.7.0.zip
15-
16-
# Build (i) library (ii) examples
17-
cd gtest
18-
mkdir build
19-
cd build
10+
GTEST_ROOT=$PWD/googletest-release-1.8.0/googletest
11+
rm -rf $PWD/googletest-release-1.8.0
12+
wget https://github.com/google/googletest/archive/release-1.8.0.zip
13+
unzip release-1.8.0.zip
14+
rm release-1.8.0.zip
15+
16+
# Build library
17+
mkdir $GTEST_ROOT/build
18+
pushd $GTEST_ROOT/build
2019
cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS_DEBUG='-g -fprofile-arcs -ftest-coverage' ../
21-
make clean gtest
20+
make clean gtest
21+
popd
2222

23-
make
23+
# Build samples
24+
rm -f build.log
25+
# (i) building with coverage (ii) preserving STDOUT while saving to a log file (iii) preserving the original exit code
26+
make -C $GTEST_ROOT/build |& tee build.log ; test ${PIPESTATUS[0]} -eq 0
2427

2528
# Analysis
26-
29+
# using the build.log
2730

2831
# Test
29-
rm -rf sample*.xml
30-
31-
./sample1_unittest --gtest_output=xml:sample1.xml
32-
./sample2_unittest --gtest_output=xml:sample2.xml
33-
./sample3_unittest --gtest_output=xml:sample3.xml
34-
./sample4_unittest --gtest_output=xml:sample4.xml
35-
./sample5_unittest --gtest_output=xml:sample5.xml
36-
./sample6_unittest --gtest_output=xml:sample6.xml
37-
./sample7_unittest --gtest_output=xml:sample7.xml
38-
./sample8_unittest --gtest_output=xml:sample8.xml
39-
./sample9_unittest --gtest_output=xml:sample9.xml
40-
./sample10_unittest --gtest_output=xml:sample10.xml
41-
42-
cd ..
43-
gcovr --root $PWD --filter ".*/samples.*" --exclude ".*_unittest.*" -x -o build/coverage.xml
32+
rm -f sample*.xml
33+
$GTEST_ROOT/build/sample1_unittest --gtest_output=xml:sample1.xml
34+
$GTEST_ROOT/build/sample2_unittest --gtest_output=xml:sample2.xml
35+
$GTEST_ROOT/build/sample3_unittest --gtest_output=xml:sample3.xml
36+
$GTEST_ROOT/build/sample4_unittest --gtest_output=xml:sample4.xml
37+
$GTEST_ROOT/build/sample5_unittest --gtest_output=xml:sample5.xml
38+
$GTEST_ROOT/build/sample6_unittest --gtest_output=xml:sample6.xml
39+
$GTEST_ROOT/build/sample7_unittest --gtest_output=xml:sample7.xml
40+
$GTEST_ROOT/build/sample8_unittest --gtest_output=xml:sample8.xml
41+
$GTEST_ROOT/build/sample9_unittest --gtest_output=xml:sample9.xml
42+
$GTEST_ROOT/build/sample10_unittest --gtest_output=xml:sample10.xml
43+
rm -f coverage.xml
44+
gcovr --root ./ --filter ".*/samples/.*" --exclude ".*_unittest.*" -x -o coverage.xml
4445

4546

4647
# Publish
4748
curl -s https://testspace-client.s3.amazonaws.com/testspace-linux.tgz | sudo tar -zxvf- -C /usr/local/bin
48-
cd build
49-
testspace [Tests]sample*.xml coverage.xml master.c9
49+
# assuming testspace is already configured with "credentials@domain/project"
50+
testspace build.log{issues} [Tests]sample*.xml coverage.xml master.c9

.travis.yml

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,36 @@
11
language:
2-
- cpp
2+
- cpp
3+
4+
env:
5+
global:
6+
- GTEST_ROOT=$TRAVIS_BUILD_DIR/googletest-release-1.8.0/googletest
37

48
before_install:
5-
# Install system prerequisites
69
- sudo pip install gcovr
710

8-
# Install Google Test framework
9-
- wget https://github.com/google/googletest/archive/release-1.7.0.zip
10-
- unzip release-1.7.0.zip
11-
- mv googletest-release-1.7.0 gtest
12-
- cd gtest
13-
- mkdir build
14-
- cd build
11+
install:
12+
- wget https://github.com/google/googletest/archive/release-1.8.0.zip
13+
- unzip release-1.8.0.zip
14+
- mkdir $GTEST_ROOT/build
15+
- pushd $GTEST_ROOT/build
1516
- cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS_DEBUG='-g -fprofile-arcs -ftest-coverage' ../
16-
- make clean gtest
17+
- make clean gtest
18+
- popd
1719

1820
script:
19-
- cd $TRAVIS_BUILD_DIR/gtest/build
20-
- make
21-
- ./sample1_unittest --gtest_output=xml:sample1.xml
22-
- ./sample2_unittest --gtest_output=xml:sample2.xml
23-
- ./sample3_unittest --gtest_output=xml:sample3.xml
24-
- ./sample4_unittest --gtest_output=xml:sample4.xml
25-
- ./sample5_unittest --gtest_output=xml:sample5.xml
26-
- ./sample6_unittest --gtest_output=xml:sample6.xml
27-
- ./sample7_unittest --gtest_output=xml:sample7.xml
28-
- ./sample8_unittest --gtest_output=xml:sample8.xml
29-
- ./sample9_unittest --gtest_output=xml:sample9.xml
30-
- ./sample10_unittest --gtest_output=xml:sample10.xml
31-
- cd ..
32-
- gcovr --root $PWD --filter ".*/samples.*" --exclude ".*_unittest.*" -x -o build/coverage.xml
21+
- make -C $GTEST_ROOT/build |& tee build.log ; test ${PIPESTATUS[0]} -eq 0
22+
- $GTEST_ROOT/build/sample1_unittest --gtest_output=xml:sample1.xml
23+
- $GTEST_ROOT/build/sample2_unittest --gtest_output=xml:sample2.xml
24+
- $GTEST_ROOT/build/sample3_unittest --gtest_output=xml:sample3.xml
25+
- $GTEST_ROOT/build/sample4_unittest --gtest_output=xml:sample4.xml
26+
- $GTEST_ROOT/build/sample5_unittest --gtest_output=xml:sample5.xml
27+
- $GTEST_ROOT/build/sample6_unittest --gtest_output=xml:sample6.xml
28+
- $GTEST_ROOT/build/sample7_unittest --gtest_output=xml:sample7.xml
29+
- $GTEST_ROOT/build/sample8_unittest --gtest_output=xml:sample8.xml
30+
- $GTEST_ROOT/build/sample9_unittest --gtest_output=xml:sample9.xml
31+
- $GTEST_ROOT/build/sample10_unittest --gtest_output=xml:sample10.xml
32+
- gcovr --root ./ --filter ".*/samples/.*" --exclude ".*_unittest.*" -x -o coverage.xml
3333

3434
after_script:
3535
- curl -s https://testspace-client.s3.amazonaws.com/testspace-linux.tgz | sudo tar -zxvf- -C /usr/local/bin
36-
- cd $TRAVIS_BUILD_DIR/gtest/build
37-
- testspace [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${TRAVIS_BRANCH}#travis.Build.${TRAVIS_BUILD_NUMBER}
36+
- testspace build.log{issues} [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${TRAVIS_BRANCH}#travis.Build.${TRAVIS_BUILD_NUMBER}

circle.yml

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
1+
machine:
2+
environment:
3+
GTEST_ROOT: $HOME/$CIRCLE_PROJECT_REPONAME/googletest-release-1.8.0/googletest
4+
15
dependencies:
26
pre:
3-
- sudo apt-get update
4-
- sudo apt-get install cmake
57
- sudo pip install gcovr
6-
- wget https://github.com/google/googletest/archive/release-1.7.0.zip
7-
- unzip release-1.7.0.zip
8-
- mv googletest-release-1.7.0 gtest
8+
- wget https://github.com/google/googletest/archive/release-1.8.0.zip
9+
- unzip release-1.8.0.zip
910
override:
10-
- cd gtest; mkdir build; cd build; cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS_DEBUG='-g -fprofile-arcs -ftest-coverage' ../
11+
- mkdir $GTEST_ROOT/build; cd $GTEST_ROOT/build; cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS_DEBUG='-g -fprofile-arcs -ftest-coverage' ../; make clean gtest
1112

1213
test:
1314
override:
14-
- cd gtest/build; make;
15-
- cd gtest/build; ./sample1_unittest --gtest_output=xml:sample1.xml
16-
- cd gtest/build; ./sample2_unittest --gtest_output=xml:sample2.xml
17-
- cd gtest/build; ./sample3_unittest --gtest_output=xml:sample3.xml
18-
- cd gtest/build; ./sample4_unittest --gtest_output=xml:sample4.xml
19-
- cd gtest/build; ./sample5_unittest --gtest_output=xml:sample5.xml
20-
- cd gtest/build; ./sample6_unittest --gtest_output=xml:sample6.xml
21-
- cd gtest/build; ./sample7_unittest --gtest_output=xml:sample7.xml
22-
- cd gtest/build; ./sample8_unittest --gtest_output=xml:sample8.xml
23-
- cd gtest/build; ./sample9_unittest --gtest_output=xml:sample9.xml
24-
- cd gtest/build; ./sample10_unittest --gtest_output=xml:sample10.xml
25-
- cd gtest; gcovr --root $PWD --filter ".*/samples.*" --exclude ".*_unittest.*" -x -o build/coverage.xml
15+
- make -C $GTEST_ROOT/build |& tee build.log ; test ${PIPESTATUS[0]} -eq 0
16+
- $GTEST_ROOT/build/sample1_unittest --gtest_output=xml:sample1.xml
17+
- $GTEST_ROOT/build/sample2_unittest --gtest_output=xml:sample2.xml
18+
- $GTEST_ROOT/build/sample3_unittest --gtest_output=xml:sample3.xml
19+
- $GTEST_ROOT/build/sample4_unittest --gtest_output=xml:sample4.xml
20+
- $GTEST_ROOT/build/sample5_unittest --gtest_output=xml:sample5.xml
21+
- $GTEST_ROOT/build/sample6_unittest --gtest_output=xml:sample6.xml
22+
- $GTEST_ROOT/build/sample7_unittest --gtest_output=xml:sample7.xml
23+
- $GTEST_ROOT/build/sample8_unittest --gtest_output=xml:sample8.xml
24+
- $GTEST_ROOT/build/sample9_unittest --gtest_output=xml:sample9.xml
25+
- $GTEST_ROOT/build/sample10_unittest --gtest_output=xml:sample10.xml
26+
- gcovr --root ./ --filter ".*/samples/.*" --exclude ".*_unittest.*" -x -o coverage.xml
2627
post:
2728
- curl -s https://testspace-client.s3.amazonaws.com/testspace-linux.tgz | sudo tar -zxvf- -C /usr/local/bin
28-
- cd gtest/build; testspace [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${CIRCLE_BRANCH}#circle.Build.${CIRCLE_BUILD_NUM}
29+
- testspace build.log{issues} [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${CIRCLE_BRANCH}#circle.Build.${CIRCLE_BUILD_NUM}

shippable.yml

Lines changed: 28 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,37 @@
1-
language: none
1+
language: c
22

3-
env:
4-
global:
5-
- secure: Guv8JrTD70i5/YZQJxIJH/lcSsezkbwiEy/ePcMm2grd3I08XlGMXRCod+IjMHqVe3Tv8X4CPOgebCcluCjmHjV2110JfohGLNgZK99VTxDqYrfCJNtXxwwr8iQmliqPCCl+EDlzZ7Mx0Tqr8uBAWOkHTXYwRqUdElUY4WHjj8WDYIYaG/Nc8u4Ev7r4byydSfIBYOeu5bmxuXPDECgtv3Bv6iiRaPT9WfQ6xpgr5JiHzlrBOtMQul5CbduLxwz2J6heeIHpepvBvbLnwXfYlyjMVlLUTTsf+JoBtil8c8mO7tOeR1QqpM6HWYNdxMlornhFTC+IDltY3Iuf6SgSAg==
3+
env:
4+
global:
5+
- secure: Guv8JrTD70i5/YZQJxIJH/lcSsezkbwiEy/ePcMm2grd3I08XlGMXRCod+IjMHqVe3Tv8X4CPOgebCcluCjmHjV2110JfohGLNgZK99VTxDqYrfCJNtXxwwr8iQmliqPCCl+EDlzZ7Mx0Tqr8uBAWOkHTXYwRqUdElUY4WHjj8WDYIYaG/Nc8u4Ev7r4byydSfIBYOeu5bmxuXPDECgtv3Bv6iiRaPT9WfQ6xpgr5JiHzlrBOtMQul5CbduLxwz2J6heeIHpepvBvbLnwXfYlyjMVlLUTTsf+JoBtil8c8mO7tOeR1QqpM6HWYNdxMlornhFTC+IDltY3Iuf6SgSAg==
6+
- GTEST_ROOT=$SHIPPABLE_BUILD_DIR/googletest-release-1.8.0/googletest
67

7-
before_script:
8-
- sudo apt-get update
9-
- sudo apt-get install cmake
8+
build:
9+
ci:
1010
- sudo pip install gcovr
11-
- wget https://github.com/google/googletest/archive/release-1.7.0.zip
12-
- unzip release-1.7.0.zip
13-
- mv googletest-release-1.7.0 gtest
14-
- cd gtest
15-
- mkdir build
16-
- cd build
11+
- wget https://github.com/google/googletest/archive/release-1.8.0.zip
12+
- unzip release-1.8.0.zip
13+
14+
- mkdir $GTEST_ROOT/build
15+
- pushd $GTEST_ROOT/build
1716
- cmake -Dgtest_build_samples=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS_DEBUG='-g -fprofile-arcs -ftest-coverage' ../
18-
- make clean gtest
17+
- make clean gtest
18+
- popd
1919

20-
script:
21-
- make
22-
- ./sample1_unittest --gtest_output=xml:sample1.xml
23-
- ./sample2_unittest --gtest_output=xml:sample2.xml
24-
- ./sample3_unittest --gtest_output=xml:sample3.xml
25-
- ./sample4_unittest --gtest_output=xml:sample4.xml
26-
- ./sample5_unittest --gtest_output=xml:sample5.xml
27-
- ./sample6_unittest --gtest_output=xml:sample6.xml
28-
- ./sample7_unittest --gtest_output=xml:sample7.xml
29-
- ./sample8_unittest --gtest_output=xml:sample8.xml
30-
- ./sample9_unittest --gtest_output=xml:sample9.xml
31-
- ./sample10_unittest --gtest_output=xml:sample10.xml
32-
- cd ..
33-
- gcovr --root $PWD --filter ".*/samples.*" --exclude ".*_unittest.*" -x -o build/coverage.xml
20+
- make -C $GTEST_ROOT/build |& tee build.log ; test ${PIPESTATUS[0]} -eq 0
21+
- $GTEST_ROOT/build/sample1_unittest --gtest_output=xml:sample1.xml
22+
- $GTEST_ROOT/build/sample2_unittest --gtest_output=xml:sample2.xml
23+
- $GTEST_ROOT/build/sample3_unittest --gtest_output=xml:sample3.xml
24+
- $GTEST_ROOT/build/sample4_unittest --gtest_output=xml:sample4.xml
25+
- $GTEST_ROOT/build/sample5_unittest --gtest_output=xml:sample5.xml
26+
- $GTEST_ROOT/build/sample6_unittest --gtest_output=xml:sample6.xml
27+
- $GTEST_ROOT/build/sample7_unittest --gtest_output=xml:sample7.xml
28+
- $GTEST_ROOT/build/sample8_unittest --gtest_output=xml:sample8.xml
29+
- $GTEST_ROOT/build/sample9_unittest --gtest_output=xml:sample9.xml
30+
- $GTEST_ROOT/build/sample10_unittest --gtest_output=xml:sample10.xml
31+
- gcovr --root ./ --filter ".*/samples/.*" --exclude ".*_unittest.*" -x -o coverage.xml
3432

35-
after_script:
33+
post_ci:
3634
- curl -s https://testspace-client.s3.amazonaws.com/testspace-linux.tgz | sudo tar -zxvf- -C /usr/local/bin
37-
- cd build
38-
- testspace [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${BRANCH}#ship.Build.${BUILD_NUMBER}
35+
- testspace build.log{issues} [Tests]sample*.xml coverage.xml $TESTSPACE_TOKEN/${BRANCH}#ship.Build.${BUILD_NUMBER}
3936

4037

0 commit comments

Comments
 (0)