#
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-Import('env')
import os
import os.path
-provisiontests_env = env.Clone()
+from tools.scons.RunTest import run_test
+# SConscript file for Local PKI google tests
+gtest_env = SConscript('#extlibs/gtest/SConscript')
+provisiontests_env = gtest_env.Clone()
src_dir = provisiontests_env.get('SRC_DIR')
-with_ra = env.get('WITH_RA')
-with_ra_ibb = env.get('WITH_RA_IBB')
+target_os = provisiontests_env.get('TARGET_OS')
+with_ra = provisiontests_env.get('WITH_RA')
+with_ra_ibb = provisiontests_env.get('WITH_RA_IBB')
+
######################################################################
# Build flags
######################################################################
'../../csdk/security/provisioning/include',
'../../csdk/security/provisioning/include/oxm',
'../../csdk/security/provisioning/include/internal',
+ '../../csdk/security/provisioning/include/cloud',
'../../csdk/stack/include/internal',
'../../csdk/connectivity/api',
+ '../../csdk/connectivity/inc/pkix',
'../../csdk/connectivity/external/inc',
'../../csdk/ocsocket/include',
'../../csdk/ocrandom/include',
'../../csdk/logger/include',
- '../../../extlibs/gtest/gtest-1.7.0/include',
+ '../../csdk/connectivity/lib/libcoap-4.1.1/include',
+ '../../../extlibs/cjson/',
'../../../extlibs/hippomocks-master/HippoMocks',
'../../../extlibs/hippomocks-master/HippoMocksTest'
])
-provisiontests_env.AppendUnique(CXXFLAGS = ['-std=c++0x', '-Wall', '-pthread'])
-provisiontests_env.AppendUnique(LIBS = ['-lpthread', '-ldl'])
-provisiontests_env.AppendUnique(LIBPATH = [env.get('BUILD_DIR')])
-provisiontests_env.AppendUnique(LIBPATH = [src_dir + '/extlibs/gtest/gtest-1.7.0/lib/.libs'])
+provisiontests_env.AppendUnique(LIBPATH = [provisiontests_env.get('BUILD_DIR')])
provisiontests_env.PrependUnique(LIBS = [
'ocprovision',
'oc',
'octbstack',
'oc_logger',
'connectivity_abstraction',
- 'coap',
- 'gtest',
- 'gtest_main',
+ 'coap'
])
if with_ra_ibb:
if with_ra:
provisiontests_env.AppendUnique(LIBS = ['ra_xmpp'])
-if env.get('SECURED') == '1':
- provisiontests_env.AppendUnique(LIBS = ['tinydtls'])
- provisiontests_env.AppendUnique(LIBS = ['timer'])
-if env.get('DTLS_WITH_X509') == '1':
- provisiontests_env.AppendUnique(LIBS = ['CKManager'])
- provisiontests_env.AppendUnique(LIBS = ['asn1'])
+if provisiontests_env.get('SECURED') == '1':
+ provisiontests_env.AppendUnique(LIBS = ['mbedtls', 'mbedx509','mbedcrypto'])
-if env.get('LOGGING'):
+if provisiontests_env.get('LOGGING'):
provisiontests_env.AppendUnique(CPPDEFINES = ['TB_LOG'])
######################################################################
# Source files and Targets
######################################################################
-unittests = provisiontests_env.Program('provisiontests', ['OCProvisioningTest.cpp'])
+ocprovisiontest_src = [
+ 'OCProvisioningTest.cpp'
+ ]
+
+if provisiontests_env.get('WITH_TCP') == True:
+ ocprovisiontest_src = ocprovisiontest_src + [
+ 'OCCloudProvisioningTest.cpp'
+ ]
+
+unittests = provisiontests_env.Program('provisiontests', ocprovisiontest_src)
Alias("provisiontests", [unittests])
-env.AppendTarget('provisiontests')
-if env.get('TEST') == '1':
- target_os = env.get('TARGET_OS')
- if target_os == 'linux':
- out_dir = env.get('BUILD_DIR')
- result_dir = env.get('BUILD_DIR') + '/test_out/'
+provisiontests_env.AppendTarget('provisiontests')
+if provisiontests_env.get('TEST') == '1':
+ if target_os in ['linux']:
+ out_dir = provisiontests_env.get('BUILD_DIR')
+ result_dir = os.path.join(provisiontests_env.get('BUILD_DIR'), 'test_out') + os.sep
if not os.path.isdir(result_dir):
os.makedirs(result_dir)
provisiontests_env.AppendENVPath('GTEST_OUTPUT', ['xml:'+ result_dir])
provisiontests_env.AppendENVPath('LD_LIBRARY_PATH', [out_dir])
- provisiontests_env.AppendENVPath('LD_LIBRARY_PATH', ['./extlibs/gtest/gtest-1.7.0/lib/.libs'])
- ut = provisiontests_env.Command ('ut', None, out_dir + 'resource/provisioning/unittests/provisiontests')
- AlwaysBuild ('ut')
+ run_test(provisiontests_env,
+# TODO: fix this test on linux and remove this comment line
+# 'resource_provisioning_unittests.memcheck',
+ '',
+ 'resource/provisioning/unittests/provisiontests')
src_dir = provisiontests_env.get('SRC_DIR')
svr_db_src_dir = src_dir + '/resource/provisioning/examples/'
-svr_db_build_dir = env.get('BUILD_DIR') +'/resource/provisioning/unittests/'
+svr_db_build_dir = os.path.join(provisiontests_env.get('BUILD_DIR'), 'resource', 'provisioning', 'unittests')
provisiontests_env.Alias("install", provisiontests_env.Install( svr_db_build_dir,
svr_db_src_dir + 'oic_svr_db_client.json'))