Changeset 12

Show
Ignore:
Timestamp:
02/13/07 13:57:07 (2 years ago)
Author:
kevin
Message:

empty elements become empty strings, not null

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/tgwebservices/soap.py

    r9 r12  
    194194        for paramelem in body.getchildren(): 
    195195            paramname = namespace_expr.sub("", paramelem.tag) 
    196             params[paramname] = paramelem.text 
     196            val = paramelem.text 
     197            if val is None: 
     198                val = "" 
     199            params[paramname] = val 
    197200         
    198201        try: 
  • trunk/tgwebservices/tests/test_soap.py

    r1 r12  
    418418            assert num3.attrib["name"] == "num3" 
    419419            assert num3.attrib["minOccurs"] == "0" 
     420 
     421class StringRoot(WebServicesRoot): 
     422    @wsexpose(str) 
     423    @wsvalidate(str) 
     424    def say_hello(self, name): 
     425        assert name is not None 
     426        assert name != "None" 
     427        return "Hi, %s" % name 
     428 
     429def test_empty_parameter_is_empty_string(): 
     430    cherrypy.root = StringRoot("http://foo.bar.baz/") 
     431    output = run_soap("say_hello", """<name></name>""") 
     432    print output 
     433    assert "fault" not in output