### Question:
Value implements WritableComparable<Object> { @Override public boolean equals(Object right_obj) { if (right_obj instanceof Value) { return compareTo(right_obj) == 0; } return false; } Value();  Value(CharSequence cs);  Value(Text text);  Value(byte[] bytes);  Value(ByteBuffer bytes);  Value(byte[] bytes, boolean copy);  Value(final Value ibw);  Value(final byte[] newData, final int offset, final int length); byte[] get(); void set(final byte[] b); void copy(byte[] b); int getSize(); @Override void readFields(final DataInput in); @Override void write(final DataOutput out); @Override int hashCode(); @Override int compareTo(Object right_obj); int compareTo(final byte[] that); @Override boolean equals(Object right_obj); boolean contentEquals(byte[] right_obj); @Override String toString();  }### Answer:
@Test public void testEquals() { Value v1 = new Value(DATA); assertEquals(v1, v1); Value v2 = new Value(DATA); assertEquals(v1, v2); assertEquals(v2, v1); Value v3 = new Value(toBytes("datb")); assertNotEquals(v1, v3); }