use of org.neo4j.bolt.packstream.Neo4jPack in project neo4j by neo4j.
the class PullMessageDecoderTest method assertOriginalMessageEqualsToDecoded.
private static void assertOriginalMessageEqualsToDecoded(RequestMessage originalMessage, RequestMessageDecoder decoder) throws Exception {
Neo4jPack neo4jPack = newNeo4jPack();
PackedInputArray input = new PackedInputArray(encode(neo4jPack, originalMessage));
Neo4jPack.Unpacker unpacker = neo4jPack.newUnpacker(input);
// these two steps are executed before decoding in order to select a correct decoder
unpacker.unpackStructHeader();
unpacker.unpackStructSignature();
RequestMessage deserializedMessage = decoder.decode(unpacker);
assertEquals(originalMessage, deserializedMessage);
}
use of org.neo4j.bolt.packstream.Neo4jPack in project neo4j by neo4j.
the class HelloMessageDecoderTest method testShouldErrorForMissingUserAgent.
@Test
protected void testShouldErrorForMissingUserAgent() throws Exception {
Neo4jPack neo4jPack = newNeo4jPack();
Map<String, Object> authToken = new HashMap<>();
HelloMessage originalMessage = new HelloMessage(authToken);
PackedInputArray input = new PackedInputArray(encode(neo4jPack, originalMessage));
Neo4jPack.Unpacker unpacker = neo4jPack.newUnpacker(input);
// these two steps are executed before decoding in order to select a correct decoder
unpacker.unpackStructHeader();
unpacker.unpackStructSignature();
BoltIOException exception = assertThrows(BoltIOException.class, () -> decoder.decode(unpacker));
assertEquals("Expected \"user_agent\" in metadata", exception.getMessage());
}
use of org.neo4j.bolt.packstream.Neo4jPack in project neo4j by neo4j.
the class HelloMessageDecoderTest method assertOriginalMessageEqualsToDecoded.
static void assertOriginalMessageEqualsToDecoded(RequestMessage originalMessage, RequestMessageDecoder decoder) throws Exception {
Neo4jPack neo4jPack = newNeo4jPack();
PackedInputArray input = new PackedInputArray(encode(neo4jPack, originalMessage));
Neo4jPack.Unpacker unpacker = neo4jPack.newUnpacker(input);
// these two steps are executed before decoding in order to select a correct decoder
unpacker.unpackStructHeader();
unpacker.unpackStructSignature();
RequestMessage deserializedMessage = decoder.decode(unpacker);
assertEquals(originalMessage, deserializedMessage);
}
use of org.neo4j.bolt.packstream.Neo4jPack in project neo4j by neo4j.
the class BoltRequestMessageReaderV4Test method verifyBoltV3MessageIsReadAsBoltV4Message.
private static void verifyBoltV3MessageIsReadAsBoltV4Message(TransactionInitiatingMessage messageV3, TransactionInitiatingMessage messageV4) throws Exception {
Neo4jPack neo4jPack = newNeo4jPack();
BoltStateMachine stateMachine = mock(BoltStateMachine.class);
BoltRequestMessageReader reader = requestMessageReader(stateMachine);
PackedInputArray input = new PackedInputArray(encode(neo4jPack, messageV3));
Neo4jPack.Unpacker unpacker = neo4jPack.newUnpacker(input);
reader.read(unpacker);
verify(stateMachine).process(eq(messageV4), any());
assertThat(messageV3.meta()).isEqualTo(messageV4.meta());
}
use of org.neo4j.bolt.packstream.Neo4jPack in project neo4j by neo4j.
the class BoltRequestMessageReaderV41Test method testMessageDecoding.
private static void testMessageDecoding(RequestMessage message) throws Exception {
Neo4jPack neo4jPack = newNeo4jPack();
BoltStateMachine stateMachine = mock(BoltStateMachine.class);
BoltRequestMessageReader reader = requestMessageReader(stateMachine);
PackedInputArray input = new PackedInputArray(encode(neo4jPack, message));
Neo4jPack.Unpacker unpacker = neo4jPack.newUnpacker(input);
reader.read(unpacker);
verify(stateMachine).process(eq(message), any());
}
Aggregations