Source code for text_lint.operations.validators.validate_not_equal

"""ValidateNotEqual class."""

from typing import TYPE_CHECKING

from text_lint.operations.validators.bases.validator_comparison_base import (
    ValidationComparisonBase,
)
from text_lint.utilities.translations import _

if TYPE_CHECKING:  # pragma: no cover
  from text_lint.results.forest import AliasLookupResult

YAML_EXAMPLE_COMPONENTS = (
    _("non-equality validator example"),
)
YAML_EXAMPLE = """

- name: {0}
  operation: validate_not_equal
  saved_a:
    - source1.capture(1)
  saved_b:
    - source2.capture(1)

""".format(*YAML_EXAMPLE_COMPONENTS)


[docs] class ValidateNotEqual(ValidationComparisonBase): """A validator to check non-equality between result lookups.""" hint = _("validates non-equality between sets of values") operation = "validate_not_equal" yaml_example = YAML_EXAMPLE msg_fmt_comparison_failure = _("'{0}' == '{1}'") msg_fmt_comparison_success = _("NOT EQUAL: '{0}' != '{1}'")
[docs] def comparison( self, result_a: "AliasLookupResult", result_b: "AliasLookupResult", ) -> bool: """Determine if two evaluated lookup expression results are unequal.""" return bool(result_a != result_b)