static boolean isValidComparison(
      final SqlType left, final ComparisonExpression.Type operator, final SqlType right
  ) {
    if (left == null || right == null) {
      throw nullSchemaException(left, operator, right);
    }

    return HANDLERS.stream()
        .filter(h -> h.handles.test(left.baseType()))
        .findFirst()
        .map(h -> h.validator.test(operator, right))
        .orElse(false);
  }
@Test
  public void shouldAssertTrueForValidComparisons() {
    // When:
    int i = 0;
    int j = 0;
    for (final SqlType leftType: typesTable) {
      for (final SqlType rightType: typesTable) {
        if (expectedResults.get(i).get(j)) {
          assertThat(ComparisonUtil.isValidComparison(leftType, ComparisonExpression.Type.EQUAL,
              rightType), is(true));
        }

        j++;
      }
      i++;
      j = 0;
    }
  }