### Question:
TxnId { public static TxnId parse (String idString) { Matcher matcher = pattern.matcher(idString); if (!matcher.matches() && matcher.groupCount() != 5) throw new IllegalArgumentException("Invalid idString '" + idString + "'"); return new TxnId().init( Integer.parseInt(matcher.group(1)), Integer.parseInt(matcher.group(2)), Integer.parseInt(matcher.group(3)), Integer.parseInt(matcher.group(4)), Integer.parseInt(matcher.group(5)) ); } private  TxnId(); private  TxnId(long l); long id(); File toFile(); @Override String toString(); String toRrn(); @Override boolean equals(Object o); @Override int hashCode(); static TxnId create(DateTime dt, int node, long transactionId); static TxnId parse(String idString); static TxnId parse(long id); static TxnId fromRrn(String rrn);  }### Answer:
@Test public void testBigId() { try { TxnId.parse(Long.MAX_VALUE); fail ("Should raise exception"); } catch (IllegalArgumentException ignored) { } }
@Test public void testNegativeId() { try { TxnId.parse(-Long.MAX_VALUE); fail ("Should raise exception"); } catch (IllegalArgumentException ignored) { } }