### Question:
SortedRangeSet implements Iterable<R> { public int size() { return set.size(); } SortedRangeSet(); void addAll(SortedRangeSet<C, R> ranges); void addAll(Collection<R> ranges); void add(R range); void removeAll(SortedRangeSet<C, R> ranges); void removeAll(Collection<R> ranges); boolean remove(R range); SortedRangeSet<C, R> intersection(SortedRangeSet<C, R> other); @Override final boolean equals(Object o); @Override final int hashCode(); boolean contains(R range); void clear(); boolean isEmpty(); int size(); Set<R> unmodifiableSet(); Set<R> modifiableSet(); R getSingleRange(); R floor(R range); R ceiling(R range); @Override Iterator<R> iterator(); @Override String toString();  }### Answer:
@Test public void testSize() { subject.clear(); assertEquals(0, subject.size()); subject.add(AsnRange.parse("0-10")); assertEquals(1, subject.size()); subject.add(AsnRange.parse("20-30")); assertEquals(2, subject.size()); subject.add(AsnRange.parse("10-40")); assertEquals(1, subject.size()); subject.remove(AsnRange.parse("0-100")); assertEquals(0, subject.size()); }