Optional<List<ComparisonDifference>> registeredComparisonDifferencesOf(DualValue dualValue) {
    return this.dualValues.stream()
                          // use sameValues to get already visited dual values with different location
                          .filter(visitedDualValue -> visitedDualValue.dualValue.sameValues(dualValue))
                          .findFirst()
                          .map(visitedDualValue -> visitedDualValue.comparisonDifferences);
  }
@Test
  void should_return_empty_optional_for_unknown_dual_values() {
    // GIVEN
    VisitedDualValues visitedDualValues = new VisitedDualValues();
    DualValue dualValue = new DualValue(list(""), "abc", "abc");
    // WHEN
    Optional<List<ComparisonDifference>> optionalComparisonDifferences = visitedDualValues.registeredComparisonDifferencesOf(dualValue);
    // THEN
    then(optionalComparisonDifferences).isEmpty();
  }