Mercurial > trustbridge
annotate ui/tests/cinstprocesstest.h @ 1332:8362e30f7b55
(issue139) Check that pid is not running if the lock can be aquired
If the lock on the lockfile can be aquired it might still be
possible that another process is running. So we read the
pid from the lockfile and check if another process with the
same installation prefix as us is running.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 15 Oct 2014 14:19:46 +0200 |
parents | 17e1c8f37d72 |
children |
rev | line source |
---|---|
404 | 1 /* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik |
2 * Software engineering by Intevation GmbH | |
3 * | |
4 * This file is Free Software under the GNU GPL (v>=2) | |
5 * and comes with ABSOLUTELY NO WARRANTY! | |
6 * See LICENSE.txt for details. | |
7 */ | |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
8 #ifndef CINSTPROCESSTEST_H |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
9 #define CINSTPROCESSTEST_H |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
10 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
11 /* @file Tests for the cinst process |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
12 * @brief Tests for the cinst process as well as the UI side |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
13 */ |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
14 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
15 #include <QObject> |
294
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
16 #include <QStringList> |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
17 #include <QProcess> |
294
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
18 #include <QTemporaryFile> |
306
9c5e6b142611
Set the home directory to a temporary location to avoid writing into real nss stores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
294
diff
changeset
|
19 #include <QTemporaryDir> |
141
f5fa39347366
Fixed QTest includes.
Raimund Renkert <rrenkert@intevation.de>
parents:
100
diff
changeset
|
20 #include <QTest> |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
21 #include "certificatelist.h" |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
22 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
23 class CinstProcessTest: public QObject |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
24 { |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
25 Q_OBJECT |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
26 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
27 private: |
294
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
28 QProcess* startCinstProcess(const QStringList& args = QStringList()); |
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
29 QTemporaryFile validListFile; |
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
30 QTemporaryFile otherListFile; |
d95fd88f6616
Prepare cinstprocesstest to be executed on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
151
diff
changeset
|
31 QTemporaryFile invalidListFile; |
306
9c5e6b142611
Set the home directory to a temporary location to avoid writing into real nss stores
Andre Heinecke <andre.heinecke@intevation.de>
parents:
294
diff
changeset
|
32 QTemporaryDir fakeHome; |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
33 CertificateList validList; |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
34 CertificateList otherList; |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
35 CertificateList invalidList; |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
36 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
37 private Q_SLOTS: |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
38 void initTestCase(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
39 void testValidInput(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
40 void testInvalidInstruction(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
41 void testNoInput(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
42 void testNoList(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
43 void testGarbageInput(); |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
44 void testNoInstructions(); |
151
0df62decff90
Test if uninstall is handled as instruction
Andre Heinecke <aheinecke@intevation.de>
parents:
141
diff
changeset
|
45 void testUninstall(); |
100
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
46 }; |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
47 #endif |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
48 |
8fa273791242
Add test for cinstprocess
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
49 |