Add positive and negative test case for CertStoreType class
[platform/core/security/cert-svc.git] / packaging / cert-svc.spec
index b49889f..49d0617 100644 (file)
@@ -1,4 +1,4 @@
-%define certsvc_test_build 0
+%{!?build_type:%global build_type RELEASE}
 
 Name:    cert-svc
 Summary: Certification service
@@ -12,8 +12,8 @@ BuildRequires: coreutils
 BuildRequires: findutils
 BuildRequires: pkgconfig(dlog)
 BuildRequires: pkgconfig(klay)
-BuildRequires: openssl1.1
-BuildRequires: pkgconfig(openssl1.1)
+BuildRequires: openssl3
+BuildRequires: pkgconfig(openssl3)
 BuildRequires: pkgconfig(libpcrecpp)
 BuildRequires: pkgconfig(xmlsec1)
 BuildRequires: pkgconfig(libxml-2.0)
@@ -25,6 +25,12 @@ BuildRequires: pkgconfig(sqlite3)
 BuildRequires: ca-certificates
 BuildRequires: ca-certificates-devel
 BuildRequires: ca-certificates-tizen-devel
+BuildRequires: boost-devel
+
+%if "%{build_type}" == "COVERAGE"
+BuildRequires: lcov
+%endif
+
 Requires: ca-certificates
 Requires: ca-certificates-tizen
 Requires: security-config
@@ -37,6 +43,7 @@ Requires: security-config
 %global group_name security_fw
 %global server_stream /tmp/.cert-server.socket
 %global smack_domain_name System
+%global coverage_dir    %{_datadir}/cert-svc-coverage
 
 %global bin_dir                 %{?TZ_SYS_BIN:%TZ_SYS_BIN}%{!?TZ_SYS_BIN:%_bindir}
 %global lib_dir                 %{?TZ_SYS_LIB:%TZ_SYS_LIB}%{!?TZ_SYS_LIB:%_libdir}
@@ -64,7 +71,6 @@ Requires:   %{name} = %{version}-%{release}
 %description devel
 Certification service (development files)
 
-%if 0%{?certsvc_test_build}
 %package test
 Summary:  Certification service (tests)
 Group:    Security/Testing
@@ -83,6 +89,18 @@ Requires: %{name}-test = %{version}-%{release}
 
 %description test-binaries
 Certification service (test binaries)
+
+%if "%{build_type}" == "COVERAGE"
+%package coverage
+Summary:    Certification service code coverage data
+Group:      Security/Testing
+Requires:   cert-svc-test = %{version}-%{release}
+Requires:   cert-svc-debugsource = %{version}-%{release}
+Requires:   lcov
+Requires:   gcc
+
+%description coverage
+Certification service code coverage data
 %endif
 
 %prep
@@ -105,7 +123,6 @@ export FFLAGS="$FFLAGS -DTIZEN_EMULATOR_MODE"
 export CFLAGS="$CFLAGS -Wno-stringop-truncation -Wno-stringop-overflow"
 export CXXFLAGS="$CXXFLAGS -Wno-stringop-truncation -Wno-stringop-overflow"
 
-%{!?build_type:%define build_type "Release"}
 %cmake . -DVERSION=%version \
          -DINCLUDEDIR=%_includedir \
          -DUSER_NAME=%user_name \
@@ -125,11 +142,9 @@ export CXXFLAGS="$CXXFLAGS -Wno-stringop-truncation -Wno-stringop-overflow"
          -DCERT_SVC_RO_PATH=%cert_svc_ro_path \
          -DCERT_SVC_PKCS12=%cert_svc_pkcs12 \
          -DCERT_SVC_DB_PATH=%cert_svc_db_path \
-%if 0%{?certsvc_test_build}
-         -DCERTSVC_TEST_BUILD=1 \
          -DCERT_SVC_TESTS=%cert_svc_tests \
          -DCERT_SVC_EXAMPLES=%cert_svc_examples \
-%endif
+         -DCOVERAGE_DIR=%{coverage_dir} \
          -DCMAKE_BUILD_TYPE=%build_type \
          -DSYSTEMD_UNIT_DIR=%_unitdir
 
@@ -187,7 +202,6 @@ fi
 %_libdir/pkgconfig/*
 %_libdir/libcert-svc-vcore.so
 
-%if 0%{?certsvc_test_build}
 %files test
 %manifest %name.manifest
 %bin_dir/cert-svc-test*
@@ -199,8 +213,16 @@ fi
 %bin_dir/cert-svc-example*
 %cert_svc_examples
 
+%bin_dir/cert-svc-unit-tests
+
 %files test-binaries
 %manifest %name.manifest
 %cert_svc_tests/apps
 
+%if "%{build_type}" == "COVERAGE"
+%files coverage
+%manifest %{name}.manifest
+%license LICENSE
+%{bin_dir}/cert-svc-coverage.sh
+%coverage_dir
 %endif