Esempio n. 1
0
class FileTransferTestCase(unittest.TestCase):
    """
    test FileSend against FileReceive
    """
    def setUp(self):
        self.input = 'a' * 7000
        self.output = StringIOWithoutClosing()

    def tearDown(self):
        self.input = None
        self.output = None

    def test_fileTransfer(self):
        """
        Test L{FileSend} against L{FileReceive} using a loopback transport.
        """
        auth = 1234
        sender = msn.FileSend(StringIO.StringIO(self.input))
        sender.auth = auth
        sender.fileSize = 7000
        client = msn.FileReceive(auth, "*****@*****.**", self.output)
        client.fileSize = 7000

        def check(ignored):
            self.assertTrue(client.completed and sender.completed,
                            msg="send failed to complete")
            self.assertEqual(self.input,
                             self.output.getvalue(),
                             msg="saved file does not match original")

        d = loopback.loopbackAsync(sender, client)
        d.addCallback(check)
        return d
Esempio n. 2
0
 def runTest(self):
     packets=["FLAPON\r\n\r\n",\
      flap(1,"\000\000\000\001\000\001\000\004test"),\
      flap(2,"toc_signon null 9999 test 0x100000 english \"penguin 0.1\"\000"),\
      flap(2,"toc_init_done\000"),\
      flap(2,"toc_send_im test hi\000")]
     shouldbe=[[1,"\000\000\000\001"],\
      [2,"SIGN_ON:TOC1.0\000"],\
      [2,"NICK:test\000"],\
      [2,"CONFIG:\000"],\
      [2,"IM_IN:test:F:hi\000"]]
     data=""
     for i in packets:
         data=data+i
     s=StringIOWithoutClosing()
     d=DummyTOC()
     fac=toc.TOCFactory()
     d.factory=fac
     d.makeConnection(protocol.FileWrapper(s))
     d.dataReceived(data)
     d.connectionLost(failure.Failure(main.CONNECTION_DONE))
     value=s.getvalue()
     flaps=[]
     f,value=readFlap(value)
     while f:
         flaps.append(f)
         f,value=readFlap(value)
     if flaps!=shouldbe:
         for i in range(len(flaps)):
             if flaps[i]!=shouldbe[i]:raise AssertionError("MultiPacketTest Failed!\nactual:%s\nshould be:%s"%(flaps[i],shouldbe[i]))
         raise AssertionError("MultiPacketTest Failed with incorrect length!, printing both lists\nactual:%s\nshould be:%s"%(flaps,shouldbe))
Esempio n. 3
0
class FileTransferTestCase(unittest.TestCase):
    """
    test FileSend against FileReceive
    """

    def setUp(self):
        self.input = 'a' * 7000
        self.output = StringIOWithoutClosing()


    def tearDown(self):
        self.input = None
        self.output = None


    def test_fileTransfer(self):
        """
        Test L{FileSend} against L{FileReceive} using a loopback transport.
        """
        auth = 1234
        sender = msn.FileSend(StringIO.StringIO(self.input))
        sender.auth = auth
        sender.fileSize = 7000
        client = msn.FileReceive(auth, "*****@*****.**", self.output)
        client.fileSize = 7000
        def check(ignored):
            self.assertTrue(
                client.completed and sender.completed,
                msg="send failed to complete")
            self.assertEqual(
                self.input, self.output.getvalue(),
                msg="saved file does not match original")
        d = loopback.loopbackAsync(sender, client)
        d.addCallback(check)
        return d
Esempio n. 4
0
 def runTest(self):
     sends=["FLAPON\r\n\r\n",\
      flap(1,"\000\000\000\001\000\001\000\004test"),\
      flap(2,"toc_signon localhost 9999 test 0x00 english penguin\000"),\
      flap(2,"toc_init_done\000"),\
      flap(2,"toc_add_deny\000"),\
      flap(2,"toc_send_im test 1\000"),\
      flap(2,"toc_add_deny test\000"),\
      flap(2,"toc_send_im test 2\000"),\
      flap(2,"toc_add_permit\000"),\
      flap(2,"toc_send_im test 3\000"),\
      flap(2,"toc_add_permit test\000"),\
      flap(2,"toc_send_im test 4\000")]
     expect=[[1,"\000\000\000\001"],\
      [2,"SIGN_ON:TOC1.0\000"],\
      [2,"NICK:test\000"],\
      [2,"CONFIG:\000"],\
      [2,"IM_IN:test:F:1\000"],\
      [2,"ERROR:901:test\000"],\
      [2,"ERROR:901:test\000"],\
      [2,"IM_IN:test:F:4\000"]]
     d=DummyTOC()
     d.factory=toc.TOCFactory()
     s=StringIOWithoutClosing()
     d.makeConnection(protocol.FileWrapper(s))
     for i in sends:
         d.dataReceived(i)
     d.connectionLost(failure.Failure(main.CONNECTION_DONE))
     v=s.getvalue()
     flaps=[]
     f,v=readFlap(v)
     while f:
         flaps.append(f)
         f,v=readFlap(v)
     if flaps!=expect:
         for i in range(len(flaps)):
             if flaps[i]!=expect[i]:
                 raise AssertionError("PrivacyTest Before Failed!\nactual:%s\nshould be:%s"%(flaps[i],expect[i]))
         raise AssertionError("PrivacyTest Before Failed with incorrect length!\nactual:%s\nshould be:%s"%(flaps,expect))         
