views:

85

answers:

0

I am using SUDS to access a SOAP server. When I run the script directly, I have no problems. If I use nosetest to run the script, the connection to the server fails:

Traceback (most recent call last):
  File "c:\python25\lib\site-packages\nose-0.11.3-py2.5.egg\nose\suite.py", line 197, in run
    self.setUp()
  File "c:\python25\lib\site-packages\nose-0.11.3-py2.5.egg\nose\suite.py", line 280, in setUp
    self.setupContext(ancestor)
  File "c:\python25\lib\site-packages\nose-0.11.3-py2.5.egg\nose\suite.py", line 303, in setupContext
    try_run(context, names)
  File "c:\python25\lib\site-packages\nose-0.11.3-py2.5.egg\nose\util.py", line 491, in try_run
    return func()
  File "E:\server Test\workspace\Server tester\src\tests\__init__.py", line 6, in setup
    connect.start()
  File "E:\server Test\workspace\Server tester\src\tests\connect.py", line 7, in start
    connection = Client("http://localhost:8888/ClearCore?WSDL")
  File "E:\server Test\workspace\Suds experiment\src\suds\client.py", line 111, in __init__
    self.wsdl = reader.open(url)
  File "E:\server Test\workspace\Suds experiment\src\suds\reader.py", line 136, in open
    d = self.fn(url, self.options)
  File "E:\server Test\workspace\Suds experiment\src\suds\wsdl.py", line 159, in __init__
    self.build_schema()
  File "E:\server Test\workspace\Suds experiment\src\suds\wsdl.py", line 220, in build_schema
    self.schema = container.load(self.options)
  File "E:\server Test\workspace\Suds experiment\src\suds\xsd\schema.py", line 92, in load
    child.open_imports(options)
  File "E:\server Test\workspace\Suds experiment\src\suds\xsd\schema.py", line 298, in open_imports
    imported = imp.open(options)
  File "E:\server Test\workspace\Suds experiment\src\suds\xsd\sxbasic.py", line 515, in open
    result = self.download(options)
  File "E:\server Test\workspace\Suds experiment\src\suds\xsd\sxbasic.py", line 533, in download
    d = reader.open(url)
  File "E:\server Test\workspace\Suds experiment\src\suds\reader.py", line 73, in open
    d = self.download(url)
  File "E:\server Test\workspace\Suds experiment\src\suds\reader.py", line 88, in download
    fp = self.options.transport.open(Request(url))
  File "E:\server Test\workspace\Suds experiment\src\suds\transport\https.py", line 60, in open
    return  HttpTransport.open(self, request)
  File "E:\server Test\workspace\Suds experiment\src\suds\transport\http.py", line 62, in open
    return self.u2open(u2request)
  File "E:\server Test\workspace\Suds experiment\src\suds\transport\http.py", line 116, in u2open
    return url.open(u2request)
  File "C:\Python25\lib\urllib2.py", line 381, in open
    response = self._open(req, data)
  File "C:\Python25\lib\urllib2.py", line 399, in _open
    '_open', req)
  File "C:\Python25\lib\urllib2.py", line 360, in _call_chain
    result = func(*args)
  File "C:\Python25\lib\urllib2.py", line 1107, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "C:\Python25\lib\urllib2.py", line 1082, in do_open
    raise URLError(err)
URLError: urlopen error timed out
-------------------- begin captured logging --------------------
suds.wsdl: DEBUG: reading wsdl at: http://localhost:8888/ClearCore?WSDL ...
suds.transport.http: DEBUG: opening (http://localhost:8888/ClearCore?WSDL)
suds.metrics: DEBUG: sax (addinfourl at 23891040 whose fp = (socket._fileobject object at 0x016B4830> )) duration: 950 (ms)
suds.xsd.sxbasic: DEBUG: Import:0x1c10b50, importing ns="http://tempuri.org/", location="http://localhost:8888/ClearCore?xsd=xsd0"
suds.transport.http: DEBUG: opening (http://localhost:8888/ClearCore?xsd=xsd0)
--------------------- end captured logging ---------------------

The script itself is pretty simple:

main.py:

import nose
import tests.connect

if False:
    tests.connect.start()
    print tests.connect.connection
    tests.connect.stop()
else:
    nose.main()

tests/__init__.py:

from suds.client import Client 

import connect

def setup():
    connect.start()

def teardown():
    connect.stop()

tests/connect.py:

from suds.client import Client

connection = None

def start():
    global connection
    connection = Client("http://localhost:8888/ClearCore?WSDL")

def stop():
    global connection
    connection = None

tests/test_1.py:

def fred_test():
    print "fred_test"
    assert 1==1, "hello"

Why am I getting this error, and how do I get things to work?