@Test public void testEqualsValue() { // given BigDecimal bd1 = new BigDecimal(Double.MAX_VALUE); BigDecimal bd2 = new BigDecimal(Double.MIN_VALUE); byte[] value1 = Bytes.toBytes(bd1); byte[] value2 = Bytes.toBytes(bd2); BigDecimalComparator comparator1 = new BigDecimalComparator(bd1); BigDecimalComparator comparator2 = new BigDecimalComparator(bd2); // when int comp1 = comparator1.compareTo(value1); int comp2 = comparator2.compareTo(value2); // then Assert.assertEquals(0, comp1); Assert.assertEquals(0, comp2); }
@Test public void testBigDecimalComparator() throws Exception { BigDecimal bigDecimal = new BigDecimal(Double.MIN_VALUE); BigDecimalComparator bigDecimalComparator = new BigDecimalComparator(bigDecimal); assertTrue(bigDecimalComparator.areSerializedFieldsEqual(ProtobufUtil.toComparator(ProtobufUtil .toComparator(bigDecimalComparator)))); }
@Test public void testObjectEquals() { BigDecimal bd = new BigDecimal(Double.MIN_VALUE); // Check that equals returns true for identical objects final BigDecimalComparator bdc = new BigDecimalComparator(bd); Assert.assertTrue(bdc.equals(bdc)); Assert.assertEquals(bdc.hashCode(), bdc.hashCode()); // Check that equals returns true for the same object final BigDecimalComparator bdc1 = new BigDecimalComparator(bd); final BigDecimalComparator bdc2 = new BigDecimalComparator(bd); Assert.assertTrue(bdc1.equals(bdc2)); Assert.assertEquals(bdc1.hashCode(), bdc2.hashCode()); // Check that equals returns false for different objects final BigDecimalComparator bdc3 = new BigDecimalComparator(bd); final BigDecimalComparator bdc4 = new BigDecimalComparator(new BigDecimal(Long.MIN_VALUE)); Assert.assertFalse(bdc3.equals(bdc4)); Assert.assertNotEquals(bdc3.hashCode(), bdc4.hashCode()); // Check that equals returns false for a different type final BigDecimalComparator bdc5 = new BigDecimalComparator(bd); Assert.assertFalse(bdc5.equals(0)); }
/** * @param pbBytes A pb serialized {@link BigDecimalComparator} instance * @return An instance of {@link BigDecimalComparator} made from <code>bytes</code> * @throws DeserializationException A deserialization exception * @see #toByteArray */ public static BigDecimalComparator parseFrom(final byte[] pbBytes) throws DeserializationException { ComparatorProtos.BigDecimalComparator proto; try { proto = ComparatorProtos.BigDecimalComparator.parseFrom(pbBytes); } catch (InvalidProtocolBufferException e) { throw new DeserializationException(e); } return new BigDecimalComparator(Bytes.toBigDecimal(proto.getComparable().getValue() .toByteArray())); }
new BigDecimalComparator(bd2), put); assertEquals(false, res); res = region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator(bd2), put); assertEquals(false, res);
@Test public void testGreaterThanValue() { // given byte[] val1 = Bytes.toBytes(new BigDecimal("1000000000000000000000000000000.9999999999999999")); byte[] val2 = Bytes.toBytes(new BigDecimal(0)); byte[] val3 = Bytes.toBytes(new BigDecimal(Double.MIN_VALUE)); BigDecimal bd = new BigDecimal(Double.MAX_VALUE); BigDecimalComparator comparator = new BigDecimalComparator(bd); // when int comp1 = comparator.compareTo(val1); int comp2 = comparator.compareTo(val2); int comp3 = comparator.compareTo(val3); // then Assert.assertEquals(1, comp1); Assert.assertEquals(1, comp2); Assert.assertEquals(1, comp3); }
region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd1), put); assertEquals(true, res); delete.addColumn(fam1, qf1); res = region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd1), delete); assertEquals(true, res);
@Test public void testObjectEquals() { BigDecimal bd = new BigDecimal(Double.MIN_VALUE); // Check that equals returns true for identical objects final BigDecimalComparator bdc = new BigDecimalComparator(bd); Assert.assertTrue(bdc.equals(bdc)); Assert.assertEquals(bdc.hashCode(), bdc.hashCode()); // Check that equals returns true for the same object final BigDecimalComparator bdc1 = new BigDecimalComparator(bd); final BigDecimalComparator bdc2 = new BigDecimalComparator(bd); Assert.assertTrue(bdc1.equals(bdc2)); Assert.assertEquals(bdc1.hashCode(), bdc2.hashCode()); // Check that equals returns false for different objects final BigDecimalComparator bdc3 = new BigDecimalComparator(bd); final BigDecimalComparator bdc4 = new BigDecimalComparator(new BigDecimal(Long.MIN_VALUE)); Assert.assertFalse(bdc3.equals(bdc4)); Assert.assertNotEquals(bdc3.hashCode(), bdc4.hashCode()); // Check that equals returns false for a different type final BigDecimalComparator bdc5 = new BigDecimalComparator(bd); Assert.assertFalse(bdc5.equals(0)); }
@Test public void testBigDecimalComparator() throws Exception { BigDecimal bigDecimal = new BigDecimal(Double.MIN_VALUE); BigDecimalComparator bigDecimalComparator = new BigDecimalComparator(bigDecimal); assertTrue(bigDecimalComparator.areSerializedFieldsEqual(ProtobufUtil.toComparator(ProtobufUtil .toComparator(bigDecimalComparator)))); }
@Test public void testLessThanValue() { // given byte[] val1 = Bytes.toBytes(new BigDecimal("-1000000000000000000000000000000")); byte[] val2 = Bytes.toBytes(new BigDecimal(0)); byte[] val3 = Bytes.toBytes(new BigDecimal(1)); BigDecimal bd = new BigDecimal("-1000000000000000000000000000000.0000000000000001"); BigDecimalComparator comparator = new BigDecimalComparator(bd); // when int comp1 = comparator.compareTo(val1); int comp2 = comparator.compareTo(val2); int comp3 = comparator.compareTo(val3); // then Assert.assertEquals(-1, comp1); Assert.assertEquals(-1, comp2); Assert.assertEquals(-1, comp3); }
/** * @param pbBytes A pb serialized {@link BigDecimalComparator} instance * @return An instance of {@link BigDecimalComparator} made from <code>bytes</code> * @throws DeserializationException A deserialization exception * @see #toByteArray */ public static BigDecimalComparator parseFrom(final byte[] pbBytes) throws DeserializationException { ComparatorProtos.BigDecimalComparator proto; try { proto = ComparatorProtos.BigDecimalComparator.parseFrom(pbBytes); } catch (InvalidProtocolBufferException e) { throw new DeserializationException(e); } return new BigDecimalComparator(Bytes.toBigDecimal(proto.getComparable().getValue() .toByteArray())); }
@Test public void testEqualsValue() { // given BigDecimal bd1 = new BigDecimal(Double.MAX_VALUE); BigDecimal bd2 = new BigDecimal(Double.MIN_VALUE); byte[] value1 = Bytes.toBytes(bd1); byte[] value2 = Bytes.toBytes(bd2); BigDecimalComparator comparator1 = new BigDecimalComparator(bd1); BigDecimalComparator comparator2 = new BigDecimalComparator(bd2); // when int comp1 = comparator1.compareTo(value1); int comp2 = comparator2.compareTo(value2); // then Assert.assertEquals(0, comp1); Assert.assertEquals(0, comp2); }
/** * @param pbBytes A pb serialized {@link BigDecimalComparator} instance * @return An instance of {@link BigDecimalComparator} made from <code>bytes</code> * @throws DeserializationException A deserialization exception * @see #toByteArray */ public static BigDecimalComparator parseFrom(final byte[] pbBytes) throws DeserializationException { ComparatorProtos.BigDecimalComparator proto; try { proto = ComparatorProtos.BigDecimalComparator.parseFrom(pbBytes); } catch (InvalidProtocolBufferException e) { throw new DeserializationException(e); } return new BigDecimalComparator(Bytes.toBigDecimal(proto.getComparable().getValue() .toByteArray())); }
@Test public void testGreaterThanValue() { // given byte[] val1 = Bytes.toBytes(new BigDecimal("1000000000000000000000000000000.9999999999999999")); byte[] val2 = Bytes.toBytes(new BigDecimal(0)); byte[] val3 = Bytes.toBytes(new BigDecimal(Double.MIN_VALUE)); BigDecimal bd = new BigDecimal(Double.MAX_VALUE); BigDecimalComparator comparator = new BigDecimalComparator(bd); // when int comp1 = comparator.compareTo(val1); int comp2 = comparator.compareTo(val2); int comp3 = comparator.compareTo(val3); // then Assert.assertEquals(1, comp1); Assert.assertEquals(1, comp2); Assert.assertEquals(1, comp3); }
region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd2), put); assertEquals(false, res); delete.addFamily(fam1); res = region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd2), put); assertEquals(false, res);
@Test public void testLessThanValue() { // given byte[] val1 = Bytes.toBytes(new BigDecimal("-1000000000000000000000000000000")); byte[] val2 = Bytes.toBytes(new BigDecimal(0)); byte[] val3 = Bytes.toBytes(new BigDecimal(1)); BigDecimal bd = new BigDecimal("-1000000000000000000000000000000.0000000000000001"); BigDecimalComparator comparator = new BigDecimalComparator(bd); // when int comp1 = comparator.compareTo(val1); int comp2 = comparator.compareTo(val2); int comp3 = comparator.compareTo(val3); // then Assert.assertEquals(-1, comp1); Assert.assertEquals(-1, comp2); Assert.assertEquals(-1, comp3); }
region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd1), put); assertEquals(true, res); delete.addColumn(fam1, qf1); res = region.checkAndMutate(row1, fam1, qf1, CompareOperator.EQUAL, new BigDecimalComparator( bd1), delete); assertEquals(true, res);