### Question:
Tuple4 extends Tuple3<T1, T2, T3> implements Tuple { @Override public String toString() { return "Tuple{" + "item1=" + item1 + ",item2=" + item2 + ",item3=" + item3 + ",item4=" + item4 + '}'; } Tuple4(T1 a, T2 b, T3 c, T4 d); static Tuple4<T1, T2, T3, T4> of(T1 a, T2 b, T3 c, T4 d); T4 getItem4(); @Override Object nth(int index); @Override Tuple4<T, T2, T3, T4> mapItem1(Function<T1, T> mapper); @Override Tuple4<T1, T, T3, T4> mapItem2(Function<T2, T> mapper); @Override Tuple4<T1, T2, T, T4> mapItem3(Function<T3, T> mapper); Tuple4<T1, T2, T3, T> mapItem4(Function<T4, T> mapper); @Override List<Object> asList(); @Override int size(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testToString() { for (int i = 1; i <= someTuple.size(); i++) { assertThat(someTuple.toString()).contains("item" + i + "=" + someTuple.nth(i - 1)); } }