### Question:
TransportContext { @RestrictTo(RestrictTo.Scope.LIBRARY) public TransportContext withPriority(Priority priority) { return builder() .setBackendName(getBackendName()) .setPriority(priority) .setExtras(getExtras()) .build(); }  abstract String getBackendName(); @Nullable abstract byte[] getExtras(); @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP) abstract Priority getPriority(); @Override final String toString(); static Builder builder(); @RestrictTo(RestrictTo.Scope.LIBRARY) TransportContext withPriority(Priority priority);  }### Answer:
@Test public void withPriority_whenPriorityNotChanged_shouldReturnEqualContext() { assertThat(CTX.withPriority(Priority.DEFAULT)).isEqualTo(CTX); }
@Test public void withPriority_whenPriorityChangedBackToOriginal_shouldReturnEqualContext() { assertThat(CTX.withPriority(Priority.VERY_LOW).withPriority(Priority.DEFAULT)).isEqualTo(CTX); }