### Question:
LogProcessorOptions extends ProcessorOptions { public LogProcessorOptions() { super(); } LogProcessorOptions();  LogProcessorOptions(LogProcessorOptions other);  LogProcessorOptions(ProcessorOptions other);  LogProcessorOptions(JsonObject json); Level getLevel(); LogProcessorOptions setLevel(Level level); @Override String getName(); @Override LogProcessorOptions setName(String name); @Override String getType(); @Override LogProcessorOptions setType(String type); @Override Integer getInstances(); @Override LogProcessorOptions setInstances(Integer instances); @Override JsonObject toJson(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); static final Level DEFAULT_LEVEL; }### Answer:
@Test @DisplayName("Validate log processor options") void testLogProcessorOptions() { new LogProcessorOptionsConverter(); String badStr = "{\"name\": 10, \"type\": 20, \"level\": false}"; String optStr = "{\"instances\":1, \"name\":\"name\", \"type\": \"type\", \"level\":\"ERROR\"}"; ProcessorOptions optPump = new ProcessorOptions(new JsonObject(optStr)); LogProcessorOptions optNull = new LogProcessorOptions() .setName(null) .setType(null) .setLevel(null); LogProcessorOptions optObj = new LogProcessorOptions() .setName("name") .setType("type") .setLevel(Level.ERROR); JsonObject optJson = new JsonObject(optStr); assertThat(new LogProcessorOptions(new JsonObject(badStr))).isEqualTo(new LogProcessorOptions()); assertThat(optNull.toJson()).isEqualTo(obj().put("instances", 1)); assertThat(optObj).isEqualTo(optObj); assertThat(optObj).isNotEqualTo(optNull); assertThat(optObj).isEqualTo(new LogProcessorOptions(optJson)); assertThat(optObj).isEqualTo(new LogProcessorOptions(optObj)); assertThat(optObj.toString()).isEqualTo(new LogProcessorOptions(optJson).toString()); assertThat(optObj.hashCode()).isEqualTo(new LogProcessorOptions(optJson).hashCode()); assertThat(optObj).isNotEqualTo(null); assertThat(optObj).isNotEqualTo(new Object()); assertThat(optObj.toJson()).isEqualTo(optJson); assertThat(optPump) .isEqualToComparingOnlyGivenFields(new LogProcessorOptions(optPump), "name", "type"); }