### Question:
HttpHeader { public static HttpHeader header(String name, String... values) { if (values.length <= 0) { throw new IllegalArgumentException("must give at least one value"); } return new HttpHeader(requireNonNull(name), ImmutableList.copyOf(values)); } private  HttpHeader(String name, List<String> values); static HttpHeader header(String name, String... values); String name(); String value(); Iterable<String> values(); @Override int hashCode(); @Override boolean equals(Object o); @Override String toString();  }### Answer:
@Test public void rejectsEmptyValuesList() { assertThrows(IllegalArgumentException.class, () -> header("name", new String[0])); }
@Test public void valuesCannotBeNull() { assertThrows(NullPointerException.class, () -> header("name", "value1", null, "value2")); }