use of alluxio.network.protocol.databuffer.DataByteArrayChannel in project alluxio by Alluxio.
the class NettyDataServerTest method writeNewBlock.
@Test
public void writeNewBlock() throws Exception {
long sessionId = 0;
long blockId = 1;
long length = 2;
// Offset is set to 0 so that a new block will be created.
long offset = 0;
DataByteArrayChannel data = new DataByteArrayChannel("abc".getBytes(Charsets.UTF_8), 0, 3);
MockBlockWriter blockWriter = new MockBlockWriter();
when(mBlockWorker.getTempBlockWriterRemote(sessionId, blockId)).thenReturn(blockWriter);
RPCResponse response = request(new RPCBlockWriteRequest(sessionId, blockId, offset, length, data));
// Verify that the write request tells the worker to create a new block and write the specified
// data to it.
assertEquals(RPCResponse.Status.SUCCESS, response.getStatus());
verify(mBlockWorker).createBlockRemote(sessionId, blockId, "MEM", length);
assertEquals("ab", new String(blockWriter.getBytes(), Charsets.UTF_8));
}
use of alluxio.network.protocol.databuffer.DataByteArrayChannel in project alluxio by Alluxio.
the class NettyDataServerTest method fileSystemWorkerExceptionCausesFailStatusOnWrite.
@Test
public void fileSystemWorkerExceptionCausesFailStatusOnWrite() throws Exception {
DataByteArrayChannel data = new DataByteArrayChannel("abc".getBytes(Charsets.UTF_8), 0, 3);
when(mFileSystemWorker.getUfsOutputStream(1)).thenThrow(new RuntimeException());
RPCResponse response = request(new RPCFileWriteRequest(1, 0, 3, data));
// Verify that the write request failed.
assertEquals(RPCResponse.Status.UFS_WRITE_FAILED, response.getStatus());
}
Aggregations