11 time_stamp=$(date -u +%Y-%b-%d)
14 report_flags="--html --html-details";
17 IOTIVITY_BASE="${PWD}"
18 IOTIVITY_TARGET_OS="linux"
19 IOTIVITY_TARGET_ARCH="$(uname -m)"
21 UNITTEST_XML_REPORT="yes"
23 case $IOTIVITY_TARGET_ARCH in
25 IOTIVITY_TARGET_ARCH=x86
31 echo "Usage: tools/generate_report.sh <options>"
33 echo " -h / --help : Display help and exit"
34 echo " -c : Clean IoTivity Repository; Should be used to clean existing repository"
35 echo " -f [html|gcov|xml] (default: html) : Report Format."
36 echo " --format=[html|gcov|xml] (default: html) : Report Format."
37 echo " --module=[CA|ES|RE|SM|NS|CHP|ALL] (default: CA) : Module for which report needs to be generated."
38 echo " --timestamp=[yes|no] (default: yes) : Remove Time Stamp from the report output. If directory exits, overwrites the report to the same directory"
39 echo " --ut_report=[yes|no] (default: yes) : The unit test report will be generated in xml format (as gtest only supports xml)."
40 echo " --target_arch=[x86|x86_64] (default: x86) : Choose Target Architecture for running test executables."
42 echo " $ cd path/to/iotivity "
43 echo " $ scons TARGET_TRANSPORT=IP LOGGING=0 RELEASE=0 SECURED=0 WITH_TCP=0 TARGET_ARCH=x86 WITH_PROXY=1 TEST=0 "
44 echo " $ tools/generate_report.sh --format=html --module=ALL --timestamp=yes --ut_report=yes"
48 echo -e "Cleaning ${BLUE}${IOTIVITY_BASE}${NO_COLOUR}"
49 echo -e "Deleting ${RED}${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug${NO_COLOUR}"
50 echo -e "Deleting ${RED}${IOTIVITY_BASE}/.sconf_temp${NO_COLOUR}"
51 echo -e "Deleting ${RED}${IOTIVITY_BASE}/.sconsign.dblite${NO_COLOUR}"
52 rm -r "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug" "${IOTIVITY_BASE}/.sconf_temp" "${IOTIVITY_BASE}/.sconsign.dblite"
53 find "${IOTIVITY_BASE}" -name "*.memcheck" -delete -o -name "*.gcno" -delete -o -name "*.gcda" -delete -o -name "*.os" -delete -o -name "*.o" -delete
54 echo -e "Finished Cleaning ${BLUE}${IOTIVITY_BASE}${NO_COLOUR}"
58 while [ "$#" -gt 0 ]; do
67 if [ "gcov" != ${report_format} -a "html" != ${report_format} -a "xml" != ${report_format} ]; then
70 case "$report_format" in
72 report_flags="--html --html-details";
85 report_format="${1#*=}";
86 if [ "gcov" != ${report_format} -a "html" != ${report_format} -a "xml" != ${report_format} ]; then
89 case "$report_format" in
91 report_flags="--html --html-details";
97 report_flags="--xml --xml-pretty";
104 echo "$1 requires an argument [gcov|html|xml]" >&2;
110 module_name="${1#*=}";
111 if [ "CA" != ${module_name} -a "ES" != ${module_name} -a "RE" != ${module_name} -a "SM" != ${module_name} -a "NS" != ${module_name} -a "CHP" != ${module_name} -a "ALL" != ${module_name} ]; then
118 USE_TIMESTAMP="${1#*=}";
119 if [ "yes" != ${USE_TIMESTAMP} -a "no" != ${USE_TIMESTAMP} ]; then
125 echo "$1 requires an argument [yes|no]" >&2;
131 UNITTEST_XML_REPORT="${1#*=}";
132 if [ "yes" != ${UNITTEST_XML_REPORT} -a "no" != ${UNITTEST_XML_REPORT} ]; then
138 echo "$1 requires an argument [yes|no]" >&2;
144 IOTIVITY_TARGET_ARCH="${1#*=}";
145 if [ "x86" != ${IOTIVITY_TARGET_ARCH} -a "x86_64" != ${IOTIVITY_TARGET_ARCH} ]; then
151 echo "$1 requires an argument" >&2;
166 echo "unknown option: $1" >&2;
177 if [ "yes" = ${USE_TIMESTAMP} ]; then
178 report_dir="${module_name}_${time_stamp}"
180 report_dir="${module_name}"
183 report_file="report.${report_format}"
185 test_report_dir="TestReport/${report_format}/${report_dir}"
186 test_report_file="${test_report_dir}/${report_file}"
188 rm -rf "${test_report_dir}"
189 mkdir -p "${test_report_dir}"
191 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
193 #Setting Proper Location for UnitTest XML report generation
194 unittest_report_dir="UnitTestReport/${report_dir}"
195 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
196 rm -rf "${unittest_report_dir}"
197 mkdir -p "${unittest_report_dir}"
198 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
202 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/csdk/connectivity/test/catests"
203 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/csdk/stack/test/stacktests"
204 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/csdk/stack/test/cbortests"
205 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/unittests/unittests"
206 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/c_common/ocrandom/test/randomtests"
207 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/c_common/oic_malloc/test/malloctests"
208 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/c_common/oic_string/test/stringtests"
209 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/resource/c_common/oic_time/test/timetests"
212 for exe in ${tests_list[@]}; do
213 filename=$(basename -- "${exe}")
214 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
215 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
217 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
224 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
226 # Printing Unit Test Report Location
227 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
228 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
233 -e "examples.OICMiddle" \
235 -e "extlibs.hippomocks-master.*" \
236 -e "extlibs.rapidxml.*" \
239 -e "resource.csdk.connectivity.lib.*" \
240 -e "resource.csdk.connectivity.samples.linux.*" \
241 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
242 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
243 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
244 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
245 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
246 -e "resource.csdk.connectivity.test.*" \
247 -e "resource.csdk.logger.*" \
248 -e "resource.src.*" \
249 -e "resource.csdk.security.provisioning.include.*" \
250 -e "resource.csdk.security.provisioning.sample.*" \
251 -e "resource.csdk.security.provisioning.src.cloud.*" \
252 -e "resource.csdk.security.provisioning.unittest.*" \
253 -e "resource.csdk.security.unittest.*" \
254 -e "resource.csdk.stack.*" \
255 -e "resource.examples.*" \
256 -e "resource.unittests.*" \
257 -e "resource.include.*" \
258 -e "resource.oc_logger.*" \
259 -e "resource.provisioning.examples.*" \
260 -e "resource.provisioning.unittests.*" \
261 -e "resource.csdk.connectivity.common.src.logger.c.*" \
262 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
263 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
264 -e "service.resource-encapsulation.include.*" \
265 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
266 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
267 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
268 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
269 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
270 -e "service.resource-encapsulation.unittest.*" \
271 -e "service.resource-hosting.src.unittest.*" \
272 -e "service.resource-hosting.SampleApp.*" \
273 -e "service.things-manager.*" \
274 -e "service.notification.unittest.*" \
275 -e "service.easy-setup.unittest.*" \
276 -e "service.easy-setup.sample.*" \
277 -e "service.easy-setup.mediator.csdk.unittests.*" \
278 -e "service.easy-setup.mediator.richsdk.unittests.*" \
279 -e "service.easy-setup.enrollee.unittest.*" \
280 -e "service.resource-container.examples.*" \
281 -e "service.resource-container.unittests." \
282 -e "service.resource-container.bundle-api." \
283 -e "service.resource-encapsulation.examples.*" \
284 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
285 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
286 -e "service.resource-encapsulation.src.resourceCache.unittest." \
287 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
288 -e "service.resource-encapsulation.unittest." \
289 -e "service.resource-encapsulation.src.common.utils.*" \
290 -e "service.things-manager.sampleapp.*" \
291 -e "service.resource-hosting.unittest" \
292 -e "resource.c_common.oic_string.test.*" \
293 -e "service.notification.unittests.*" \
294 -e "service.notification.cpp-wrapper.unittest.*" \
295 -e "resource.c_common.*" \
296 -e "service.resource-directory.samples.*" \
297 -e "resource.csdk.security.src.*" \
298 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
299 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
300 -e "service.scene-manager.sampleapp.*" \
301 -e "service.scene-manager.unittests.*" \
302 -e "service.coap-http-proxy.unittests.*" \
304 -e "resource.csdk.security.*" \
305 -e "resource.csdk.resource-directory.*" \
306 -e "resource.csdk.routing.*" \
307 -e "resource.csdk.include.*" \
308 ${report_flags} -o ${test_report_file}
310 if [ $? -eq 0 ]; then
311 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
312 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
314 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
321 if [ "yes" = ${USE_TIMESTAMP} ]; then
322 report_dir="${module_name}_${time_stamp}"
324 report_dir="${module_name}"
326 report_file="report.${report_format}"
328 test_report_dir="TestReport/${report_format}/${report_dir}"
329 test_report_file="${test_report_dir}/${report_file}"
331 rm -rf "${test_report_dir}"
332 mkdir -p "${test_report_dir}"
334 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
336 #Setting Proper Location for UnitTest XML report generation
337 unittest_report_dir="UnitTestReport/${report_dir}"
338 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
339 rm -rf "${unittest_report_dir}"
340 mkdir -p "${unittest_report_dir}"
341 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
345 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/easy-setup/enrollee/unittests/easysetup_enrollee_test"
346 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/easy-setup/mediator/richsdk/unittests/easysetup_mediator_test"
349 for exe in ${tests_list[@]}; do
350 filename=$(basename -- "${exe}")
351 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
352 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
354 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
361 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
363 # Printing Unit Test Report Location
364 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
365 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
370 -e "examples.OICMiddle" \
372 -e "extlibs.hippomocks-master.*" \
373 -e "extlibs.rapidxml.*" \
376 -e "resource.csdk.connectivity.lib.*" \
377 -e "resource.csdk.connectivity.samples.linux.*" \
378 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
379 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
380 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
381 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
382 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
383 -e "resource.csdk.connectivity.test.*" \
384 -e "resource.csdk.logger.*" \
385 -e "resource.src.*" \
386 -e "resource.csdk.security.provisioning.include.*" \
387 -e "resource.csdk.security.provisioning.sample.*" \
388 -e "resource.csdk.security.provisioning.src.cloud.*" \
389 -e "resource.csdk.security.provisioning.unittest.*" \
390 -e "resource.csdk.security.unittest.*" \
391 -e "resource.csdk.stack.*" \
392 -e "resource.examples.*" \
393 -e "resource.unittests.*" \
394 -e "resource.include.*" \
395 -e "resource.oc_logger.*" \
396 -e "resource.provisioning.examples.*" \
397 -e "resource.provisioning.unittests.*" \
398 -e "resource.csdk.connectivity.common.src.logger.c.*" \
399 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
400 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
401 -e "service.resource-encapsulation.include.*" \
402 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
403 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
404 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
405 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
406 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
407 -e "service.resource-encapsulation.unittest.*" \
408 -e "service.resource-hosting.src.unittest.*" \
409 -e "service.resource-hosting.SampleApp.*" \
410 -e "service.things-manager.*" \
411 -e "service.notification.unittest.*" \
412 -e "service.easy-setup.unittest.*" \
413 -e "service.easy-setup.sample.*" \
414 -e "service.easy-setup.mediator.csdk.unittests.*" \
415 -e "service.easy-setup.mediator.richsdk.unittests.*" \
416 -e "service.easy-setup.enrollee.unittest.*" \
417 -e "service.resource-container.examples.*" \
418 -e "service.resource-container.unittests." \
419 -e "service.resource-container.bundle-api." \
420 -e "service.resource-encapsulation.examples.*" \
421 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
422 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
423 -e "service.resource-encapsulation.src.resourceCache.unittest." \
424 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
425 -e "service.resource-encapsulation.unittest." \
426 -e "service.resource-encapsulation.src.common.utils.*" \
427 -e "service.things-manager.sampleapp.*" \
428 -e "service.resource-hosting.unittest" \
429 -e "resource.c_common.oic_string.test.*" \
430 -e "service.notification.unittests.*" \
431 -e "service.notification.cpp-wrapper.unittest.*" \
432 -e "resource.c_common.*" \
433 -e "service.resource-directory.samples.*" \
434 -e "resource.csdk.security.src.*" \
435 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
436 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
437 -e "service.scene-manager.sampleapp.*" \
438 -e "service.scene-manager.unittests.*" \
439 -e "service.coap-http-proxy.unittests.*" \
441 -e "service.notification.*" \
442 -e "service.resource-encapsulation.*" \
443 -e "service.scene-manager.*" \
444 -e "service.coap-http-proxy.*" \
445 ${report_flags} -o ${test_report_file}
447 if [ $? -eq 0 ]; then
448 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
449 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
451 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
458 if [ "yes" = ${USE_TIMESTAMP} ]; then
459 report_dir="${module_name}_${time_stamp}"
461 report_dir="${module_name}"
463 report_file="report.${report_format}"
464 test_report_dir="TestReport/${report_format}/${report_dir}"
465 test_report_file="${test_report_dir}/${report_file}"
467 rm -rf "${test_report_dir}"
468 mkdir -p "${test_report_dir}"
470 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
472 #Setting Proper Location for UnitTest XML report generation
473 unittest_report_dir="UnitTestReport/${report_dir}"
474 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
475 rm -rf "${unittest_report_dir}"
476 mkdir -p "${unittest_report_dir}"
477 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
481 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/serverBuilder/rcs_server_test"
482 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/common/rcs_common_test"
483 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/resourceCache/unittests/cache_test"
484 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/resourceBroker/unittest/broker_test"
487 for exe in ${tests_list[@]}; do
488 filename=$(basename -- "${exe}")
489 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
490 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
492 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
499 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
501 # Printing Unit Test Report Location
502 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
503 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
508 -e "examples.OICMiddle" \
510 -e "extlibs.hippomocks-master.*" \
511 -e "extlibs.rapidxml.*" \
514 -e "resource.csdk.connectivity.lib.*" \
515 -e "resource.csdk.connectivity.samples.linux.*" \
516 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
517 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
518 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
519 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
520 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
521 -e "resource.csdk.connectivity.test.*" \
522 -e "resource.csdk.logger.*" \
523 -e "resource.src.*" \
524 -e "resource.csdk.security.provisioning.include.*" \
525 -e "resource.csdk.security.provisioning.sample.*" \
526 -e "resource.csdk.security.provisioning.src.cloud.*" \
527 -e "resource.csdk.security.provisioning.unittest.*" \
528 -e "resource.csdk.security.unittest.*" \
529 -e "resource.csdk.stack.*" \
530 -e "resource.examples.*" \
531 -e "resource.unittests.*" \
532 -e "resource.include.*" \
533 -e "resource.oc_logger.*" \
534 -e "resource.provisioning.examples.*" \
535 -e "resource.provisioning.unittests.*" \
536 -e "resource.csdk.connectivity.common.src.logger.c.*" \
537 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
538 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
539 -e "service.resource-encapsulation.include.*" \
540 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
541 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
542 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
543 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
544 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
545 -e "service.resource-encapsulation.unittest.*" \
546 -e "service.resource-hosting.src.unittest.*" \
547 -e "service.resource-hosting.SampleApp.*" \
548 -e "service.things-manager.*" \
549 -e "service.notification.unittest.*" \
550 -e "service.easy-setup.unittest.*" \
551 -e "service.easy-setup.sample.*" \
552 -e "service.easy-setup.mediator.csdk.unittests.*" \
553 -e "service.easy-setup.mediator.richsdk.unittests.*" \
554 -e "service.easy-setup.enrollee.unittest.*" \
555 -e "service.resource-container.examples.*" \
556 -e "service.resource-container.unittests." \
557 -e "service.resource-container.bundle-api." \
558 -e "service.resource-encapsulation.examples.*" \
559 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
560 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
561 -e "service.resource-encapsulation.src.resourceCache.unittest." \
562 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
563 -e "service.resource-encapsulation.unittest." \
564 -e "service.resource-encapsulation.src.common.utils.*" \
565 -e "service.things-manager.sampleapp.*" \
566 -e "service.resource-hosting.unittest" \
567 -e "resource.c_common.oic_string.test.*" \
568 -e "service.notification.unittests.*" \
569 -e "service.notification.cpp-wrapper.unittest.*" \
570 -e "resource.c_common.*" \
571 -e "service.resource-directory.samples.*" \
572 -e "resource.csdk.security.src.*" \
573 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
574 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
575 -e "service.scene-manager.sampleapp.*" \
576 -e "service.scene-manager.unittests.*" \
577 -e "service.coap-http-proxy.unittests.*" \
579 -e "service.easy-setup.*" \
580 -e "service.notification.*" \
581 -e "service.scene-manager.*" \
582 -e "service.coap-http-proxy.*" \
583 ${report_flags} -o ${test_report_file}
585 if [ $? -eq 0 ]; then
586 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
587 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
589 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
596 if [ "yes" = ${USE_TIMESTAMP} ]; then
597 report_dir="${module_name}_${time_stamp}"
599 report_dir="${module_name}"
601 report_file="report.${report_format}"
602 test_report_dir="TestReport/${report_format}/${report_dir}"
603 test_report_file="${test_report_dir}/${report_file}"
605 rm -rf "${test_report_dir}"
606 mkdir -p "${test_report_dir}"
608 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
610 #Setting Proper Location for UnitTest XML report generation
611 unittest_report_dir="UnitTestReport/${report_dir}"
612 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
613 rm -rf "${unittest_report_dir}"
614 mkdir -p "${unittest_report_dir}"
615 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
619 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_action_test"
620 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_col_test"
621 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_list_test"
622 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_test"
623 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_action_test"
624 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_collection_test"
625 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_list_test"
626 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_test"
629 for exe in ${tests_list[@]}; do
630 filename=$(basename -- "${exe}")
631 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
632 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
634 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
641 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
643 # Printing Unit Test Report Location
644 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
645 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
650 -e "examples.OICMiddle" \
652 -e "extlibs.hippomocks-master.*" \
653 -e "extlibs.rapidxml.*" \
656 -e "resource.csdk.connectivity.lib.*" \
657 -e "resource.csdk.connectivity.samples.linux.*" \
658 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
659 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
660 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
661 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
662 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
663 -e "resource.csdk.connectivity.test.*" \
664 -e "resource.csdk.logger.*" \
665 -e "resource.src.*" \
666 -e "resource.csdk.security.provisioning.include.*" \
667 -e "resource.csdk.security.provisioning.sample.*" \
668 -e "resource.csdk.security.provisioning.src.cloud.*" \
669 -e "resource.csdk.security.provisioning.unittest.*" \
670 -e "resource.csdk.security.unittest.*" \
671 -e "resource.csdk.stack.*" \
672 -e "resource.examples.*" \
673 -e "resource.unittests.*" \
674 -e "resource.include.*" \
675 -e "resource.oc_logger.*" \
676 -e "resource.provisioning.examples.*" \
677 -e "resource.provisioning.unittests.*" \
678 -e "resource.csdk.connectivity.common.src.logger.c.*" \
679 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
680 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
681 -e "service.resource-encapsulation.include.*" \
682 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
683 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
684 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
685 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
686 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
687 -e "service.resource-encapsulation.unittest.*" \
688 -e "service.resource-hosting.src.unittest.*" \
689 -e "service.resource-hosting.SampleApp.*" \
690 -e "service.things-manager.*" \
691 -e "service.notification.unittest.*" \
692 -e "service.easy-setup.unittest.*" \
693 -e "service.easy-setup.sample.*" \
694 -e "service.easy-setup.mediator.csdk.unittests.*" \
695 -e "service.easy-setup.mediator.richsdk.unittests.*" \
696 -e "service.easy-setup.enrollee.unittest.*" \
697 -e "service.resource-container.examples.*" \
698 -e "service.resource-container.unittests." \
699 -e "service.resource-container.bundle-api." \
700 -e "service.resource-encapsulation.examples.*" \
701 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
702 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
703 -e "service.resource-encapsulation.src.resourceCache.unittest." \
704 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
705 -e "service.resource-encapsulation.unittest." \
706 -e "service.resource-encapsulation.src.common.utils.*" \
707 -e "service.things-manager.sampleapp.*" \
708 -e "service.resource-hosting.unittest" \
709 -e "resource.c_common.oic_string.test.*" \
710 -e "service.notification.unittests.*" \
711 -e "service.notification.cpp-wrapper.unittest.*" \
712 -e "resource.c_common.*" \
713 -e "service.resource-directory.samples.*" \
714 -e "resource.csdk.security.src.*" \
715 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
716 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
717 -e "service.scene-manager.sampleapp.*" \
718 -e "service.scene-manager.unittests.*" \
719 -e "service.coap-http-proxy.unittests.*" \
721 -e "service.easy-setup.*" \
722 -e "service.notification.*" \
723 -e "service.resource-encapsulation.*" \
724 -e "service.coap-http-proxy.*" \
725 ${report_flags} -o ${test_report_file}
727 if [ $? -eq 0 ]; then
728 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
729 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
731 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
738 if [ "yes" = ${USE_TIMESTAMP} ]; then
739 report_dir="${module_name}_${time_stamp}"
741 report_dir="${module_name}"
743 report_file="report.${report_format}"
744 test_report_dir="TestReport/${report_format}/${report_dir}"
745 test_report_file="${test_report_dir}/${report_file}"
747 rm -rf "${test_report_dir}"
748 mkdir -p "${test_report_dir}"
750 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
752 #Setting Proper Location for UnitTest XML report generation
753 unittest_report_dir="UnitTestReport/${report_dir}"
754 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
755 rm -rf "${unittest_report_dir}"
756 mkdir -p "${unittest_report_dir}"
757 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
761 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/unittest/notification_consumer_test"
762 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/unittest/notification_provider_test"
763 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/cpp-wrapper/unittest/notification_consumer_wrapper_test"
764 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/cpp-wrapper/unittest/notification_provider_wrapper_test"
767 for exe in ${tests_list[@]}; do
768 filename=$(basename -- "${exe}")
769 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
770 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
772 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
779 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
781 # Printing Unit Test Report Location
782 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
783 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
788 -e "examples.OICMiddle" \
790 -e "extlibs.hippomocks-master.*" \
791 -e "extlibs.rapidxml.*" \
794 -e "resource.csdk.connectivity.lib.*" \
795 -e "resource.csdk.connectivity.samples.linux.*" \
796 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
797 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
798 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
799 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
800 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
801 -e "resource.csdk.connectivity.test.*" \
802 -e "resource.csdk.logger.*" \
803 -e "resource.src.*" \
804 -e "resource.csdk.security.provisioning.include.*" \
805 -e "resource.csdk.security.provisioning.sample.*" \
806 -e "resource.csdk.security.provisioning.src.cloud.*" \
807 -e "resource.csdk.security.provisioning.unittest.*" \
808 -e "resource.csdk.security.unittest.*" \
809 -e "resource.csdk.stack.*" \
810 -e "resource.examples.*" \
811 -e "resource.unittests.*" \
812 -e "resource.include.*" \
813 -e "resource.oc_logger.*" \
814 -e "resource.provisioning.examples.*" \
815 -e "resource.provisioning.unittests.*" \
816 -e "resource.csdk.connectivity.common.src.logger.c.*" \
817 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
818 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
819 -e "service.resource-encapsulation.include.*" \
820 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
821 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
822 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
823 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
824 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
825 -e "service.resource-encapsulation.unittest.*" \
826 -e "service.resource-hosting.src.unittest.*" \
827 -e "service.resource-hosting.SampleApp.*" \
828 -e "service.things-manager.*" \
829 -e "service.notification.unittest.*" \
830 -e "service.easy-setup.unittest.*" \
831 -e "service.easy-setup.sample.*" \
832 -e "service.easy-setup.mediator.csdk.unittests.*" \
833 -e "service.easy-setup.mediator.richsdk.unittests.*" \
834 -e "service.easy-setup.enrollee.unittest.*" \
835 -e "service.resource-container.examples.*" \
836 -e "service.resource-container.unittests." \
837 -e "service.resource-container.bundle-api." \
838 -e "service.resource-encapsulation.examples.*" \
839 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
840 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
841 -e "service.resource-encapsulation.src.resourceCache.unittest." \
842 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
843 -e "service.resource-encapsulation.unittest." \
844 -e "service.resource-encapsulation.src.common.utils.*" \
845 -e "service.things-manager.sampleapp.*" \
846 -e "service.resource-hosting.unittest" \
847 -e "resource.c_common.oic_string.test.*" \
848 -e "service.notification.unittests.*" \
849 -e "service.notification.cpp-wrapper.unittest.*" \
850 -e "resource.c_common.*" \
851 -e "service.resource-directory.samples.*" \
852 -e "resource.csdk.security.src.*" \
853 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
854 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
855 -e "service.scene-manager.sampleapp.*" \
856 -e "service.scene-manager.unittests.*" \
857 -e "service.coap-http-proxy.unittests.*" \
859 -e "service.easy-setup.*" \
860 -e "service.resource-encapsulation.*" \
861 -e "service.scene-manager.*" \
862 -e "service.coap-http-proxy.*" \
863 -e "service.notification.cpp-wrapper.provider.inc.*" \
864 -e "service.notification.cpp-wrapper.consumer.inc.*" \
865 ${report_flags} -o ${test_report_file}
867 if [ $? -eq 0 ]; then
868 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
869 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
871 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
875 generate_report_CHP()
878 if [ "yes" = ${USE_TIMESTAMP} ]; then
879 report_dir="${module_name}_${time_stamp}"
881 report_dir="${module_name}"
884 report_file="report.${report_format}"
885 test_report_dir="TestReport/${report_format}/${report_dir}"
886 test_report_file="${test_report_dir}/${report_file}"
888 rm -rf "${test_report_dir}"
889 mkdir -p "${test_report_dir}"
891 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
893 #Setting Proper Location for UnitTest XML report generation
894 unittest_report_dir="UnitTestReport/${report_dir}"
895 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
896 rm -rf "${unittest_report_dir}"
897 mkdir -p "${unittest_report_dir}"
898 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
902 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/coap-http-proxy/unittests/CoAP_unit_test"
905 for exe in ${tests_list[@]}; do
906 filename=$(basename -- "${exe}")
907 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
908 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
910 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
917 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
919 # Printing Unit Test Report Location
920 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
921 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
926 -e "examples.OICMiddle" \
928 -e "extlibs.hippomocks-master.*" \
929 -e "extlibs.rapidxml.*" \
932 -e "resource.csdk.connectivity.lib.*" \
933 -e "resource.csdk.connectivity.samples.linux.*" \
934 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
935 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
936 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
937 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
938 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
939 -e "resource.csdk.connectivity.test.*" \
940 -e "resource.csdk.logger.*" \
941 -e "resource.src.*" \
942 -e "resource.csdk.security.provisioning.include.*" \
943 -e "resource.csdk.security.provisioning.sample.*" \
944 -e "resource.csdk.security.provisioning.src.cloud.*" \
945 -e "resource.csdk.security.provisioning.unittest.*" \
946 -e "resource.csdk.security.unittest.*" \
947 -e "resource.csdk.stack.*" \
948 -e "resource.examples.*" \
949 -e "resource.unittests.*" \
950 -e "resource.include.*" \
951 -e "resource.oc_logger.*" \
952 -e "resource.provisioning.examples.*" \
953 -e "resource.provisioning.unittests.*" \
954 -e "resource.csdk.connectivity.common.src.logger.c.*" \
955 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
956 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
957 -e "service.resource-encapsulation.include.*" \
958 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
959 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
960 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
961 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
962 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
963 -e "service.resource-encapsulation.unittest.*" \
964 -e "service.resource-hosting.src.unittest.*" \
965 -e "service.resource-hosting.SampleApp.*" \
966 -e "service.things-manager.*" \
967 -e "service.notification.unittest.*" \
968 -e "service.easy-setup.unittest.*" \
969 -e "service.easy-setup.sample.*" \
970 -e "service.easy-setup.mediator.csdk.unittests.*" \
971 -e "service.easy-setup.mediator.richsdk.unittests.*" \
972 -e "service.easy-setup.enrollee.unittest.*" \
973 -e "service.resource-container.examples.*" \
974 -e "service.resource-container.unittests." \
975 -e "service.resource-container.bundle-api." \
976 -e "service.resource-encapsulation.examples.*" \
977 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
978 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
979 -e "service.resource-encapsulation.src.resourceCache.unittest." \
980 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
981 -e "service.resource-encapsulation.unittest." \
982 -e "service.resource-encapsulation.src.common.utils.*" \
983 -e "service.things-manager.sampleapp.*" \
984 -e "service.resource-hosting.unittest" \
985 -e "resource.c_common.oic_string.test.*" \
986 -e "service.notification.unittests.*" \
987 -e "service.notification.cpp-wrapper.unittest.*" \
988 -e "resource.c_common.*" \
989 -e "service.resource-directory.samples.*" \
990 -e "resource.csdk.security.src.*" \
991 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
992 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
993 -e "service.scene-manager.sampleapp.*" \
994 -e "service.scene-manager.unittests.*" \
995 -e "service.coap-http-proxy.unittests.*" \
997 -e "service.easy-setup.*" \
998 -e "service.notification.*" \
999 -e "service.resource-encapsulation.*" \
1000 -e "service.scene-manager.*" \
1001 ${report_flags} -o ${test_report_file}
1003 if [ $? -eq 0 ]; then
1004 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
1005 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
1007 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
1013 case ${module_name} in
1049 process_cmd_args "$@"