Data implements JsonSerializable { private Data(Builder builder) { this.environment = builder.environment; this.body = builder.body; this.level = builder.level; this.timestamp = builder.timestamp; this.codeVersion = builder.codeVersion; this.platform = builder.platform; this.language = builder.language; this.framework = builder.framework; this.context = builder.context; this.request = builder.request; this.person = builder.person; this.server = builder.server; this.client = builder.client; this.custom = builder.custom != null ? builder.custom : null; this.fingerprint = builder.fingerprint; this.title = builder.title; this.uuid = builder.uuid; this.isUncaught = builder.isUncaught; this.notifier = builder.notifier; } private  Data(Builder builder); String getEnvironment(); Body getBody(); Level getLevel(); Long getTimestamp(); String getCodeVersion(); String getPlatform(); String getLanguage(); String getFramework(); String getContext(); Request getRequest(); Person getPerson(); Client getClient(); Server getServer(); Map<String, Object> getCustom(); String getFingerprint(); String getTitle(); String getUuid(); boolean isUncaught(); Notifier getNotifier(); @Override Map<String, Object> asJson(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }
@Test public void shouldBeEqual() { Data data1 = data(); Data data2 = data(); assertThat(data2, is(data1)); }