### Question:
StreamUtils { public static UnsignedLong min(final UnsignedLong value1, final UnsignedLong value2) { Objects.requireNonNull(value1); Objects.requireNonNull(value2); if (is(value1).lessThan(value2)) { return value1; } else { return value2; } }  static InterledgerCondition unfulfillableCondition(); static InterledgerFulfillment generatedFulfillableFulfillment(
      final SharedSecret sharedSecret, final byte[] data
  ); static UnsignedLong min(final UnsignedLong value1, final UnsignedLong value2); static UnsignedLong max(final UnsignedLong value1, final UnsignedLong value2);  }### Answer:
@Test(expected = NullPointerException.class) public void minWithNullFirst() { try { StreamUtils.min(null, UnsignedLong.ONE); fail(); } catch (NullPointerException e) { assertThat(e.getMessage()).isNull(); throw e; } }
@Test(expected = NullPointerException.class) public void minWithNullSecond() { try { StreamUtils.min(UnsignedLong.ONE, null); fail(); } catch (NullPointerException e) { assertThat(e.getMessage()).isNull(); throw e; } }
@Test public void minTests() { assertThat(StreamUtils.min(UnsignedLong.ZERO, UnsignedLong.ZERO)).isEqualTo(UnsignedLong.ZERO); assertThat(StreamUtils.min(UnsignedLong.ONE, UnsignedLong.ZERO)).isEqualTo(UnsignedLong.ZERO); assertThat(StreamUtils.min(UnsignedLong.ZERO, UnsignedLong.ONE)).isEqualTo(UnsignedLong.ZERO); assertThat(StreamUtils.min(UnsignedLong.MAX_VALUE, UnsignedLong.ZERO)).isEqualTo(UnsignedLong.ZERO); assertThat(StreamUtils.min(UnsignedLong.ZERO, UnsignedLong.MAX_VALUE)).isEqualTo(UnsignedLong.ZERO); assertThat(StreamUtils.min(UnsignedLong.ONE, UnsignedLong.MAX_VALUE)).isEqualTo(UnsignedLong.ONE); assertThat(StreamUtils.min(UnsignedLong.MAX_VALUE, UnsignedLong.ONE)).isEqualTo(UnsignedLong.ONE); }