Procházet zdrojové kódy

- rename presence test
- add test with some simple cpl operations for mysql


git-svn-id: https://openser.svn.sourceforge.net/svnroot/openser/trunk@4008 689a6050-402a-0410-94f2-e92a70836424

Henning Westerholt před 17 roky
rodič
revize
07080c8ad2
5 změnil soubory, kde provedl 120 přidání a 0 odebrání
  1. 0 0
      test/unit/27.sh
  2. 23 0
      test/unit/28.cfg
  3. 70 0
      test/unit/28.sh
  4. 6 0
      test/unit/cpl_ignore.xml
  5. 21 0
      test/unit/cpl_test.xml

+ 0 - 0
test/unit/presence.sh → test/unit/27.sh


+ 23 - 0
test/unit/28.cfg

@@ -0,0 +1,23 @@
+debug=9
+
+mpath="../modules"
+loadmodule "sl.so"
+loadmodule "tm.so"
+loadmodule "db_mysql.so"
+loadmodule "cpl-c.so"
+loadmodule "mi_fifo.so"
+loadmodule "textops.so"
+
+modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
+modparam("cpl-c","cpl_dtd_file","../modules/cpl-c/cpl-06.dtd")
+
+route {
+  if (is_method("INVITE")) {
+        # run incoming script
+         if ( !cpl_run_script("incoming","force_stateful") ) {
+             # script execution failed
+             sl_send_reply("500","CPL script execution failed");
+             exit;
+         };
+  };
+}

+ 70 - 0
test/unit/28.sh

@@ -0,0 +1,70 @@
+#!/bin/bash
+# tests simple cpl-c script operatons with mysql
+
+# Copyright (C) 2008 1&1 Internet AG
+#
+# This file is part of openser, a free SIP server.
+#
+# openser is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version
+#
+# openser is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+
+# needs the sipp utility to run
+which sipp > /dev/null
+ret=$?
+
+if [ ! $? -eq 0 ] ; then
+	echo "sipp not found, not run"
+	exit 0
+fi ;
+
+CFG=28.cfg
+CPL=cpl_ignore.xml
+TMPFILE=`mktemp -t openser-test.XXXXXXXXXX`
+
+
+../openser -w . -f $CFG &> /dev/null;
+ret=$?
+sleep 1
+
+../scripts/openserctl fifo LOAD_CPL sip:[email protected] $CPL
+
+if [ "$ret" -eq 0 ] ; then
+	sipp -m 1 -f 1 127.0.0.1:5060 -sf cpl_test.xml &> /dev/null;
+	ret=$?
+fi;
+
+if [ "$ret" -eq 0 ] ; then
+  ../scripts/openserctl fifo GET_CPL sip:[email protected] > $TMPFILE 
+  diff $TMPFILE $CPL 
+  ret=$?
+fi; 
+
+if [ "$ret" -eq 0 ] ; then
+  ../scripts/openserctl fifo REMOVE_CPL sip:[email protected]
+  ../scripts/openserctl fifo GET_CPL sip:[email protected] > $TMPFILE
+fi;
+
+diff $TMPFILE $CPL &> /dev/null;
+ret=$?
+
+if [ ! "$ret" -eq 0 ] ; then
+  ret=0
+fi;
+
+#cleanup:
+killall -9 openser &> /dev/null;
+killall -9 sipp &> /dev/null;
+rm $TMPFILE
+
+exit $ret;

+ 6 - 0
test/unit/cpl_ignore.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<cpl>
+  <incoming>
+    <reject status="400" reason="Busy" />
+  </incoming>
+</cpl>

+ 21 - 0
test/unit/cpl_test.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<scenario name="invite_client">
+  <send retrans="500">
+      <![CDATA[
+
+      INVITE sip:alice@localhost:5059 SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: <sip:alice@localhost>;tag=[call_number]
+      To: <sip:alice@localhost>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:alice@[local_ip]:[local_port]
+      Max-Forwards: 5
+      Expires: 1800
+      User-Agent: SIPp/Linux
+      Content-Length: 0
+      ]]>
+   </send>
+   <recv response="400" auth="true">
+   </recv>
+</scenario>