test_class.declarator: payload
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private MySQLPacketPayload payload;
test_class.type: MySQLPacketPayload
test_class.var_name: payload
test_class.declarator: byteBuf
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private ByteBuf byteBuf;
test_class.type: ByteBuf
test_class.var_name: byteBuf
test_class.declarator: columnDef
test_class.modifier: private
test_class.original_string: private MySQLBinlogColumnDef columnDef;
test_class.type: MySQLBinlogColumnDef
test_class.var_name: columnDef
test_class.file: shardingsphere-db-protocol/shardingsphere-db-protocol-mysql/src/test/java/org/apache/shardingsphere/db/protocol/mysql/packet/binlog/row/column/value/string/MySQLVarcharBinlogProtocolValueTest.java
test_class.identifier: MySQLVarcharBinlogProtocolValueTest
test_case.body: @Test
      public void assertReadVarcharValueWithMeta2() {
          StringBuilder expectedStringBuilder = new StringBuilder("test string for length more than 256");
          for (int i = 0; i < 256; i++) {
              expectedStringBuilder.append(i);
          }
          String expected = expectedStringBuilder.toString();
          columnDef.setColumnMeta(expected.length());
          when(payload.getByteBuf()).thenReturn(byteBuf);
          when(byteBuf.readUnsignedShortLE()).thenReturn(expected.length());
          when(payload.readStringFix(expected.length())).thenReturn(expected);
          assertThat(new MySQLVarcharBinlogProtocolValue().read(columnDef, payload), is(expected));
      }
test_case.class_method_signature: MySQLVarcharBinlogProtocolValueTest.assertReadVarcharValueWithMeta2()
test_case.full_signature: @Test public void assertReadVarcharValueWithMeta2()
test_case.identifier: assertReadVarcharValueWithMeta2
test_case.invocations: append toString setColumnMeta length thenReturn when getByteBuf thenReturn when readUnsignedShortLE length thenReturn when readStringFix length assertThat read is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertReadVarcharValueWithMeta2()
focal_class.declarator: VARCHAR_LENGTH_META_POINT = 256
focal_class.modifier: private static final
focal_class.original_string: private static final int VARCHAR_LENGTH_META_POINT = 256;
focal_class.type: int
focal_class.var_name: VARCHAR_LENGTH_META_POINT
focal_class.file: shardingsphere-db-protocol/shardingsphere-db-protocol-mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/binlog/row/column/value/string/MySQLVarcharBinlogProtocolValue.java
focal_class.identifier: MySQLVarcharBinlogProtocolValue
focal_class.interfaces: implements MySQLBinlogProtocolValue
focal_class.class_method_signature: MySQLVarcharBinlogProtocolValue.read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_class.full_signature: @Override public Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_class.identifier: read
focal_class.modifiers: @Override public
focal_class.parameters: (final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_class.return: Serializable
focal_class.signature: Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_method.body: @Override
      public Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload) {
          return payload.readStringFix(VARCHAR_LENGTH_META_POINT > columnDef.getColumnMeta() ? payload.getByteBuf().readUnsignedByte() : payload.getByteBuf().readUnsignedShortLE());
      }
focal_method.class_method_signature: MySQLVarcharBinlogProtocolValue.read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_method.full_signature: @Override public Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_method.identifier: read
focal_method.invocations: readStringFix getColumnMeta readUnsignedByte getByteBuf readUnsignedShortLE getByteBuf
focal_method.modifiers: @Override public
focal_method.parameters: (final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)
focal_method.return: Serializable
focal_method.signature: Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload)