def test_offset(self):
        """
        Test that, if the server's BEGIN_CONTENT message specifies an offset,
        the file to be uploaded is seek'ed to the right position.
        """
        offset = 23
        mocker = Mocker()
        transport = mocker.mock()
        transport.registerProducer(ANY, streaming=True)
        transport.write(ANY)
        mocker.count(1, None)  # I don't really care how many times
        fd = mocker.mock()
        fd.seek(offset)  # this is really all I care about
        fd.read(ANY)
        mocker.result('')
        mocker.replay()

        protocol = StorageClient()
        protocol.transport = transport
        pc = PutContent(protocol, 'share', 'node', '', '', 0, 0, 0, fd)
        message = protocol_pb2.Message()
        message.type = protocol_pb2.Message.BEGIN_CONTENT
        message.begin_content.offset = offset
        pc.start()
        pc.processMessage(message)
예제 #2
0
    def connectionMade(self):
        """Setup and call callback."""

        StorageClient.connectionMade(self)
        if self.factory.current_protocol not in (None, self):
            self.factory.current_protocol.transport.loseConnection()
        self.factory.current_protocol = self
        self.factory.cmd.status = "connected"
        print "Connected."
예제 #3
0
    def connectionMade(self):
        """Setup and call callback."""

        StorageClient.connectionMade(self)
        if self.factory.current_protocol not in (None, self):
            self.factory.current_protocol.transport.loseConnection()
        self.factory.current_protocol = self
        self.factory.cmd.status = "connected"
        print "Connected."
    def connectionMade(self):
        """Setup and call callback."""
        # pylint: disable=W0201
        StorageClient.connectionMade(self)
        print "Connection made."
        d = self.ping()

        def done(request):
            """We have the ping reply"""
            print "Ping RTT:", request.rtt
            reactor.stop()

        def error(failure):
            """Something went wrong."""
            print "Error:"
            print failure.getTraceback()
            reactor.stop()

        d.addCallbacks(done, error)
예제 #5
0
 def connectionMade(self):
     """Setup and call callback."""
     StorageClient.connectionMade(self)
     self.factory.connected(self)
 def connectionMade(self):
     """Setup and call callback."""
     # pylint: disable=W0201
     StorageClient.connectionMade(self)
     self.factory.clientConnectionMade(self)
 def __init__(self):
     """create a client."""
     StorageClient.__init__(self)
     self.cwd = "/"
     self.cwd_id = None
예제 #8
0
 def processMessage(self, message):
     self.messages.append(message)
     StorageClient.processMessage(self, message)
예제 #9
0
 def connectionMade(self):
     """Handle connection made"""
     StorageClient.connectionMade(self)
     ClientTestHelper.connectionMade(self)
예제 #10
0
 def __init__(self, *args, **kwargs):
     """create the instance"""
     StorageClient.__init__(self, *args, **kwargs)
     self.messages = []
예제 #11
0
 def connectionMade(self):
     """Setup and call callback."""
     StorageClient.connectionMade(self)
     self.factory.connected(self)
 def __init__(self, *args, **kwargs):
     """Override transports and keep track of messages."""
     StorageClient.__init__(self, *args, **kwargs)
     self.transport = DummyAttribute()
     self.messages = []
예제 #13
0
 def processMessage(self, message):
     self.messages.append(message)
     StorageClient.processMessage(self, message)
예제 #14
0
 def connectionMade(self):
     """Handle connection made"""
     StorageClient.connectionMade(self)
     ClientTestHelper.connectionMade(self)
예제 #15
0
 def __init__(self, *args, **kwargs):
     """create the instance"""
     StorageClient.__init__(self, *args, **kwargs)
     self.messages = []