public void testGetNumber() {
    ExHyperlinkAtom eha = new ExHyperlinkAtom(data_a, 0, data_a.length);
    ExHyperlinkAtom ehb = new ExHyperlinkAtom(data_b, 0, data_b.length);

    assertEquals(1, eha.getNumber());
    assertEquals(4, ehb.getNumber());
  }
  public void testWrite() throws Exception {
    ExHyperlinkAtom eha = new ExHyperlinkAtom(data_a, 0, data_a.length);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    eha.writeOut(baos);
    byte[] b = baos.toByteArray();

    assertEquals(data_a.length, b.length);
    for (int i = 0; i < data_a.length; i++) {
      assertEquals(data_a[i], b[i]);
    }
  }
  // Create A from scratch
  public void testCreate() throws Exception {
    ExHyperlinkAtom eha = new ExHyperlinkAtom();

    // Set value
    eha.setNumber(1);

    // Check it's now the same as a
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    eha.writeOut(baos);
    byte[] b = baos.toByteArray();

    assertEquals(data_a.length, b.length);
    for (int i = 0; i < data_a.length; i++) {
      assertEquals(data_a[i], b[i]);
    }
  }
  // Try to turn a into b
  public void testChange() throws Exception {
    ExHyperlinkAtom eha = new ExHyperlinkAtom(data_a, 0, data_a.length);

    // Change the number
    eha.setNumber(4);

    // Check bytes are now the same
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    eha.writeOut(baos);
    byte[] b = baos.toByteArray();

    // Should now be the same
    assertEquals(data_b.length, b.length);
    for (int i = 0; i < data_b.length; i++) {
      assertEquals(data_b[i], b[i]);
    }
  }
 public void testRecordType() {
   ExHyperlinkAtom eha = new ExHyperlinkAtom(data_a, 0, data_a.length);
   assertEquals(4051l, eha.getRecordType());
 }