Add crash manager API
[platform/core/system/crash-worker.git] / tests / system / libcrash-service / libcrash-service.sh.template
1 #!/bin/bash
2
3 # Test --output parameter
4
5 if [ -z "${CRASH_WORKER_SYSTEM_TESTS}" ]; then
6     CRASH_WORKER_SYSTEM_TESTS="@CRASH_SYSTEM_TESTS_PATH@"
7 fi
8
9 . ${CRASH_WORKER_SYSTEM_TESTS}/utils/minicore-utils.sh
10
11 save_core_pattern
12 trap restore_core_pattern 0
13
14 echo "|/usr/bin/crash-manager -p %p -u %u -g %g -s %s -t %t" > /proc/sys/kernel/core_pattern
15
16 {
17     ${CRASH_WORKER_SYSTEM_TESTS}/utils/kenny 10 &
18     KENNY_PID=$!
19     sleep 1
20 } 1> /dev/null 2>&1
21
22 sleep 2
23
24 rm -rf ${LIVE_DUMP_PATH}/*
25 REASON="some reason"
26 ${CRASH_WORKER_SYSTEM_TESTS}/utils/libcrash-servicetest -r "${REASON}" ${KENNY_PID}
27
28 wait_for_file ${LIVE_DUMP_PATH}/kenny*zip
29
30 kill -9 ${KENNY_PID}
31
32 trap popd 0
33
34 pushd ${LIVE_DUMP_PATH}
35
36 unzip kenny*zip
37 cd kenny*
38
39 if [ ! -f *dump_reason ]; then
40     fail "dump_reason file doesn't exist"
41 fi
42
43 if [ "$(cat *dump_reason)" != "${REASON}" ]; then
44     fail "Dump reason didn't match"
45 fi
46
47 exit_ok