Mercurial > trustbridge
annotate ui/tests/CMakeLists.txt @ 1261:8bfbfd4ea568
Merge
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Fri, 26 Sep 2014 15:25:59 +0200 |
parents | c8f698ca6355 |
children |
rev | line source |
---|---|
405
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
1 # Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
2 # Software engineering by Intevation GmbH |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
3 # |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
4 # This file is Free Software under the GNU GPL (v>=2) |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
5 # and comes with ABSOLUTELY NO WARRANTY! |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
6 # See LICENSE.txt for details. |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
331
diff
changeset
|
7 |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
8 set(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}) |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
9 |
304
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
10 include_directories(${CMAKE_CURRENT_BINARY_DIR} |
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
11 ${CMAKE_SOURCE_DIR}/ui |
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
12 ${CMAKE_SOURCE_DIR}/common |
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
13 ${CMAKE_SOURCE_DIR}/cinst) |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
14 |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
15 find_package(Qt5Test) |
140
0e9a244e0ede
Added Qt5Test include directory.
Raimund Renkert <rrenkert@intevation.de>
parents:
139
diff
changeset
|
16 include_directories(${Qt5Test_INCLUDE_DIRS}) |
43 | 17 find_program(HIAWATHA_EXECUTABLE hiawatha) |
773
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
18 find_program(OPENSSL_EXECUTABLE openssl) |
43 | 19 |
20 if (NOT HIAWATHA_EXECUTABLE) | |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
21 message (STATUS "WARNING: hiawatha webserver not found. Downloader will not be run.") |
43 | 22 else() |
23 add_definitions(-DHIAWATHA_EXECUTABLE="${HIAWATHA_EXECUTABLE}") | |
24 endif() | |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
25 |
773
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
26 if (UNIX AND NOT OPENSSL_EXECUTABLE) |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
27 message (STATUS "WARNING: openssl (the tool) not found. Binary verification tests will not be run.") |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
28 endif() |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
29 |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
30 macro(add_custom_test _source _additional_sources) |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
31 set(_test ${_source}) |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
32 get_filename_component(_name ${_source} NAME_WE) |
326
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
33 set(_test_sources_with_resources ${_test} |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
34 "${_additional_sources};${CMAKE_CURRENT_SOURCE_DIR}/common.cpp") |
220
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
35 qt5_add_resources(_test_sources_with_resources |
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
36 ${CMAKE_CURRENT_SOURCE_DIR}/data/testdata.qrc) |
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
37 add_executable(${_name} ${_test_sources_with_resources}) |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
38 add_test(tb-${_name} ${_name}) |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
468
diff
changeset
|
39 target_link_libraries(${_name} |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
559
diff
changeset
|
40 tbadminlib |
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
559
diff
changeset
|
41 tblib |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
468
diff
changeset
|
42 ui_common |
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
468
diff
changeset
|
43 Qt5::Test Qt5::Widgets |
408
ac9e95ef6966
rename m13_common to trustbridge_common
Andre Heinecke <aheinecke@intevation.de>
parents:
407
diff
changeset
|
44 trustbridge_common |
908
d1c951b3012d
Curl based implementation of sslconnection
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
45 ${CURL_LIBRARIES} |
68
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
48
diff
changeset
|
46 ${POLARSSL_LIBRARIES} |
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
48
diff
changeset
|
47 ${EXTRA_STATIC_LIBS}) |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
48 endmacro() |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
49 |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
50 # Add the current source dir to the definition |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
51 # so that it can be used in file names in the tests. |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
52 add_definitions(-DSOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}") |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
559
diff
changeset
|
53 add_custom_test(certlistparsertest.cpp "") |
48
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
54 |
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
55 # Downloader |
139
6232ea0c8438
Check for hiawatha executable before setting and testing downloader resources.
Raimund Renkert <rrenkert@intevation.de>
parents:
109
diff
changeset
|
56 if (HIAWATHA_EXECUTABLE) |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
57 qt5_add_resources(DOWNLOADER_SOURCES_WITH_RESOURCES ${TRUSTBRIDGE_RESOURCES}) |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
58 add_custom_test(downloadertest.cpp "${DOWNLOADER_SOURCES_WITH_RESOURCES}") |
139
6232ea0c8438
Check for hiawatha executable before setting and testing downloader resources.
Raimund Renkert <rrenkert@intevation.de>
parents:
109
diff
changeset
|
59 endif() |
48
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
60 |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
61 # Cinstprocess |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
468
diff
changeset
|
62 add_custom_test(cinstprocesstest.cpp "") |
1176
c8f698ca6355
(issue128) Rename cinst to trustbridge-certificate-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1175
diff
changeset
|
63 add_dependencies(cinstprocesstest trustbridge-certificate-installer) |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
64 add_custom_test(commontest.cpp "") |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
65 |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
559
diff
changeset
|
66 add_custom_test(createcertlisttest.cpp "") |
1014
7d08fd354bff
Disable mainwindowtest for now
Andre Heinecke <andre.heinecke@intevation.de>
parents:
967
diff
changeset
|
67 |
7d08fd354bff
Disable mainwindowtest for now
Andre Heinecke <andre.heinecke@intevation.de>
parents:
967
diff
changeset
|
68 # Disabled for now at it executes too much and brings up the mainwindow |
7d08fd354bff
Disable mainwindowtest for now
Andre Heinecke <andre.heinecke@intevation.de>
parents:
967
diff
changeset
|
69 # add_custom_test(mainwindowtest.cpp "") |
468
a53286e5b126
Add failing test for certificate list creation
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
70 |
563
aee3eb10bbba
Add unit test for sw update execution and fix shell execute params
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
71 # Using fakeinstaller here would cause windows UAC heuristics to trigger |
aee3eb10bbba
Add unit test for sw update execution and fix shell execute params
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
72 add_executable(fakeinst fakeinstaller.c) |
aee3eb10bbba
Add unit test for sw update execution and fix shell execute params
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
73 |
220
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
74 if (WIN32) |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
468
diff
changeset
|
75 add_custom_test(windowsstoretest.cpp "${CMAKE_SOURCE_DIR}/cinst/windowsstore.c") |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
76 |
1025
86fbada04af7
Fix syntax error in check for strip
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1014
diff
changeset
|
77 if (NOT CMAKE_STRIP) |
967
9494d4ee1d4e
Add fallback when CMAKE_STRIP is not found and warn about it
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
78 message(STATUS "WARNING CMAKE_STRIP not set. Please set this in your toolchain file. Falling back to: i686-w64-mingw32-strip") |
9494d4ee1d4e
Add fallback when CMAKE_STRIP is not found and warn about it
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
79 set (CMAKE_STRIP "i686-w64-mingw32-strip") |
9494d4ee1d4e
Add fallback when CMAKE_STRIP is not found and warn about it
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
80 endif() |
9494d4ee1d4e
Add fallback when CMAKE_STRIP is not found and warn about it
Andre Heinecke <andre.heinecke@intevation.de>
parents:
948
diff
changeset
|
81 |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
82 if (OSSLSIGNCODE_EXECUTABLE) |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
83 add_custom_test (binverifytest.cpp "") |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
84 add_custom_command( |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
85 TARGET binverifytest |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
86 POST_BUILD |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
87 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.pem |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
88 -key ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.key |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
89 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/fakeinst.exe |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
90 -out ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-signed.exe |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
91 ) |
637
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
92 add_custom_command( |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
93 TARGET binverifytest |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
94 POST_BUILD |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
95 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.pem |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
96 -key ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning-other.key |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
97 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/fakeinst.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
98 -out ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-other-key.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
99 ) |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
100 add_custom_command( |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
101 TARGET binverifytest |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
102 POST_BUILD |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
103 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning-other.pem |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
104 -key ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning-other.key |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
105 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/fakeinst.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
106 -out ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-other-cert.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
107 ) |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
108 add_custom_command( |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
109 TARGET binverifytest |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
110 POST_BUILD |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
111 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.pem |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
112 -key ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.key |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
113 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/fakeinst.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
114 -out ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-invalid.exe && |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
115 ${CMAKE_STRIP} ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-invalid.exe |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
116 ) |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
117 endif() |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
118 else () |
773
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
119 if (OPENSSL_EXECUTABLE) |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
120 add_custom_test (binverifytest.cpp "") |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
121 add_custom_command( |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
122 TARGET binverifytest |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
123 POST_BUILD |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
124 COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/append-sig.sh ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.key |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
125 ${CMAKE_CURRENT_BINARY_DIR}/fakeinst ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-signed |
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
126 ) |
774
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
127 add_custom_command( |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
128 TARGET binverifytest |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
129 POST_BUILD |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
130 COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/append-sig.sh ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning-other.key |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
131 ${CMAKE_CURRENT_BINARY_DIR}/fakeinst ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-other-key |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
132 ) |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
133 add_custom_command( |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
134 TARGET binverifytest |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
135 POST_BUILD |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
136 COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/append-sig.sh ${CMAKE_CURRENT_SOURCE_DIR}/data/codesign/codesigning.key |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
137 ${CMAKE_CURRENT_BINARY_DIR}/fakeinst ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-invalid && |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
138 sed -i s/Fakeinstaller/Bakeinstaller/g ${CMAKE_CURRENT_BINARY_DIR}/fakeinst-invalid |
44fa5de02b52
(issue43) Finalize and verify binary verification for linux.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
773
diff
changeset
|
139 ) |
773
2c69298b4188
WIP start with tests for Linux binary verification
Andre Heinecke <andre.heinecke@intevation.de>
parents:
637
diff
changeset
|
140 endif() |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
141 endif () |
220
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
142 |
834
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
774
diff
changeset
|
143 if (WIN32 OR NSS_FOUND) |
326
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
144 include_directories(${NSS_INCLUDE_DIRS}) |
331
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
145 set(NSSTEST_SOURCES |
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
146 ${CMAKE_SOURCE_DIR}/cinst/nssstore_linux.c |
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
147 ${CMAKE_SOURCE_DIR}/cinst/nssstore_win.c) |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
148 add_custom_test(nsstest.cpp "${NSSTEST_SOURCES}") |
326
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
149 target_link_libraries(nsstest ${NSS_LIBRARIES}) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
150 if (WIN32) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
151 target_link_libraries(nsstest -luserenv) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
152 endif() |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
153 |
1175
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
154 add_dependencies(nsstest trustbridge-nss-installer) |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
155 |
1175
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
156 # NSS code searches the trustbridge-nss-installer process in the same path as the caller |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
157 if (WIN32) |
1175
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
158 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/trustbridge-nss-installer.exe" link) |
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
159 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/../../cinst/trustbridge-nss-installer.exe" target) |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
160 else() |
1175
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
161 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/trustbridge-nss-installer" link) |
e210ecc32d69
(issue128) Rename mozilla process to trustbridge-nss-installer
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1071
diff
changeset
|
162 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/../../cinst/trustbridge-nss-installer" target) |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
163 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
164 |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
165 if (NOT EXISTS ${link}) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
166 if (CMAKE_HOST_UNIX) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
167 set(command ln -s ${target} ${link}) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
168 else() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
169 set(command cmd.exe /c mklink ${link} ${target}) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
170 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
171 execute_process(COMMAND ${command} |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
172 RESULT_VARIABLE result |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
173 ERROR_VARIABLE output) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
174 if (NOT ${result} EQUAL 0) |
580
cf7e82e91875
Do not fail when creating the link fails. Just warn.
Andre Heinecke <aheinecke@intevation.de>
parents:
563
diff
changeset
|
175 message(STATUS "Could not create symbolic link for: ${target} --> ${output}. NSS Test might fail.") |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
176 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
177 endif() |
307
2fd69803d219
Complete InstRemove NSS test
Andre Heinecke <andre.heinecke@intevation.de>
parents:
305
diff
changeset
|
178 endif() |
304
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
179 |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
180 #add_custom_test(${CMAKE_SOURCE_DIR}/ui/main.cpp "${TRUSTBRIDGE_SOURCES}") |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
181 |