Mercurial > trustbridge
annotate ui/tests/CMakeLists.txt @ 648:e41a2537b84d
Implement root installation
We now iterate over all users that do not obviously have their
login shell disabled and look for NSS directories in their home
directory, dropping our privileges to do so.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 25 Jun 2014 12:44:47 +0200 |
parents | be30d50bc4f0 |
children | 2c69298b4188 |
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) |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
18 find_program(OSSLSIGNCODE_EXECUTABLE osslsigncode) |
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 |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
26 if (WIN32 AND NOT OSSLSIGNCODE_EXECUTABLE) |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
27 message (STATUS "WARNING: osslsigncode not found. Authenticode tests will not be run.") |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
28 endif() |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
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 |
68
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
48
diff
changeset
|
45 ${POLARSSL_LIBRARIES} |
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
48
diff
changeset
|
46 ${EXTRA_STATIC_LIBS}) |
7
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
47 endmacro() |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
48 |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
49 # Add the current source dir to the definition |
992c0ec57660
Add unit tests make CertificateList work.
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
50 # 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
|
51 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
|
52 add_custom_test(certlistparsertest.cpp "") |
48
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
53 |
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
54 # Downloader |
139
6232ea0c8438
Check for hiawatha executable before setting and testing downloader resources.
Raimund Renkert <rrenkert@intevation.de>
parents:
109
diff
changeset
|
55 if (HIAWATHA_EXECUTABLE) |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
56 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
|
57 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
|
58 endif() |
48
3f8c2d46ded6
Add test for no connection handling
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
59 |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
60 # 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
|
61 add_custom_test(cinstprocesstest.cpp "") |
293
3ae8b3ab3eab
Depend on cinst target for cinsttest
Andre Heinecke <aheinecke@intevation.de>
parents:
240
diff
changeset
|
62 add_dependencies(cinstprocesstest cinst) |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
63 add_custom_test(commontest.cpp "") |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
64 |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
559
diff
changeset
|
65 add_custom_test(createcertlisttest.cpp "") |
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(mainwindowtest.cpp "") |
468
a53286e5b126
Add failing test for certificate list creation
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
67 |
563
aee3eb10bbba
Add unit test for sw update execution and fix shell execute params
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
68 # 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
|
69 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
|
70 |
220
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
71 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
|
72 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
|
73 |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
74 if (OSSLSIGNCODE_EXECUTABLE) |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
75 add_custom_test (binverifytest.cpp "") |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
76 add_custom_command( |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
77 TARGET binverifytest |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
78 POST_BUILD |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
79 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
|
80 -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
|
81 -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
|
82 -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
|
83 ) |
637
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
84 add_custom_command( |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
85 TARGET binverifytest |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
86 POST_BUILD |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
87 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
|
88 -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
|
89 -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
|
90 -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
|
91 ) |
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-other.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-cert.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.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.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-invalid.exe && |
be30d50bc4f0
Add remaining tests to check binverify functionality
Andre Heinecke <andre.heinecke@intevation.de>
parents:
636
diff
changeset
|
107 ${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
|
108 ) |
636
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
109 endif() |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
110 else () |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
111 add_custom_test (binverifytest.cpp "") |
2fd4f9980a2a
Add test for authenticode verificate (binverify)
Andre Heinecke <andre.heinecke@intevation.de>
parents:
580
diff
changeset
|
112 endif () |
220
e6c5c70a67b0
Add test for windowsstores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
182
diff
changeset
|
113 |
307
2fd69803d219
Complete InstRemove NSS test
Andre Heinecke <andre.heinecke@intevation.de>
parents:
305
diff
changeset
|
114 if (NSS_FOUND) |
326
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
115 include_directories(${NSS_INCLUDE_DIRS}) |
331
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
116 set(NSSTEST_SOURCES |
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
117 ${CMAKE_SOURCE_DIR}/cinst/nssstore_linux.c |
455d6d00e896
Break long line of nsstest sources
Andre Heinecke <aheinecke@intevation.de>
parents:
326
diff
changeset
|
118 ${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
|
119 add_custom_test(nsstest.cpp "${NSSTEST_SOURCES}") |
326
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
120 target_link_libraries(nsstest ${NSS_LIBRARIES}) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
121 if (WIN32) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
122 target_link_libraries(nsstest -luserenv) |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
123 endif() |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
124 |
ad28f6b60e6b
Fix nsstest build for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
125 add_dependencies(nsstest mozilla) |
556
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
126 |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
127 # NSS code searches the mozilla process in the same path as the caller |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
128 if (WIN32) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
129 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/mozilla.exe" link) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
130 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/../../cinst/mozilla.exe" target) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
131 else() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
132 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/mozilla" link) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
133 file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/../../cinst/mozilla" target) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
134 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
135 |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
136 if (NOT EXISTS ${link}) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
137 if (CMAKE_HOST_UNIX) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
138 set(command ln -s ${target} ${link}) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
139 else() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
140 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
|
141 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
142 execute_process(COMMAND ${command} |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
143 RESULT_VARIABLE result |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
144 ERROR_VARIABLE output) |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
145 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
|
146 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
|
147 endif() |
5dc4aa684c63
Symlink mozilla executable into the test directory
Andre Heinecke <aheinecke@intevation.de>
parents:
527
diff
changeset
|
148 endif() |
307
2fd69803d219
Complete InstRemove NSS test
Andre Heinecke <andre.heinecke@intevation.de>
parents:
305
diff
changeset
|
149 endif() |
304
eecc06f714fd
Add first nsstest.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
298
diff
changeset
|
150 |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
151 #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
|
152 |