Esempio n. 5
0
 def runTest(self):
     password1=toc.roast("test pass")
     password2=toc.roast("pass test")
     beforesend=[\
      "FLAPON\r\n\r\n",\
      flap(1,"\000\000\000\001\000\001\000\004test"),\
      flap(2,"toc_signon localhost 9999 test %s english \"penguin 0.1\"\000"%password1),\
      flap(2,"toc_init_done\000"),\
      flap(2,"toc_set_config \"{m 4}\"\000"),\
      flap(2,"toc_format_nickname BOOGA\000"),\
      flap(2,"toc_format_nickname \"T E S T\"\000"),\
      flap(2,"toc_change_passwd \"testpass\" \"pass test\"\000"),\
      flap(2,"toc_change_passwd \"test pass\" \"pass test\"\000")]
     beforeexpect=[\
      [1,"\000\000\000\001"],\
      [2,"SIGN_ON:TOC1.0\000"],\
      [2,"NICK:test\000"],\
      [2,"CONFIG:\000"],\
      [2,"ERROR:911\000"],\
      [2,"ADMIN_NICK_STATUS:0\000"],\
      [2,"ERROR:911\000"],\
      [2,"ADMIN_PASSWD_STATUS:0\000"]]
     badpasssend=[\
      "FLAPON\r\n\r\n",\
      flap(1,"\000\000\000\001\000\001\000\004test"),\
      flap(2,"toc_signon localhost 9999 test 0x1000 english \"penguin 0.1\"\000"),\
      flap(2,"toc_init_done")]
     badpassexpect=[\
      [1,"\000\00\000\001"],\
      [2,"ERROR:980\000"]]
     goodpasssend=[\
      "FLAPON\r\n\r\n",\
      flap(1,"\000\000\000\001\000\001\000\004test"),\
      flap(2,"toc_signon localhost 9999 test %s english \"penguin 0.1\"\000"%password2),\
      flap(2,"toc_init_done")]
     goodpassexpect=[\
      [1,"\000\000\000\001"],\
      [2,"SIGN_ON:TOC1.0\000"],\
      [2,"NICK:T E S T\000"],\
      [2,"CONFIG:{m 4}\000"]]
     fac=toc.TOCFactory()
     d=DummyTOC()
     d.factory=fac
     s=StringIOWithoutClosing()
     d.makeConnection(protocol.FileWrapper(s))
     for i in beforesend:
         d.dataReceived(i)
     d.connectionLost(failure.Failure(main.CONNECTION_DONE))
     v=s.getvalue()
     flaps=[]
     f,v=readFlap(v)
     while f:
         flaps.append(f)
         f,v=readFlap(v)
     if flaps!=beforeexpect:
         for i in range(len(flaps)):
             if flaps[i]!=beforeexpect[i]:
                 raise AssertionError("SavedValuesTest Before Failed!\nactual:%s\nshould be:%s"%(flaps[i],beforeexpect[i]))
         raise AssertionError("SavedValuesTest Before Failed with incorrect length!\nactual:%s\nshould be:%s"%(flaps,beforeexpect))
     d=DummyTOC()
     d.factory=fac
     s=StringIOWithoutClosing()
     d.makeConnection(protocol.FileWrapper(s))
     for i in badpasssend:
         d.dataReceived(i)
     d.connectionLost(failure.Failure(main.CONNECTION_DONE))
     v=s.getvalue()
     flaps=[]
     f,v=readFlap(v)
     while f:
         flaps.append(f)
         f,v=readFlap(v)
     if flaps!=badpassexpect:
         for i in range(len(flaps)):
             if flaps[i]!=badpassexpect[i]:
                 raise AssertionError("SavedValuesTest BadPass Failed!\nactual:%s\nshould be:%s"%(flaps[i],badpassexpect[i]))
         raise AssertionError("SavedValuesTest BadPass Failed with incorrect length!\nactual:%s\nshould be:%s"%(flaps,badpassexpect))
     d=DummyTOC()
     d.factory=fac
     s=StringIOWithoutClosing()
     d.makeConnection(protocol.FileWrapper(s))
     for i in goodpasssend:
         d.dataReceived(i)
     d.connectionLost(failure.Failure(main.CONNECTION_DONE))
     v=s.getvalue()
     flaps=[]
     f,v=readFlap(v)
     while f:
         flaps.append(f)
         f,v=readFlap(v)
     if flaps!=goodpassexpect:
         for i in range(len(flaps)):
             if flaps[i]!=goodpassexpect[i]:
                 raise AssertionError("SavedValuesTest GoodPass Failed!\nactual:%s\nshould be:%s"%(flaps[i],goodpassexpect[i]))
         raise AssertionError("SavedValuesTest GoodPass Failed with incorrect length!\nactual:%s\nshould be:%s"%(flaps,beforeexpect))