Fix serialization when a Request has no associated client connection.

This commit is contained in:
Aldo Cortesi
2011-02-19 17:03:44 +13:00
parent 5da27a9905
commit d9c6be3d13
2 changed files with 6 additions and 2 deletions

View File

@@ -150,7 +150,7 @@ class Request(controller.Msg):
def get_state(self):
return dict(
client_conn = self.client_conn.get_state(),
client_conn = self.client_conn.get_state() if self.client_conn else None,
host = self.host,
port = self.port,
scheme = self.scheme,
@@ -164,7 +164,7 @@ class Request(controller.Msg):
@classmethod
def from_state(klass, state):
return klass(
ClientConnect.from_state(state["client_conn"]),
ClientConnect.from_state(state["client_conn"]) if state["client_conn"] else None,
state["host"],
state["port"],
state["scheme"],

View File

@@ -230,6 +230,10 @@ class uRequest(libpry.AutoTree):
state = r.get_state()
assert proxy.Request.from_state(state) == r
r.client_conn = None
state = r.get_state()
assert proxy.Request.from_state(state) == r
class uResponse(libpry.AutoTree):
def test_simple(self):