### Question:
CoapServerBuilder { public static CoapServerBuilderForUdp newBuilder() { return CoapServerBuilderForUdp.create(); }  static CoapServerBuilderForUdp newBuilder(); static CoapServerBuilderForTcp newBuilderForTcp(); static CoapServer newCoapServer(CoapTransport transport); static CoapServer newCoapServerForTcp(CoapTransport transport); final T blockSize(BlockSize blockSize); final T transport(CoapTransport coapTransport); final T observerIdGenerator(ObservationIDGenerator obsIdGenerator); T csmStorage(CoapTcpCSMStorage csmStorage); CoapServer start(); CoapServer build();  }### Answer:
@Test(expected = IllegalArgumentException.class) public void shouldFail_when_illegal_duplicateMsgCacheSize() throws Exception { newBuilder().duplicateMsgCacheSize(0); }
@Test(expected = NullPointerException.class) public void shouldFail_whenMissingDuplicateCallback() throws Exception { newBuilder().duplicatedCoapMessageCallback(null); }
@Test(expected = IllegalArgumentException.class) public void shouldFail_whenIllegalTimeoutValue() throws Exception { newBuilder().delayedTimeout(-1L); }