@Test
public void valuesReturnsAllConstantsInCorrectOrder() throws IllegalAccessException {

    final Collection<DittoAcknowledgementLabel> expectedConstants = new ArrayList<>();
    final Class<DittoAcknowledgementLabel> underTestType = DittoAcknowledgementLabel.class;
    final Field[] declaredFields = underTestType.getDeclaredFields();
    for (final Field declaredField : declaredFields) {
        if (isDittoAckLabelConstant(underTestType, declaredField)) {
            final Object constantValue = declaredField.get(null);
            expectedConstants.add((DittoAcknowledgementLabel) constantValue);
        }
    }
    final AcknowledgementLabel[] actual = DittoAcknowledgementLabel.values();
    assertThat(actual).containsExactlyElementsOf(expectedConstants);
}