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/time/MySQLDatetime2BinlogProtocolValueTest.java
test_class.identifier: MySQLDatetime2BinlogProtocolValueTest
test_case.body: @Test
      public void assertReadWithoutFraction1() {
          columnDef.setColumnMeta(1);
          when(payload.readInt1()).thenReturn(0xfe, 0xf3, 0xff, 0x7e, 0xfb, 0x00);
          assertThat(new MySQLDatetime2BinlogProtocolValue().read(columnDef, payload), is("9999-12-31 23:59:59.0"));
      }
test_case.class_method_signature: MySQLDatetime2BinlogProtocolValueTest.assertReadWithoutFraction1()
test_case.full_signature: @Test public void assertReadWithoutFraction1()
test_case.identifier: assertReadWithoutFraction1
test_case.invocations: setColumnMeta thenReturn when readInt1 assertThat read is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertReadWithoutFraction1()
focal_class.file: shardingsphere-db-protocol/shardingsphere-db-protocol-mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/binlog/row/column/value/time/MySQLDatetime2BinlogProtocolValue.java
focal_class.identifier: MySQLDatetime2BinlogProtocolValue
focal_class.interfaces: implements MySQLBinlogProtocolValue
focal_class.class_method_signature: MySQLDatetime2BinlogProtocolValue.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_class.class_method_signature: MySQLDatetime2BinlogProtocolValue.readDatetimeV2FromPayload(final MySQLPacketPayload payload)
focal_class.full_signature: private long readDatetimeV2FromPayload(final MySQLPacketPayload payload)
focal_class.identifier: readDatetimeV2FromPayload
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload)
focal_class.return: long
focal_class.signature: long readDatetimeV2FromPayload(final MySQLPacketPayload payload)
focal_class.class_method_signature: MySQLDatetime2BinlogProtocolValue.readDatetime(final MySQLBinlogColumnDef columnDef, final long datetime, final MySQLPacketPayload payload)
focal_class.full_signature: private Serializable readDatetime(final MySQLBinlogColumnDef columnDef, final long datetime, final MySQLPacketPayload payload)
focal_class.identifier: readDatetime
focal_class.modifiers: private
focal_class.parameters: (final MySQLBinlogColumnDef columnDef, final long datetime, final MySQLPacketPayload payload)
focal_class.return: Serializable
focal_class.signature: Serializable readDatetime(final MySQLBinlogColumnDef columnDef, final long datetime, final MySQLPacketPayload payload)
focal_class.class_method_signature: MySQLDatetime2BinlogProtocolValue.readDate(final long date)
focal_class.full_signature: private String readDate(final long date)
focal_class.identifier: readDate
focal_class.modifiers: private
focal_class.parameters: (final long date)
focal_class.return: String
focal_class.signature: String readDate(final long date)
focal_class.class_method_signature: MySQLDatetime2BinlogProtocolValue.readTime(final long time)
focal_class.full_signature: private String readTime(final long time)
focal_class.identifier: readTime
focal_class.modifiers: private
focal_class.parameters: (final long time)
focal_class.return: String
focal_class.signature: String readTime(final long time)
focal_method.body: @Override
      public Serializable read(final MySQLBinlogColumnDef columnDef, final MySQLPacketPayload payload) {
          long datetime = readDatetimeV2FromPayload(payload);
          return 0 == datetime ? MySQLTimeValueUtil.DATETIME_OF_ZERO : readDatetime(columnDef, datetime, payload);
      }
focal_method.class_method_signature: MySQLDatetime2BinlogProtocolValue.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: readDatetimeV2FromPayload readDatetime
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)