本文整理汇总了Python中aspen.testing.client.Client.hydrate_website方法的典型用法代码示例。如果您正苦于以下问题:Python Client.hydrate_website方法的具体用法?Python Client.hydrate_website怎么用?Python Client.hydrate_website使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类aspen.testing.client.Client
的用法示例。
在下文中一共展示了Client.hydrate_website方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Harness
# 需要导入模块: from aspen.testing.client import Client [as 别名]
# 或者: from aspen.testing.client.Client import hydrate_website [as 别名]
class Harness(object):
"""A harness to be used in the Aspen test suite itself. Probably not useful to you.
"""
def __init__(self):
self.fs = namedtuple('fs', 'www project')
self.fs.www = FilesystemTree()
self.fs.project = FilesystemTree()
self.client = Client(self.fs.www.root, self.fs.project.root)
def teardown(self):
self.fs.www.remove()
self.fs.project.remove()
# Simple API
# ==========
def simple(self, contents='Greetings, program!', filepath='index.html.spt', uripath=None,
argv=None, **kw):
"""A helper to create a file and hit it through our machinery.
"""
if filepath is not None:
self.fs.www.mk((filepath, contents))
if argv is not None:
self.client.hydrate_website(argv)
if uripath is None:
if filepath is None:
uripath = '/'
else:
uripath = '/' + filepath
if uripath.endswith('.spt'):
uripath = uripath[:-len('.spt')]
for indexname in self.client.website.indices:
if uripath.endswith(indexname):
uripath = uripath[:-len(indexname)]
break
return self.client.GET(uripath, **kw)
def make_request(self, *a, **kw):
kw['return_after'] = 'dispatch_request_to_filesystem'
kw['want'] = 'request'
return self.simple(*a, **kw)
def make_dispatch_result(self, *a, **kw):
kw['return_after'] = 'dispatch_request_to_filesystem'
kw['want'] = 'dispatch_result'
return self.simple(*a, **kw)
示例2: __init__
# 需要导入模块: from aspen.testing.client import Client [as 别名]
# 或者: from aspen.testing.client.Client import hydrate_website [as 别名]
def __init__(self, *a, **kw):
Client.__init__(self, *a, **kw)
Client.website = Client.hydrate_website(self)
示例3: Harness
# 需要导入模块: from aspen.testing.client import Client [as 别名]
# 或者: from aspen.testing.client.Client import hydrate_website [as 别名]
class Harness(object):
"""A harness to be used in the Aspen test suite itself. Probably not useful to you.
"""
def __init__(self):
self.fs = namedtuple("fs", "www project")
self.fs.www = FilesystemTree()
self.fs.project = FilesystemTree()
self.client = Client(self.fs.www.root, self.fs.project.root)
def teardown(self):
self.fs.www.remove()
self.fs.project.remove()
# Simple API
# ==========
def simple(self, contents="Greetings, program!", filepath="index.html.spt", uripath=None, argv=None, **kw):
"""A helper to create a file and hit it through our machinery.
"""
if filepath is not None:
self.fs.www.mk((filepath, contents))
if argv is not None:
self.client.hydrate_website(argv)
if uripath is None:
if filepath is None:
uripath = "/"
else:
uripath = "/" + filepath
if uripath.endswith(".spt"):
uripath = uripath[: -len(".spt")]
for indexname in self.client.website.indices:
if uripath.endswith(indexname):
uripath = uripath[: -len(indexname)]
break
return self.client.GET(uripath, **kw)
def make_request(self, *a, **kw):
kw["return_after"] = "dispatch_request_to_filesystem"
kw["want"] = "request"
return self.simple(*a, **kw)
# Sockets
# =======
def make_transport(self, content="", state=0):
self.fs.www.mk(("echo.sock.spt", content))
socket = self.make_socket()
transport = XHRPollingTransport(socket)
transport.timeout = 0.05 # for testing, could screw up the test
if state == 1:
transport.respond(Request(uri="/echo.sock"))
return transport
def make_socket_request(self, filename="echo.sock.spt"):
request = Request(uri="/echo.sock")
request.website = self.client.website
request.fs = self.fs.www.resolve(filename)
return request
def make_socket(self, filename="echo.sock.spt", channel=None):
request = self.make_socket_request(filename="echo.sock.spt")
if channel is None:
channel = Channel(request.line.uri.path.raw, ThreadedBuffer)
socket = Socket(request, channel)
return socket
def SocketInThread(harness):
class _SocketInThread(object):
def __enter__(self, filename="echo.sock.spt"):
self.socket = harness.make_socket(filename)
self.socket.loop.start()
return self.socket
def __exit__(self, *a):
self.socket.loop.stop()
return _SocketInThread()