summaryrefslogtreecommitdiffstats
path: root/tests/test_subject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_subject.cpp')
-rw-r--r--tests/test_subject.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/test_subject.cpp b/tests/test_subject.cpp
new file mode 100644
index 000000000..b07317ec5
--- /dev/null
+++ b/tests/test_subject.cpp
@@ -0,0 +1,32 @@
+
+#include <unistd.h>
+#include <tqstring.h>
+#include "core/polkit-tqt-subject.h"
+
+#define TEST_PASSED 0
+#define TEST_FAILED 1
+
+using namespace PolkitTQt;
+
+int main(void)
+{
+ int test_result = TEST_PASSED;
+
+ // Create unix process for current process
+ TQ_LONG pid = getpid();
+ UnixProcessSubject *process = new UnixProcessSubject(pid);
+ if (process->pid() != pid)
+ {
+ test_result = TEST_FAILED;
+ }
+
+ // Serialize and deserialize subject
+ Subject subject = Subject::fromString(process->toString());
+ if (((UnixProcessSubject*)&subject)->pid() != pid)
+ {
+ test_result = TEST_FAILED;
+ }
+
+ delete process;
+ return test_result;
+}