public EventWithContext addEventContext(Event event) {
        return toBuilder().eventContext(event).build();
    }
@Test
    public void addEventContext() {
        final Event event = new TestEvent();
        final Event eventContext = new TestEvent();
        final EventWithContext withContext = EventWithContext.builder()
                .event(event)
                .build();

        final EventWithContext withContext1 = withContext.addEventContext(eventContext);

        assertThat(withContext.eventContext()).isNotPresent();
        assertThat(withContext1.eventContext()).get().isEqualTo(eventContext);
        assertThat(withContext1.event()).isNotEqualTo(withContext1.eventContext());
    }