### Question:
Sequence implements Iterable<T> { @Override public String toString() { return list.toString(); } private  Sequence(); private  Sequence(Collection<T> collection); @SuppressWarnings("unchecked") static Sequence<T> of(Collection<? extends T> elements); @SafeVarargs static Sequence<T> of(T... elements); static Sequence<T> empty(); @CheckReturnValue Sequence<T> with(Collection<T> elements); Sequence<T> withNewElementsFrom(Collection<T> elements); @CheckReturnValue final Sequence<T> with(Sequence<T> sequence); @CheckReturnValue @SafeVarargs final Sequence<T> with(T... newElements); @SafeVarargs @CheckReturnValue final Sequence<T> withIf(boolean condition, Supplier<T>... suppliers); @CheckReturnValue final Sequence<T> withIf(boolean condition, Supplier<T> supplier); List<T> list(); @Override Iterator<T> iterator(); Stream<T> stream(); @Override String toString(); static Collector<T, ?, Sequence<T>> collect();  }### Answer:
@Test public void testToString() { Sequence<Integer> sequence = Sequence.of(1, 2, 3); assertThat(sequence.toString(), is("[1, 2, 3]")); }