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"
205 for exe in ${tests_list[@]}; do
206 filename=$(basename -- "${exe}")
207 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
208 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
210 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
217 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
219 # Printing Unit Test Report Location
220 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
221 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
226 -e "examples.OICMiddle" \
228 -e "extlibs.hippomocks-master.*" \
229 -e "extlibs.rapidxml.*" \
232 -e "resource.csdk.connectivity.lib.*" \
233 -e "resource.csdk.connectivity.samples.linux.*" \
234 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
235 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
236 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
237 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
238 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
239 -e "resource.csdk.connectivity.test.*" \
240 -e "resource.csdk.logger.*" \
241 -e "resource.src.*" \
242 -e "resource.csdk.security.provisioning.include.*" \
243 -e "resource.csdk.security.provisioning.sample.*" \
244 -e "resource.csdk.security.provisioning.src.cloud.*" \
245 -e "resource.csdk.security.provisioning.unittest.*" \
246 -e "resource.csdk.security.unittest.*" \
247 -e "resource.csdk.stack.*" \
248 -e "resource.examples.*" \
249 -e "resource.unittests.*" \
250 -e "resource.include.*" \
251 -e "resource.oc_logger.*" \
252 -e "resource.provisioning.examples.*" \
253 -e "resource.provisioning.unittests.*" \
254 -e "resource.csdk.connectivity.common.src.logger.c.*" \
255 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
256 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
257 -e "service.resource-encapsulation.include.*" \
258 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
259 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
260 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
261 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
262 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
263 -e "service.resource-encapsulation.unittest.*" \
264 -e "service.resource-hosting.src.unittest.*" \
265 -e "service.resource-hosting.SampleApp.*" \
266 -e "service.things-manager.*" \
267 -e "service.notification.unittest.*" \
268 -e "service.easy-setup.unittest.*" \
269 -e "service.easy-setup.sample.*" \
270 -e "service.easy-setup.mediator.csdk.unittests.*" \
271 -e "service.easy-setup.mediator.richsdk.unittests.*" \
272 -e "service.easy-setup.enrollee.unittest.*" \
273 -e "service.resource-container.examples.*" \
274 -e "service.resource-container.unittests." \
275 -e "service.resource-container.bundle-api." \
276 -e "service.resource-encapsulation.examples.*" \
277 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
278 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
279 -e "service.resource-encapsulation.src.resourceCache.unittest." \
280 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
281 -e "service.resource-encapsulation.unittest." \
282 -e "service.resource-encapsulation.src.common.utils.*" \
283 -e "service.things-manager.sampleapp.*" \
284 -e "service.resource-hosting.unittest" \
285 -e "resource.c_common.oic_string.test.*" \
286 -e "service.notification.unittests.*" \
287 -e "service.notification.cpp-wrapper.unittest.*" \
288 -e "resource.c_common.*" \
289 -e "service.resource-directory.samples.*" \
290 -e "resource.csdk.security.src.*" \
291 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
292 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
293 -e "service.scene-manager.sampleapp.*" \
294 -e "service.scene-manager.unittests.*" \
295 -e "service.coap-http-proxy.unittests.*" \
297 -e "resource.csdk.security.*" \
298 -e "resource.csdk.resource-directory.*" \
299 -e "resource.csdk.routing.*" \
300 -e "resource.csdk.include.*" \
301 ${report_flags} -o ${test_report_file}
303 if [ $? -eq 0 ]; then
304 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
305 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
307 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
314 if [ "yes" = ${USE_TIMESTAMP} ]; then
315 report_dir="${module_name}_${time_stamp}"
317 report_dir="${module_name}"
319 report_file="report.${report_format}"
321 test_report_dir="TestReport/${report_format}/${report_dir}"
322 test_report_file="${test_report_dir}/${report_file}"
324 rm -rf "${test_report_dir}"
325 mkdir -p "${test_report_dir}"
327 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
329 #Setting Proper Location for UnitTest XML report generation
330 unittest_report_dir="UnitTestReport/${report_dir}"
331 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
332 rm -rf "${unittest_report_dir}"
333 mkdir -p "${unittest_report_dir}"
334 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
338 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/easy-setup/enrollee/unittests/easysetup_enrollee_test"
339 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/easy-setup/mediator/richsdk/unittests/easysetup_mediator_test"
342 for exe in ${tests_list[@]}; do
343 filename=$(basename -- "${exe}")
344 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
345 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
347 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
354 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
356 # Printing Unit Test Report Location
357 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
358 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
363 -e "examples.OICMiddle" \
365 -e "extlibs.hippomocks-master.*" \
366 -e "extlibs.rapidxml.*" \
369 -e "resource.csdk.connectivity.lib.*" \
370 -e "resource.csdk.connectivity.samples.linux.*" \
371 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
372 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
373 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
374 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
375 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
376 -e "resource.csdk.connectivity.test.*" \
377 -e "resource.csdk.logger.*" \
378 -e "resource.src.*" \
379 -e "resource.csdk.security.provisioning.include.*" \
380 -e "resource.csdk.security.provisioning.sample.*" \
381 -e "resource.csdk.security.provisioning.src.cloud.*" \
382 -e "resource.csdk.security.provisioning.unittest.*" \
383 -e "resource.csdk.security.unittest.*" \
384 -e "resource.csdk.stack.*" \
385 -e "resource.examples.*" \
386 -e "resource.unittests.*" \
387 -e "resource.include.*" \
388 -e "resource.oc_logger.*" \
389 -e "resource.provisioning.examples.*" \
390 -e "resource.provisioning.unittests.*" \
391 -e "resource.csdk.connectivity.common.src.logger.c.*" \
392 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
393 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
394 -e "service.resource-encapsulation.include.*" \
395 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
396 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
397 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
398 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
399 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
400 -e "service.resource-encapsulation.unittest.*" \
401 -e "service.resource-hosting.src.unittest.*" \
402 -e "service.resource-hosting.SampleApp.*" \
403 -e "service.things-manager.*" \
404 -e "service.notification.unittest.*" \
405 -e "service.easy-setup.unittest.*" \
406 -e "service.easy-setup.sample.*" \
407 -e "service.easy-setup.mediator.csdk.unittests.*" \
408 -e "service.easy-setup.mediator.richsdk.unittests.*" \
409 -e "service.easy-setup.enrollee.unittest.*" \
410 -e "service.resource-container.examples.*" \
411 -e "service.resource-container.unittests." \
412 -e "service.resource-container.bundle-api." \
413 -e "service.resource-encapsulation.examples.*" \
414 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
415 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
416 -e "service.resource-encapsulation.src.resourceCache.unittest." \
417 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
418 -e "service.resource-encapsulation.unittest." \
419 -e "service.resource-encapsulation.src.common.utils.*" \
420 -e "service.things-manager.sampleapp.*" \
421 -e "service.resource-hosting.unittest" \
422 -e "resource.c_common.oic_string.test.*" \
423 -e "service.notification.unittests.*" \
424 -e "service.notification.cpp-wrapper.unittest.*" \
425 -e "resource.c_common.*" \
426 -e "service.resource-directory.samples.*" \
427 -e "resource.csdk.security.src.*" \
428 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
429 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
430 -e "service.scene-manager.sampleapp.*" \
431 -e "service.scene-manager.unittests.*" \
432 -e "service.coap-http-proxy.unittests.*" \
434 -e "service.notification.*" \
435 -e "service.resource-encapsulation.*" \
436 -e "service.scene-manager.*" \
437 -e "service.coap-http-proxy.*" \
438 ${report_flags} -o ${test_report_file}
440 if [ $? -eq 0 ]; then
441 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
442 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
444 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
451 if [ "yes" = ${USE_TIMESTAMP} ]; then
452 report_dir="${module_name}_${time_stamp}"
454 report_dir="${module_name}"
456 report_file="report.${report_format}"
457 test_report_dir="TestReport/${report_format}/${report_dir}"
458 test_report_file="${test_report_dir}/${report_file}"
460 rm -rf "${test_report_dir}"
461 mkdir -p "${test_report_dir}"
463 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
465 #Setting Proper Location for UnitTest XML report generation
466 unittest_report_dir="UnitTestReport/${report_dir}"
467 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
468 rm -rf "${unittest_report_dir}"
469 mkdir -p "${unittest_report_dir}"
470 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
474 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/serverBuilder/rcs_server_test"
475 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/unittests/rcs_client_test"
476 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/common/primitiveResource/unittests/rcs_common_test"
477 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/resourceCache/unittests/cache_test"
478 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/resource-encapsulation/src/resourceBroker/unittest/broker_test"
481 for exe in ${tests_list[@]}; do
482 filename=$(basename -- "${exe}")
483 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
484 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
486 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
493 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
495 # Printing Unit Test Report Location
496 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
497 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
502 -e "examples.OICMiddle" \
504 -e "extlibs.hippomocks-master.*" \
505 -e "extlibs.rapidxml.*" \
508 -e "resource.csdk.connectivity.lib.*" \
509 -e "resource.csdk.connectivity.samples.linux.*" \
510 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
511 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
512 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
513 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
514 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
515 -e "resource.csdk.connectivity.test.*" \
516 -e "resource.csdk.logger.*" \
517 -e "resource.src.*" \
518 -e "resource.csdk.security.provisioning.include.*" \
519 -e "resource.csdk.security.provisioning.sample.*" \
520 -e "resource.csdk.security.provisioning.src.cloud.*" \
521 -e "resource.csdk.security.provisioning.unittest.*" \
522 -e "resource.csdk.security.unittest.*" \
523 -e "resource.csdk.stack.*" \
524 -e "resource.examples.*" \
525 -e "resource.unittests.*" \
526 -e "resource.include.*" \
527 -e "resource.oc_logger.*" \
528 -e "resource.provisioning.examples.*" \
529 -e "resource.provisioning.unittests.*" \
530 -e "resource.csdk.connectivity.common.src.logger.c.*" \
531 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
532 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
533 -e "service.resource-encapsulation.include.*" \
534 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
535 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
536 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
537 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
538 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
539 -e "service.resource-encapsulation.unittest.*" \
540 -e "service.resource-hosting.src.unittest.*" \
541 -e "service.resource-hosting.SampleApp.*" \
542 -e "service.things-manager.*" \
543 -e "service.notification.unittest.*" \
544 -e "service.easy-setup.unittest.*" \
545 -e "service.easy-setup.sample.*" \
546 -e "service.easy-setup.mediator.csdk.unittests.*" \
547 -e "service.easy-setup.mediator.richsdk.unittests.*" \
548 -e "service.easy-setup.enrollee.unittest.*" \
549 -e "service.resource-container.examples.*" \
550 -e "service.resource-container.unittests." \
551 -e "service.resource-container.bundle-api." \
552 -e "service.resource-encapsulation.examples.*" \
553 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
554 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
555 -e "service.resource-encapsulation.src.resourceCache.unittest." \
556 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
557 -e "service.resource-encapsulation.unittest." \
558 -e "service.resource-encapsulation.src.common.utils.*" \
559 -e "service.things-manager.sampleapp.*" \
560 -e "service.resource-hosting.unittest" \
561 -e "resource.c_common.oic_string.test.*" \
562 -e "service.notification.unittests.*" \
563 -e "service.notification.cpp-wrapper.unittest.*" \
564 -e "resource.c_common.*" \
565 -e "service.resource-directory.samples.*" \
566 -e "resource.csdk.security.src.*" \
567 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
568 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
569 -e "service.scene-manager.sampleapp.*" \
570 -e "service.scene-manager.unittests.*" \
571 -e "service.coap-http-proxy.unittests.*" \
573 -e "service.easy-setup.*" \
574 -e "service.notification.*" \
575 -e "service.scene-manager.*" \
576 -e "service.coap-http-proxy.*" \
577 ${report_flags} -o ${test_report_file}
579 if [ $? -eq 0 ]; then
580 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
581 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
583 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
590 if [ "yes" = ${USE_TIMESTAMP} ]; then
591 report_dir="${module_name}_${time_stamp}"
593 report_dir="${module_name}"
595 report_file="report.${report_format}"
596 test_report_dir="TestReport/${report_format}/${report_dir}"
597 test_report_file="${test_report_dir}/${report_file}"
599 rm -rf "${test_report_dir}"
600 mkdir -p "${test_report_dir}"
602 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
604 #Setting Proper Location for UnitTest XML report generation
605 unittest_report_dir="UnitTestReport/${report_dir}"
606 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
607 rm -rf "${unittest_report_dir}"
608 mkdir -p "${unittest_report_dir}"
609 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
613 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_action_test"
614 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_col_test"
615 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_list_test"
616 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/remote_scene_test"
617 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_action_test"
618 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_collection_test"
619 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_list_test"
620 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/scene-manager/unittests/scene_test"
623 for exe in ${tests_list[@]}; do
624 filename=$(basename -- "${exe}")
625 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
626 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
628 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
635 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
637 # Printing Unit Test Report Location
638 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
639 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
644 -e "examples.OICMiddle" \
646 -e "extlibs.hippomocks-master.*" \
647 -e "extlibs.rapidxml.*" \
650 -e "resource.csdk.connectivity.lib.*" \
651 -e "resource.csdk.connectivity.samples.linux.*" \
652 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
653 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
654 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
655 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
656 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
657 -e "resource.csdk.connectivity.test.*" \
658 -e "resource.csdk.logger.*" \
659 -e "resource.src.*" \
660 -e "resource.csdk.security.provisioning.include.*" \
661 -e "resource.csdk.security.provisioning.sample.*" \
662 -e "resource.csdk.security.provisioning.src.cloud.*" \
663 -e "resource.csdk.security.provisioning.unittest.*" \
664 -e "resource.csdk.security.unittest.*" \
665 -e "resource.csdk.stack.*" \
666 -e "resource.examples.*" \
667 -e "resource.unittests.*" \
668 -e "resource.include.*" \
669 -e "resource.oc_logger.*" \
670 -e "resource.provisioning.examples.*" \
671 -e "resource.provisioning.unittests.*" \
672 -e "resource.csdk.connectivity.common.src.logger.c.*" \
673 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
674 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
675 -e "service.resource-encapsulation.include.*" \
676 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
677 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
678 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
679 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
680 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
681 -e "service.resource-encapsulation.unittest.*" \
682 -e "service.resource-hosting.src.unittest.*" \
683 -e "service.resource-hosting.SampleApp.*" \
684 -e "service.things-manager.*" \
685 -e "service.notification.unittest.*" \
686 -e "service.easy-setup.unittest.*" \
687 -e "service.easy-setup.sample.*" \
688 -e "service.easy-setup.mediator.csdk.unittests.*" \
689 -e "service.easy-setup.mediator.richsdk.unittests.*" \
690 -e "service.easy-setup.enrollee.unittest.*" \
691 -e "service.resource-container.examples.*" \
692 -e "service.resource-container.unittests." \
693 -e "service.resource-container.bundle-api." \
694 -e "service.resource-encapsulation.examples.*" \
695 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
696 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
697 -e "service.resource-encapsulation.src.resourceCache.unittest." \
698 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
699 -e "service.resource-encapsulation.unittest." \
700 -e "service.resource-encapsulation.src.common.utils.*" \
701 -e "service.things-manager.sampleapp.*" \
702 -e "service.resource-hosting.unittest" \
703 -e "resource.c_common.oic_string.test.*" \
704 -e "service.notification.unittests.*" \
705 -e "service.notification.cpp-wrapper.unittest.*" \
706 -e "resource.c_common.*" \
707 -e "service.resource-directory.samples.*" \
708 -e "resource.csdk.security.src.*" \
709 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
710 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
711 -e "service.scene-manager.sampleapp.*" \
712 -e "service.scene-manager.unittests.*" \
713 -e "service.coap-http-proxy.unittests.*" \
715 -e "service.easy-setup.*" \
716 -e "service.notification.*" \
717 -e "service.resource-encapsulation.*" \
718 -e "service.coap-http-proxy.*" \
719 ${report_flags} -o ${test_report_file}
721 if [ $? -eq 0 ]; then
722 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
723 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
725 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
732 if [ "yes" = ${USE_TIMESTAMP} ]; then
733 report_dir="${module_name}_${time_stamp}"
735 report_dir="${module_name}"
737 report_file="report.${report_format}"
738 test_report_dir="TestReport/${report_format}/${report_dir}"
739 test_report_file="${test_report_dir}/${report_file}"
741 rm -rf "${test_report_dir}"
742 mkdir -p "${test_report_dir}"
744 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
746 #Setting Proper Location for UnitTest XML report generation
747 unittest_report_dir="UnitTestReport/${report_dir}"
748 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
749 rm -rf "${unittest_report_dir}"
750 mkdir -p "${unittest_report_dir}"
751 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
755 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/unittest/notification_consumer_test"
756 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/unittest/notification_provider_test"
757 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/cpp-wrapper/unittest/notification_consumer_wrapper_test"
758 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/notification/cpp-wrapper/unittest/notification_provider_wrapper_test"
761 for exe in ${tests_list[@]}; do
762 filename=$(basename -- "${exe}")
763 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
764 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
766 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
773 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
775 # Printing Unit Test Report Location
776 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
777 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
782 -e "examples.OICMiddle" \
784 -e "extlibs.hippomocks-master.*" \
785 -e "extlibs.rapidxml.*" \
788 -e "resource.csdk.connectivity.lib.*" \
789 -e "resource.csdk.connectivity.samples.linux.*" \
790 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
791 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
792 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
793 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
794 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
795 -e "resource.csdk.connectivity.test.*" \
796 -e "resource.csdk.logger.*" \
797 -e "resource.src.*" \
798 -e "resource.csdk.security.provisioning.include.*" \
799 -e "resource.csdk.security.provisioning.sample.*" \
800 -e "resource.csdk.security.provisioning.src.cloud.*" \
801 -e "resource.csdk.security.provisioning.unittest.*" \
802 -e "resource.csdk.security.unittest.*" \
803 -e "resource.csdk.stack.*" \
804 -e "resource.examples.*" \
805 -e "resource.unittests.*" \
806 -e "resource.include.*" \
807 -e "resource.oc_logger.*" \
808 -e "resource.provisioning.examples.*" \
809 -e "resource.provisioning.unittests.*" \
810 -e "resource.csdk.connectivity.common.src.logger.c.*" \
811 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
812 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
813 -e "service.resource-encapsulation.include.*" \
814 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
815 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
816 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
817 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
818 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
819 -e "service.resource-encapsulation.unittest.*" \
820 -e "service.resource-hosting.src.unittest.*" \
821 -e "service.resource-hosting.SampleApp.*" \
822 -e "service.things-manager.*" \
823 -e "service.notification.unittest.*" \
824 -e "service.easy-setup.unittest.*" \
825 -e "service.easy-setup.sample.*" \
826 -e "service.easy-setup.mediator.csdk.unittests.*" \
827 -e "service.easy-setup.mediator.richsdk.unittests.*" \
828 -e "service.easy-setup.enrollee.unittest.*" \
829 -e "service.resource-container.examples.*" \
830 -e "service.resource-container.unittests." \
831 -e "service.resource-container.bundle-api." \
832 -e "service.resource-encapsulation.examples.*" \
833 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
834 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
835 -e "service.resource-encapsulation.src.resourceCache.unittest." \
836 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
837 -e "service.resource-encapsulation.unittest." \
838 -e "service.resource-encapsulation.src.common.utils.*" \
839 -e "service.things-manager.sampleapp.*" \
840 -e "service.resource-hosting.unittest" \
841 -e "resource.c_common.oic_string.test.*" \
842 -e "service.notification.unittests.*" \
843 -e "service.notification.cpp-wrapper.unittest.*" \
844 -e "resource.c_common.*" \
845 -e "service.resource-directory.samples.*" \
846 -e "resource.csdk.security.src.*" \
847 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
848 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
849 -e "service.scene-manager.sampleapp.*" \
850 -e "service.scene-manager.unittests.*" \
851 -e "service.coap-http-proxy.unittests.*" \
853 -e "service.easy-setup.*" \
854 -e "service.resource-encapsulation.*" \
855 -e "service.scene-manager.*" \
856 -e "service.coap-http-proxy.*" \
857 -e "service.notification.cpp-wrapper.provider.inc.*" \
858 -e "service.notification.cpp-wrapper.consumer.inc.*" \
859 ${report_flags} -o ${test_report_file}
861 if [ $? -eq 0 ]; then
862 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
863 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
865 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
869 generate_report_CHP()
872 if [ "yes" = ${USE_TIMESTAMP} ]; then
873 report_dir="${module_name}_${time_stamp}"
875 report_dir="${module_name}"
878 report_file="report.${report_format}"
879 test_report_dir="TestReport/${report_format}/${report_dir}"
880 test_report_file="${test_report_dir}/${report_file}"
882 rm -rf "${test_report_dir}"
883 mkdir -p "${test_report_dir}"
885 LD_LIBRARY_PATH="${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug"
887 #Setting Proper Location for UnitTest XML report generation
888 unittest_report_dir="UnitTestReport/${report_dir}"
889 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
890 rm -rf "${unittest_report_dir}"
891 mkdir -p "${unittest_report_dir}"
892 UNITTEST_XML_REPORT_FLAG_PREFIX="--gtest_output=xml:${unittest_report_dir}"
896 "${IOTIVITY_BASE}/out/${IOTIVITY_TARGET_OS}/${IOTIVITY_TARGET_ARCH}/debug/service/coap-http-proxy/unittests/CoAP_unit_test"
899 for exe in ${tests_list[@]}; do
900 filename=$(basename -- "${exe}")
901 if [ -n "${UNITTEST_XML_REPORT_FLAG_PREFIX}" ]; then
902 UNITTEST_XML_REPORT_FLAG="${UNITTEST_XML_REPORT_FLAG_PREFIX}/${filename}.xml"
904 eval "${exe} ${UNITTEST_XML_REPORT_FLAG}"
911 echo -e "Generating ${GREEN}${module_name}${NO_COLOUR} Reports"
913 # Printing Unit Test Report Location
914 if [ "yes" = ${UNITTEST_XML_REPORT} ]; then
915 echo -e "${GREEN}${module_name}${NO_COLOUR} UnitTest Report Location: ${BLUE}${unittest_report_dir}${NO_COLOUR}"
920 -e "examples.OICMiddle" \
922 -e "extlibs.hippomocks-master.*" \
923 -e "extlibs.rapidxml.*" \
926 -e "resource.csdk.connectivity.lib.*" \
927 -e "resource.csdk.connectivity.samples.linux.*" \
928 -e "resource.csdk.security.provisioning.ck_manager.sample.*" \
929 -e "resource.csdk.security.provisioning.ck_manager.unittest.*" \
930 -e "resource.csdk.connectivity.scr.bt_edr_adapter.*" \
931 -e "resource.csdk.connectivity.src.bt_le_adapter.*" \
932 -e "resource.csdk.connectivity.src.bt_edr_adapter.*" \
933 -e "resource.csdk.connectivity.test.*" \
934 -e "resource.csdk.logger.*" \
935 -e "resource.src.*" \
936 -e "resource.csdk.security.provisioning.include.*" \
937 -e "resource.csdk.security.provisioning.sample.*" \
938 -e "resource.csdk.security.provisioning.src.cloud.*" \
939 -e "resource.csdk.security.provisioning.unittest.*" \
940 -e "resource.csdk.security.unittest.*" \
941 -e "resource.csdk.stack.*" \
942 -e "resource.examples.*" \
943 -e "resource.unittests.*" \
944 -e "resource.include.*" \
945 -e "resource.oc_logger.*" \
946 -e "resource.provisioning.examples.*" \
947 -e "resource.provisioning.unittests.*" \
948 -e "resource.csdk.connectivity.common.src.logger.c.*" \
949 -e "resource.csdk.connectivity.common.src.oic_console_logger.c.*" \
950 -e "resource.csdk.connectivity.common.src.oic_logger.c.*" \
951 -e "service.resource-encapsulation.include.*" \
952 -e "service.resource-encapsulation.src.common.expiryTimer.*" \
953 -e "service.resource-encapsulation.src.common.primitiveResource.unittests.*" \
954 -e "service.resource-encapsulation.src.resourceBroker.unittest.*" \
955 -e "service.resource-encapsulation.src.resourceCache.unittest.*" \
956 -e "service.resource-encapsulation.src.serverBuilder.unittest.*" \
957 -e "service.resource-encapsulation.unittest.*" \
958 -e "service.resource-hosting.src.unittest.*" \
959 -e "service.resource-hosting.SampleApp.*" \
960 -e "service.things-manager.*" \
961 -e "service.notification.unittest.*" \
962 -e "service.easy-setup.unittest.*" \
963 -e "service.easy-setup.sample.*" \
964 -e "service.easy-setup.mediator.csdk.unittests.*" \
965 -e "service.easy-setup.mediator.richsdk.unittests.*" \
966 -e "service.easy-setup.enrollee.unittest.*" \
967 -e "service.resource-container.examples.*" \
968 -e "service.resource-container.unittests." \
969 -e "service.resource-container.bundle-api." \
970 -e "service.resource-encapsulation.examples.*" \
971 -e "service.resource-encapsulation.src.common.primitiveResource.unittests." \
972 -e "service.resource-encapsulation.src.resourceBroker.unittest." \
973 -e "service.resource-encapsulation.src.resourceCache.unittest." \
974 -e "service.resource-encapsulation.src.serverBuilder.unittest." \
975 -e "service.resource-encapsulation.unittest." \
976 -e "service.resource-encapsulation.src.common.utils.*" \
977 -e "service.things-manager.sampleapp.*" \
978 -e "service.resource-hosting.unittest" \
979 -e "resource.c_common.oic_string.test.*" \
980 -e "service.notification.unittests.*" \
981 -e "service.notification.cpp-wrapper.unittest.*" \
982 -e "resource.c_common.*" \
983 -e "service.resource-directory.samples.*" \
984 -e "resource.csdk.security.src.*" \
985 -e "resource.csdk.connectivity.src.adapter_util.pkix.*" \
986 -e "resource.csdk.connectivity.src.adapter_util.caadapternetdtls.c" \
987 -e "service.scene-manager.sampleapp.*" \
988 -e "service.scene-manager.unittests.*" \
989 -e "service.coap-http-proxy.unittests.*" \
991 -e "service.easy-setup.*" \
992 -e "service.notification.*" \
993 -e "service.resource-encapsulation.*" \
994 -e "service.scene-manager.*" \
995 ${report_flags} -o ${test_report_file}
997 if [ $? -eq 0 ]; then
998 echo -e "${GREEN}${module_name}${NO_COLOUR} Coverage Report Location: ${BLUE}${test_report_file}${NO_COLOUR}"
999 echo -e "${GREEN}${module_name}${NO_COLOUR} Report Generated ${GREEN}Successfully!${NO_COLOUR}"
1001 echo -e "${RED}${module_name}${NO_COLOUR} Report Generation ${RED}Failed!${NO_COLOUR}"
1007 case ${module_name} in
1043 process_cmd_args "$@"