-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathbuildbot.txt
More file actions
223 lines (175 loc) · 7.36 KB
/
Copy pathbuildbot.txt
File metadata and controls
223 lines (175 loc) · 7.36 KB
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
.. _buildbot:
******************************************************************************
Test Suite
******************************************************************************
Liblas includes a test suite written in C++ that can be fairly easily run
to ensure that the library is working properly.
make test
..............................................................................
The test suite can be run in the liblas main directory with::
make test
If the liblas_test binary does not exist it may be necessary to do::
make liblas_test test
This should produce a brief report indicating the number of tests that failed,
if any. A detailed report will be generated in
liblas/Testing/Temporary/LastTest.log. Failure reports may look something
like::
---> group: liblas::SpatialReference, test: test<6>
problem: assertion failed
failed assertion: `VLR count: expected `3` actual `4``
Tests failures diagnosis may require inspecting the test code in the
liblas/test/unit directory. In the above case searching for "test<6>" in
the file liblas/test/unit/lasspatialreference_test.cpp would be appropriate.
The tests can also be run directly in the liblas/test/unit directory by
running the liblas/bin/liblas_test executable. In this case the report is
written to stderr. Be careful to write it in the right directory or some
tests will fail for reasons that are not clear.
Continuous Integration - buildbot
..............................................................................
The libLAS project uses `Buildbot <http://buildbot.net/trac>`__ to perform
automated builds and continuous integration. Thanks to the
`OSGeo Foundation`_, a dedicated Buildbot instance is hosted on the `OSGeo Buildbot`_.
The libLAS Buildbot status is rendered on the `libLAS buildbot waterfall`_
which can be used to trigger new builds on request.
There is also #bbliblas bot present on `IRC`_ #liblas] IRC channel:
::
<mloskot> bbliblas: force build telascience-full "Routine check"
.. warning::
Currently the buildbot instance is not operational. This section will
be updated when an analygous service is available again.
Building libLAS and running unit tests using CMake on Unix
..............................................................................
Users are encourage to run libLAS unit tests and submit test results to
dedicated `CDash`_ - utility dashboard hosted by the http://cdash.org website:
* `libLAS CDash`_
The CDash is another tool liblAS uses to perform `continuous integration`_
during development process.
.. note::
In order to enable `CTest`_ support, `CMake 2.8.0+`_
version is required.
* Configure libLAS core library with unit tests and CTest enabled
::
$ cmake ../main -DWITH_TESTS=ON -DENABLE_CTEST=ON
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Enable libLAS utilities to build - done
-- Enable libLAS unit tests to build - done
-- Enable CTest to support submissions of results to CDash at http://cdash.org
-- Enable CTest to support submissions of results to CDash at http://cdash.org - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mloskot/dev/liblas/_hg/build
* Inspect available targets
::
$ make help
The following are some of the valid targets for this Makefile:
... all (the default if no target is provided)
... clean
... depend
... Continuous
... ContinuousBuild
... ContinuousConfigure
... ContinuousCoverage
... ContinuousMemCheck
... ContinuousStart
... ContinuousSubmit
... ContinuousTest
... ContinuousUpdate
... Experimental
... ExperimentalBuild
... ExperimentalConfigure
... ExperimentalCoverage
... ExperimentalMemCheck
... ExperimentalStart
... ExperimentalSubmit
... ExperimentalTest
... ExperimentalUpdate
... Nightly
... NightlyBuild
... NightlyConfigure
... NightlyCoverage
... NightlyMemCheck
... NightlyMemoryCheck
... NightlyStart
... NightlySubmit
... NightlyTest
... NightlyUpdate
... edit_cache
... install
... install/local
... install/strip
... list_install_components
... rebuild_cache
... test
... las
... las_c
... las2las
... las2txt
... lasinfo
... lasmerge
... txt2las
... liblas_test
* Run `Continuous` target
::
mloskot@dog:~/dev/liblas/_hg/build$ make Continuous
Site: dog
Build name: Linux-c++
Create new tag: 20091025-0003 - Continuous
Updating the repository
Updating the repository: /home/mloskot/dev/liblas/_hg/main
Use HG repository type
Old revision of repository is: aa303d670d1a
New revision of repository is: 690df0a6df0b
Gathering version information (one . per revision):
.
Found 1 updated files
Configure project
Each . represents 1024 bytes of output
. Size of output: 0K
Build project
Each symbol represents 1024 bytes of output.
'!' represents an error and '*' a warning.
......****.* Size of output: 11K
0 Compiler errors
7 Compiler warnings
Test project /home/mloskot/dev/liblas/_hg/build
Start 1: liblas_test
1/1 Test #1: liblas_test ...................... Passed 0.02 sec
100% tests passed, 0 tests failed out of 1
Total Test time (real) = 0.03 sec
Performing coverage
Cannot find any coverage files. Ignoring Coverage request.
Submit files (using http)
Using HTTP submit method
Drop site:http://my.cdash.org/submit.php?project=libLAS
Uploaded: /home/mloskot/dev/liblas/_hg/build/Testing/20091025-0003/Build.xml
Uploaded: /home/mloskot/dev/liblas/_hg/build/Testing/20091025-0003/Configure.xml
Uploaded: /home/mloskot/dev/liblas/_hg/build/Testing/20091025-0003/Test.xml
Uploaded: /home/mloskot/dev/liblas/_hg/build/Testing/20091025-0003/Update.xml
Submission successful
Built target Continuous
Ammending and Extending the Test Suite
..............................................................................
The tests for the test suite are implemented as a set of C++ files in the
liblas/test/unit directory. New tests for existing classes can be added
based on the existing examples. New files can be introduced for additional
classes or categories of testing, but the source filename(s) will also need
to be added in liblas/test/unit/CMakeLists.txt.
.. _`CMake`: http://www.cmake.org/
.. _`CTest`: http://cmake.org/cmake/help/ctest-2-8-docs.html
.. _`CMake 2.8.0+`: http://www.cmake.org/cmake/help/cmake-2-8-docs.html
.. _`CDash`: http://www.cdash.org/
.. _`continuous integration`: http://en.wikipedia.org/wiki/Continuous_integration
.. _`libLAS CDash`: http://my.cdash.org/index.php?project=libLAS
.. _`IRC`: http://irc.freenode.net/
.. _`OSGeo Buildbot`: http://buildbot.osgeo.org/
.. _`libLAS buildbot waterfall`: http://buildbot.osgeo.org:8507/waterfall
.. _`OSGeo Foundation`: http://osgeo.org/