Пример #1
0
    def test_changing_live(self):
        t = StringTransport()
        p = GeneratorWrapperProtocol()

        def _123_gen_handler():
            for n in (1, 2, 3):
                s = yield n
                self.messages.append(s.read(n)[:])

        def _321_next_gen_handler(next):
            for n in (3, 2, 1):
                s = yield n
                self.messages.append(s.read(n)[:])
            next()

        def next():
            p.init_handler(_123_gen_handler())

        p.init_handler(_321_next_gen_handler(next))

        p.makeConnection(t)

        p.dataReceived('aaabbcabbcccX')

        self.assertEquals(self.pop_messages(), ['aaa', 'bb', 'c',
                                                'a', 'bb', 'ccc'])
Пример #2
0
    def test_simple_123_plus(self):
        t = StringTransport()
        p = GeneratorWrapperProtocol()

        def _123_gen_handler():
            for n in (1, 2, 3):
                s = yield n
                self.messages.append(s.read(n)[:])

        p.init_handler(_123_gen_handler())

        p.makeConnection(t)

        p.dataReceived('abbcccX')

        self.assertEquals(self.pop_messages(), ['a', 'bb', 'ccc'])