Add full coredump test 41/216241/1
authorMateusz Moscicki <m.moscicki2@partner.samsung.com>
Tue, 22 Oct 2019 09:08:29 +0000 (11:08 +0200)
committerMateusz Moscicki <m.moscicki2@partner.samsung.com>
Tue, 22 Oct 2019 12:01:57 +0000 (14:01 +0200)
Change-Id: I6c49d87be5a34e86744a929bfd16c2476cc39a0b

packaging/crash-worker_system-tests.manifest
packaging/crash-worker_system-tests.spec
tests/system/CMakeLists.txt
tests/system/full_core/full_core.sh.template [new file with mode: 0755]

index 15573a3..83fdab3 100644 (file)
@@ -3,6 +3,7 @@
                <domain name="_"/>
        </request>
        <assign>
+        <filesystem path="/usr/lib/crash-worker_system-tests/full_core/full_core.sh" label="User::Shell" exec_label="User::Shell"/>
         <filesystem path="/usr/lib/crash-worker_system-tests/check_minicore_mem/check_minicore_mem.sh" label="User::Shell" exec_label="User::Shell"/>
         <filesystem path="/usr/lib/crash-worker_system-tests/check_minicore_mem/cp.sh" label="User::Shell" exec_label="System"/>
         <filesystem path="/usr/lib/crash-worker_system-tests/cmp_backtraces/cmp_backtraces.sh" label="User::Shell" exec_label="User::Shell"/>
index f289f5e..c965ee4 100644 (file)
@@ -56,6 +56,7 @@ cd tests/system
 %files -f debugfiles.list
 %manifest %{name}.manifest
 %defattr(0750,system_fw,system_fw)
+%{_libdir}/crash-worker_system-tests/full_core/full_core.sh
 %{_libdir}/crash-worker_system-tests/check_minicore_mem/check_minicore_mem.sh
 %{_libdir}/crash-worker_system-tests/check_minicore_mem/cp.sh
 %{_libdir}/crash-worker_system-tests/cmp_backtraces/cmp_backtraces.sh
index 95e4474..b5423c1 100644 (file)
@@ -34,6 +34,7 @@ configure_test("extra_script")
 configure_test("dbus_notify")
 configure_test("output_param")
 configure_test("libcrash-service")
+configure_test("full_core")
 
 configure_file("run.sh.template" "run.sh" @ONLY)
 INSTALL(FILES run.sh DESTINATION ${CRASH_SYSTEM_TESTS_PATH})
diff --git a/tests/system/full_core/full_core.sh.template b/tests/system/full_core/full_core.sh.template
new file mode 100755 (executable)
index 0000000..df74f75
--- /dev/null
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+# Check the full coredump
+
+if [ -z "${CRASH_WORKER_SYSTEM_TESTS}" ]; then
+    CRASH_WORKER_SYSTEM_TESTS="@CRASH_SYSTEM_TESTS_PATH@"
+fi
+
+. ${CRASH_WORKER_SYSTEM_TESTS}/utils/minicore-utils.sh
+
+clean_crash_dump
+
+MINICOREDUMPER_DIR=/etc/minicoredumper/
+CONFIG_FILE=${MINICOREDUMPER_DIR}/generic.recept.json
+DOTNET_CONFIG_FILE=${MINICOREDUMPER_DIR}/dotnet.recept.json
+BACKUP_CONFIG_FILE=/tmp/generic.recept.json
+
+function backup_config {
+    cp ${CONFIG_FILE} ${BACKUP_CONFIG_FILE}
+}
+
+function modify_config {
+    cp ${DOTNET_CONFIG_FILE} ${CONFIG_FILE}
+}
+
+function restore {
+    cp ${BACKUP_CONFIG_FILE} ${CONFIG_FILE}
+    popd
+}
+
+trap restore 0
+pushd ${CRASH_DUMP_PATH}
+
+backup_config
+modify_config
+
+{
+    ${CRASH_WORKER_SYSTEM_TESTS}/utils/kenny &
+    sleep 1
+    kill -6 $!
+} 1> /dev/null 2>&1
+
+sleep 2
+
+wait_for_file ${CRASH_DUMP_PATH}/*kenny*zip
+
+unzip ${CRASH_DUMP_PATH}/*kenny*zip
+
+RESULT=`gdb ${CRASH_WORKER_SYSTEM_TESTS}/utils/kenny ${CRASH_DUMP_PATH}/*kenny*/kenny*coredump --batch -ex "thread apply all bt"`
+
+check "MAGICNAME.*id=.*kenny.cpp:31"
+check "run.*id=.*kenny.cpp:56"
+
+exit_ok