Review Board 1.7.16

Use spaces to format XML and create SIPpVersion class

Review Request #1049 - Created Dec. 7, 2010 and submitted

Paul Belanger
After running into some issue getting the testsuite running under Ubuntu 8.04, it seemed older versions of SIPp fail to parse tabs (/t) properly. So, I replaced them with 4 spaces.

I then ran into an issue of failing tests because my SIPp version did not have the appropriate compile time flags enabled, so I created a new SIPpVersion parser.  I used the AsteriskVersion class as a template, also creating various unit tests to test the parser (very cool and fun BTW).  I've defaulted our SIPp based tests to 'v3.0' however I know some will require TLS, PCAP or both.  Will need help to confirm which will use it.

Feedback is required :)
local Ubuntu, FreeBSD and CentOS system.
Review request changed
Updated (Dec. 9, 2010, 11:05 a.m.)
v2: Fix logic issues.
Posted (Dec. 10, 2010, 3:07 a.m.)
This is a great start.  I have a suggestion for a further enhancement.

Some tests require a feature of SIPp, not so much a version.  For example, some tests require that it has been built with pcap support.  I think it would be good to be able to specify that as a type of SIPp requirement in the test config file.
  1. Unless I missed an option, you can specify -TLS, -PCAP, or -TLS-PCAP in your version string.  SIPpVersion will compare both version number an options.  I have not added the proper flags to the tests yet, was looking for help on which ones used -TLS, -PCAP or -TLS-PCAP
  2. You can include -TLS, -PCAP, or -TLS-PCAP in the version string.  However, the version number takes precedence over the features.  For example.
    "v3.2-PCAP" > "v3.2"
    "v3.2" > "v3.1-PCAP-TLS"
    I'd like to able to specify both a version number requirement and a specific feature requirement.  I don't think the feature requirements can be handled through the > comparison exclusively.  They need to be boolean requirements so you can say "I need pcap support but don't care what SIPp version", or "I require pcap support and SIPp of at least v3.2".
  3. Okay, I see what you mean, Something like this:
    SIPpVersion("v2.0.1", "TLS")
    - sipp :
        - version : 'v3.0'
        - feature : 'TLS'
    - sipp :
        - feature : 'TLS-PCAP' runs on a server provided by Digium, Inc. and uses bandwidth donated to the open source Asterisk community by API Digital Communications in Huntsville, AL USA.
Please report problems with this site to