Translation update done using Pootle.
[gammu.git] / smsd / test-smsd-files-include.sh.in
blob0ce1e52be8fa4e8daceb93594c88c84b56dcaf71
1 #!@SH_BIN@
3 set -x
4 set -e
5 SMSD_PID=0
7 INBOXF="$1"
8 SERVICE="files-include-$INBOXF"
10 echo "NOTICE: This test is quite tricky about timing, if you run it on really slow platform, it might fail."
11 echo "NOTICE: Testing service $SERVICE"
13 cleanup() {
14 if [ $SMSD_PID -ne 0 ] ; then
15 kill $SMSD_PID
16 sleep 1
20 trap cleanup INT QUIT EXIT
22 cd @CMAKE_CURRENT_BINARY_DIR@
24 rm -rf smsd-test-$SERVICE
25 mkdir smsd-test-$SERVICE
26 cd smsd-test-$SERVICE
28 # Dummy backend storage
29 mkdir gammu-dummy
30 # Create config file
31 cat > .smsdrc <<EOT
32 [gammu]
33 model = dummy
34 connection = none
35 port = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/gammu-dummy
36 gammuloc = /dev/null
37 loglevel = textall
39 [smsd]
40 commtimeout = 5
41 debuglevel = 255
42 logfile = stderr
43 runonreceive = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/received.sh
44 service = files
45 inboxpath = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/inbox/
46 outboxpath = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/outbox/
47 sentsmspath = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/sent/
48 errorsmspath = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/error/
49 inboxformat = $INBOXF
50 transmitformat = auto
51 includenumbersfile = @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/include.lst
52 EOT
53 cat > include.lst <<EOT
54 800123456
55 EOT
56 mkdir -p @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/inbox/
57 mkdir -p @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/outbox/
58 mkdir -p @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/sent/
59 mkdir -p @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/error/
61 cat > @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/received.sh << EOT
62 #!@SH_BIN@
63 echo "\$@" >> @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/received.log
64 EOT
65 chmod +x @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/received.sh
67 CONFIG_PATH="@CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/.smsdrc"
68 DUMMY_PATH="@CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/gammu-dummy"
70 mkdir -p $sms $DUMMY_PATH/sms/1
71 mkdir -p $sms $DUMMY_PATH/sms/2
72 mkdir -p $sms $DUMMY_PATH/sms/3
73 mkdir -p $sms $DUMMY_PATH/sms/4
74 mkdir -p $sms $DUMMY_PATH/sms/5
76 @CMAKE_CURRENT_BINARY_DIR@/gammu-smsd@GAMMU_TEST_SUFFIX@ -c "$CONFIG_PATH" &
77 SMSD_PID=$!
79 sleep 5
81 for sms in 62 68 74 ; do
82 cp @CMAKE_CURRENT_SOURCE_DIR@/../tests/at-sms-encode/$sms.backup $DUMMY_PATH/sms/1/$sms
83 done
85 # Inject messages
86 cp @CMAKE_CURRENT_SOURCE_DIR@/tests/OUT* @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/outbox/
87 @CMAKE_CURRENT_BINARY_DIR@/gammu-smsd-inject@GAMMU_TEST_SUFFIX@ -c "$CONFIG_PATH" TEXT 123465 -text "Lorem ipsum."
89 sleep 5
91 for sms in 10 16 26 ; do
92 cp @CMAKE_CURRENT_SOURCE_DIR@/../tests/at-sms-encode/$sms.backup $DUMMY_PATH/sms/3/$sms
93 done
95 TIMEOUT=0
96 while ! @CMAKE_CURRENT_BINARY_DIR@/gammu-smsd-monitor@GAMMU_TEST_SUFFIX@ -C -c "$CONFIG_PATH" -n 1 -d 0 | grep -q ";999999999999999;4;3;0;100;42" ; do
97 @CMAKE_CURRENT_BINARY_DIR@/gammu-smsd-monitor@GAMMU_TEST_SUFFIX@ -C -c "$CONFIG_PATH" -n 1 -d 0
98 sleep 1
99 TIMEOUT=$(($TIMEOUT + 1))
100 if [ $TIMEOUT -gt 60 ] ; then
101 echo "ERROR: Wrong timeout!"
102 exit 1
104 done
106 sleep 5
108 @CMAKE_CURRENT_BINARY_DIR@/gammu-smsd-monitor@GAMMU_TEST_SUFFIX@ -C -c "$CONFIG_PATH" -n 1 -d 0
110 if [ `wc -l < @CMAKE_CURRENT_BINARY_DIR@/smsd-test-$SERVICE/received.log` -ne 3 ] ; then
111 echo "ERROR: Wrong number of messages received!"
112 exit 1