Hi all, thanks your suggestions are very helpfull and I managed to have something resembling an integration test using Trial :-)
Indeed the HTML version does not work for me either but the document still remains helpfull. So, is this documentation something going to be published sooner or later (as I see it's in a branch) ? Thank you. Regards, Alessio Pace On Mon, Jan 26, 2009 at 6:00 PM, Martin Geisler <m...@daimi.au.dk> wrote: > Alessio Pace <alessio.p...@gmail.com> writes: > > > I would like to put in my suite of tests some integration tests which > > deal with running some exchange of messages among 2 endpoints (bound > > locally on the same machine on 2 different ports). > > > > I noticed (and read afterwards..) that I can't run()/stop() the > > reactor multiple times, so I was wondering what's the suggested way to > > deal with this kind of situation. > > > > Sorry if perhaps it is documented somewhere on the Twisted doc but > > apart from the mention to "Trial" (which I'm not sure responds to my > > needs) I haven't found much. > > Trial is what you want, it knows how to deal with the Deferreds you are > likely to return from your tests. > > The point is that you can do stuff like this where getPage is a function > which returns a Deferred: > > def test_something(self): > p = getPage("http://example.com/") > p.addCallback(self.assertEquals, "<html>...</html>") > return p > > When you return p from the test, the reactor will wait until p has fired > before starting the next test. When p fires, the callbacks are executed > like normal, and here the callsback compares the HTML retrieved with the > expected content. If p does not fire within a given timeout (120 seconds > by default, I think) the reactor will declare the test a failure. > > Take a look at the tutorial here: > > > http://twistedmatrix.com/trac/browser/branches/trial-tutorial-2443/doc/core/howto/trial.xhtml > > Use the link for "Original Format" at the bottom to view as HTML, though > I'm getting an XML parse error from my browser when I do this. > > I'm using the twisted.protocols.loopback module for connecting several > parties with a pseudo-transport. This allows the testing code to behave > like in your normal application, but the communication is done with > function calls instead of actual network traffic. > > > -- > Martin Geisler > > VIFF (Virtual Ideal Functionality Framework) brings easy and efficient > SMPC (Secure Multiparty Computation) to Python. See: http://viff.dk/. > > _______________________________________________ > Twisted-Python mailing list > Twisted-Python@twistedmatrix.com > http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python > >
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python