mgcp: Verify that the force-ptime is written back to the file

When the command was added it was not verified that. Add a very
basic MGCP VTY test and test that the string appears in the config.
This commit is contained in:
Holger Hans Peter Freyther 2014-07-04 20:23:56 +02:00
parent 2947411383
commit 8d998a713e
3 changed files with 26 additions and 1 deletions

View File

@ -12,6 +12,7 @@ mgcp
bind ip 127.0.0.1
bind port 2427
rtp base 4000
rtp force-ptime 20
sdp audio payload number 98
sdp audio payload name AMR/8000
number endpoints 31

View File

@ -2,7 +2,7 @@
/* The protocol implementation */
/*
* (C) 2009-2011 by Holger Hans Peter Freyther <zecke@selfish.org>
* (C) 2009-2014 by Holger Hans Peter Freyther <zecke@selfish.org>
* (C) 2009-2011 by On-Waves
* All Rights Reserved
*
@ -128,6 +128,8 @@ static int config_write_mgcp(struct vty *vty)
else
vty_out(vty, " rtp transcoder-range %u %u%s",
g_cfg->transcoder_ports.range_start, g_cfg->transcoder_ports.range_end, VTY_NEWLINE);
if (g_cfg->bts_force_ptime > 0)
vty_out(vty, " rtp force-ptime %d%s", g_cfg->bts_force_ptime, VTY_NEWLINE);
vty_out(vty, " transcoder-remote-base %u%s", g_cfg->transcoder_remote_base, VTY_NEWLINE);
vty_out(vty, " osmux %s%s",
g_cfg->osmux == 1 ? "on" : "off", VTY_NEWLINE);

View File

@ -56,6 +56,27 @@ class TestVTYBase(unittest.TestCase):
self.vty = None
osmoutil.end_proc(self.proc)
class TestVTYMGCP(TestVTYBase):
def vty_command(self):
return ["./src/osmo-bsc_mgcp/osmo-bsc_mgcp", "-c",
"doc/examples/osmo-bsc_mgcp/mgcp.cfg"]
def vty_app(self):
return (4243, "./src/osmo-bsc_mgcp/osmo-bsc_mgcp", "OpenBSC MGCP", "mgcp")
def testForcePtime(self):
self.vty.enable()
res = self.vty.command("show running-config")
self.assert_(res.find(' rtp force-ptime 20\r') > 0)
self.assertEquals(res.find(' no rtp force-ptime\r'), -1)
self.vty.command("configure terminal")
self.vty.command("mgcp")
self.vty.command("no rtp force-ptime")
res = self.vty.command("show running-config")
self.assertEquals(res.find(' rtp force-ptime 20\r'), -1)
self.assertEquals(res.find(' no rtp force-ptime\r'), -1)
class TestVTYGenericBSC(TestVTYBase):
@ -656,6 +677,7 @@ if __name__ == '__main__':
os.chdir(workdir)
print "Running tests for specific VTY commands"
suite = unittest.TestSuite()
suite.addTest(unittest.TestLoader().loadTestsFromTestCase(TestVTYMGCP))
suite.addTest(unittest.TestLoader().loadTestsFromTestCase(TestVTYNITB))
add_bsc_test(suite, workdir)
add_nat_test(suite, workdir)