@Override protected void checkEquals(Record expected, Record actual) { Assert.assertEquals(expected.getNumFields(), actual.getNumFields()); Assert.assertEquals(expected.getField(0, IntValue.class), actual.getField(0, IntValue.class)); Assert.assertEquals(expected.getField(1, StringValue.class), actual.getField(1, StringValue.class)); } }
record.removeField(1); assertTrue(record.getNumFields() == 2); oldLen = record.getNumFields(); record.removeField(0); assertTrue(record.getNumFields() == oldLen - 1); oldLen = record.getNumFields(); record.removeField(oldLen - 1); assertTrue(record.getNumFields() == oldLen - 1); oldLen = record.getNumFields(); int pos = this.rand.nextInt(record.getNumFields()); record.removeField(pos); assertTrue(record.getNumFields() == oldLen - 1);
@Test public void testSetNullInt() { try { Record record = this.generateFilledDenseRecord(58); record.setNull(42); assertTrue(record.getNumFields() == 58); assertTrue(record.getField(42, IntValue.class) == null); } catch (Throwable t) { Assert.fail("Test failed due to an exception: " + t.getMessage()); } }
@Test public void testEmptyRecordSerialization() { try { // test deserialize into self Record empty = new Record(); empty.write(this.out); empty.read(in); Assert.assertTrue("Deserialized Empty record is not another empty record.", empty.getNumFields() == 0); // test deserialize into new empty = new Record(); empty.write(this.out); empty = new Record(); empty.read(this.in); Assert.assertTrue("Deserialized Empty record is not another empty record.", empty.getNumFields() == 0); } catch (Throwable t) { Assert.fail("Test failed due to an exception: " + t.getMessage()); } }
@Test public void testSetNullLong() { try { Record record = this.generateFilledDenseRecord(58); long mask = generateRandomBitmask(58); record.setNull(mask); for (int i = 0; i < 58; i++) { if (((1L << i) & mask) != 0) { assertTrue(record.getField(i, IntValue.class) == null); } } assertTrue(record.getNumFields() == 58); } catch (Throwable t) { Assert.fail("Test failed due to an exception: " + t.getMessage()); } }
@Test public void testSetNullLongArray() { try { Record record = this.generateFilledDenseRecord(612); long[] mask = {1L, 1L, 1L, 1L}; record.setNull(mask); assertTrue(record.getField(0, IntValue.class) == null); assertTrue(record.getField(64, IntValue.class) == null); assertTrue(record.getField(128, IntValue.class) == null); assertTrue(record.getField(192, IntValue.class) == null); mask = new long[10]; for (int i = 0; i < mask.length; i++) { int offset = i * Long.SIZE; int numFields = ((offset + Long.SIZE) < record.getNumFields()) ? Long.SIZE : record.getNumFields() - offset; mask[i] = this.generateRandomBitmask(numFields); } record.setNull(mask); } catch (Throwable t) { Assert.fail("Test failed due to an exception: " + t.getMessage()); } }
assertTrue(record.getNumFields() == 0); record.addField(this.origVal1); assertTrue(record.getNumFields() == 1); assertTrue(origVal1.getValue().equals(record.getField(0, StringValue.class).getValue())); IntValue rec = record.getField(i, IntValue.class); assertTrue(record.getNumFields() == i + 1); assertTrue(orig.getValue() == rec.getValue()); record.addField(this.origVal3); assertTrue(record.getNumFields() == 3);
record2.read(this.in); assertTrue(record1.getNumFields() == record2.getNumFields());
@Test public void testClear() throws IOException { try { Record record = new Record(new IntValue(42)); record.write(this.out); Assert.assertEquals(42, record.getField(0, IntValue.class).getValue()); record.setField(0, new IntValue(23)); record.write(this.out); Assert.assertEquals(23, record.getField(0, IntValue.class).getValue()); record.clear(); Assert.assertEquals(0, record.getNumFields()); Record record2 = new Record(new IntValue(42)); record2.read(in); Assert.assertEquals(42, record2.getField(0, IntValue.class).getValue()); record2.read(in); Assert.assertEquals(23, record2.getField(0, IntValue.class).getValue()); } catch (Throwable t) { Assert.fail("Test failed due to an exception: " + t.getMessage()); } }