### Question:
AsnRange extends AbstractRange<Asn, AsnRange> implements InternetResourceRange<Asn, AsnRange> { public static AsnRange parse(String text) { int idx = text.indexOf('-'); Validate.isTrue(idx != -1, "Invalid range of ASNs: '" + text + "'"); Asn start = Asn.parse(text.substring(0, idx)); Asn end = Asn.parse(text.substring(idx + 1)); return new AsnRange(start, end); } protected  AsnRange(Asn start, Asn end); static AsnRangeBuilder from(Long from); static AsnRangeBuilder from(Asn from); static AsnRangeBuilder from(String from); static AsnRange parse(String text); boolean containsOnly16BitAsns(); boolean containsOnly32BitAsns(); @Override String toString(); @Override Long size();  }### Answer:
@Test(expected = IllegalArgumentException.class) public void shouldFailToParseIllegalRange() { AsnRange.parse("AS3333-AS2222"); }
@Test(expected = IllegalArgumentException.class) public void shouldFailToParseSingleResource() { AsnRange.parse("AS3333"); }