[asterisk-commits] pabelanger: testsuite/asterisk/trunk r1288 - in /asterisk/trunk/tests: mixmon...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Dec 23 02:37:13 UTC 2010
Author: pabelanger
Date: Wed Dec 22 20:37:09 2010
New Revision: 1288
URL: http://svnview.digium.com/svn/testsuite?view=rev&rev=1288
Log:
Rework mixmonitor_audiohook_inherit test
Added:
asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/manager.conf
- copied unchanged from r1287, asterisk/team/pabelanger/SWP-2717/tests/mixmonitor_audiohook_inherit/configs/ast1/manager.conf
Removed:
asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/features.conf
Modified:
asterisk/trunk/tests/mixmonitor/test-config.yaml
asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/extensions.conf
asterisk/trunk/tests/mixmonitor_audiohook_inherit/run-test
asterisk/trunk/tests/mixmonitor_audiohook_inherit/test-config.yaml
Modified: asterisk/trunk/tests/mixmonitor/test-config.yaml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/mixmonitor/test-config.yaml?view=diff&rev=1288&r1=1287&r2=1288
==============================================================================
--- asterisk/trunk/tests/mixmonitor/test-config.yaml (original)
+++ asterisk/trunk/tests/mixmonitor/test-config.yaml Wed Dec 22 20:37:09 2010
@@ -8,3 +8,4 @@
minversion: '1.4'
dependencies:
- python : 'twisted'
+ - python : 'starpy'
Modified: asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/extensions.conf
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/extensions.conf?view=diff&rev=1288&r1=1287&r2=1288
==============================================================================
--- asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/extensions.conf (original)
+++ asterisk/trunk/tests/mixmonitor_audiohook_inherit/configs/ast1/extensions.conf Wed Dec 22 20:37:09 2010
@@ -2,22 +2,23 @@
[globals]
+[listener]
+exten => s,1,Answer()
+exten => s,n,Echo()
+
+[ast1]
+exten => 101,1,Answer()
+exten => 101,n,MixMonitor(${TESTAUDIO1})
+exten => 101,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
+exten => 101,n,Dial(Local/2000 at mixmonitortest,,tT)
+
[mixmonitortest]
-
-exten => test1,1,Answer()
-exten => test1,n,MixMonitor(${TESTAUDIO1})
-exten => test1,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
-exten => test1,n,Dial(Local/test_transfer at mixmonitortest,,tT)
-
-exten => test_transfer,1,Answer()
-
-exten => test_transfer,n,SendDTMF(*w2w)
-;exten => test_transfer,n,Wait(1)
-exten => test_transfer,n,SendDTMF(1w2w3w4w)
+exten => 2000,1,Answer()
+exten => 2000,n,SendDTMF(#)
+exten => 2000,n,SendDTMF(1w2w3w4w)
exten => 1234,1,Answer()
-exten => 1234,n,Playback(${TALK_AUDIO})
-exten => 1234,n,Playback(${TALK_AUDIO})
-exten => 1234,n,Playback(${TALK_AUDIO})
-exten => 1234,n,Playback(${TALK_AUDIO})
+exten => 1234,n,Playback(demo-thanks)
+exten => 1234,n,StopMixMonitor()
+exten => 1234,n,UserEvent(test1, status: SUCCESS)
exten => 1234,n,Hangup()
Modified: asterisk/trunk/tests/mixmonitor_audiohook_inherit/run-test
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/mixmonitor_audiohook_inherit/run-test?view=diff&rev=1288&r1=1287&r2=1288
==============================================================================
--- asterisk/trunk/tests/mixmonitor_audiohook_inherit/run-test (original)
+++ asterisk/trunk/tests/mixmonitor_audiohook_inherit/run-test Wed Dec 22 20:37:09 2010
@@ -12,6 +12,7 @@
import math
from optparse import OptionParser
from twisted.internet import reactor
+from starpy import manager
sys.path.append("lib/python")
from asterisk.asterisk import Asterisk
@@ -42,17 +43,18 @@
self.audiofile1 = os.path.join(os.getcwd(), "%s/testaudio1" % (testdir))
self.talkingaudio = os.path.join(os.getcwd(), "%s/sounds/talking" % (testdir))
- def read_result(self):
- self.log_last_step("Reading result file from MixMonitor")
- if os.path.exists(self.audiofile1 + ".raw"):
- self.audiofile1size = os.path.getsize(self.audiofile1 + ".raw")
-
- self.stop_asterisk()
+ def stop_reactor(self):
print "Stopping Reactor ..."
if reactor.running:
reactor.stop()
+ def read_result(self):
self.passed = True
+ self.stop_reactor()
+
+ self.log_last_step("Reading result file from MixMonitor")
+ if os.path.exists(self.audiofile1 + ".raw"):
+ self.audiofile1size = os.path.getsize(self.audiofile1 + ".raw")
self.log_last_step("audiofile1 size is %d, a negative size indicates the file was not present." % (self.audiofile1size, ))
if self.audiofile1size < self.expectedfilesize:
@@ -65,7 +67,33 @@
def launch_test1(self):
self.log_last_step("Placing call to test1 exten")
- self.ast1.cli_exec("console dial test1 at mixmonitortest")
+ self.ast1.cli_originate("Local/s at listener extension 101 at ast1")
+
+ def check_test1(self, ami, event):
+ self.log_last_step("Checking Userevent")
+ if event.get("userevent").lower() != "test1":
+ return
+ status = event.get("status")
+ print ("Status of test1 is %s" % (status))
+ if status != "SUCCESS":
+ self.stop_reactor()
+ return
+
+ self.read_result()
+
+ def ami_on_connect1(self, ami):
+ self.log_last_step("Connected to AMI 1")
+ self.ami = ami
+ self.ami.registerEvent("UserEvent", self.check_test1)
+
+ def ami_login_error(self, ami):
+ self.log_last_step("AMI login failed")
+ self.stop_reactor()
+
+ def ami_login(self):
+ self.log_last_step("Logging in to the AMI")
+ self.ami_factory1 = manager.AMIFactory("user", "mysecret")
+ self.ami_factory1.login('127.0.0.1', 5038).addCallbacks(self.ami_on_connect1, self.ami_login_error)
def start_asterisk(self):
self.log_last_step("Starting Asterisk")
@@ -86,18 +114,16 @@
self.last_step = step
def run(self):
- self.start_asterisk()
-
- # call test1 extension now
+ self.ami_login()
self.launch_test1()
- # read test results in 20 seconds
- reactor.callLater(20, self.read_result)
+ reactor.callLater(30, self.stop_reactor)
def main(argv=None):
if argv is None:
argv = sys.argv
test = MixMonitorTest(argv)
+ test.start_asterisk()
reactor.run()
test.stop_asterisk()
if test.passed:
@@ -107,3 +133,4 @@
if __name__ == "__main__":
sys.exit(main() or 0)
+# vim:sw=4:ts=4:expandtab:textwidth=79
Modified: asterisk/trunk/tests/mixmonitor_audiohook_inherit/test-config.yaml
URL: http://svnview.digium.com/svn/testsuite/asterisk/trunk/tests/mixmonitor_audiohook_inherit/test-config.yaml?view=diff&rev=1288&r1=1287&r2=1288
==============================================================================
--- asterisk/trunk/tests/mixmonitor_audiohook_inherit/test-config.yaml (original)
+++ asterisk/trunk/tests/mixmonitor_audiohook_inherit/test-config.yaml Wed Dec 22 20:37:09 2010
@@ -1,5 +1,4 @@
testinfo:
- skip: 'Skip while failures are debugged'
summary: 'Test MixMonitor with AUDIOHOOK_INHERIT'
description: |
'This test verifies basic functionality using MixMonitor with AUDIOHOOK_INHERIT.
@@ -15,4 +14,4 @@
minversion: '1.6.2'
dependencies:
- python : 'twisted'
- - custom : 'soundcard'
+ - python : 'starpy'
More information about the asterisk-commits
mailing list