tree: f2f2a602b231870dd4da5de88020e0958c8d2de6 [path history] [tgz]
  1. README.md
  2. test_search_boundary_cases.groovy
  3. test_search_dsl_syntax.groovy
  4. test_search_exact_basic.groovy
  5. test_search_exact_lowercase.groovy
  6. test_search_exact_match.groovy
  7. test_search_exact_multi_index.groovy
  8. test_search_function.groovy
  9. test_search_inverted_index.groovy
  10. test_search_mow_support.groovy
  11. test_search_null_regression.groovy
  12. test_search_null_semantics.groovy
  13. test_search_usage_restrictions.groovy
  14. test_search_vs_match_consistency.groovy
regression-test/suites/search/README.md

Search Function NULL Semantics Tests

This directory contains regression tests for search function NULL value handling fixes.

Background

Fixed two major issues:

  1. OR Query Inconsistency: search() vs match functions returned different results
  2. NOT Query Inconsistency: Internal NOT vs external NOT returned different results

Test Files

  • test_search_null_semantics.groovy: Basic NULL semantics tests
  • test_search_vs_match_consistency.groovy: search() vs match() consistency tests
  • test_search_null_regression.groovy: Specific regression tests for original bugs
  • test_search_boundary_cases.groovy: Edge cases and boundary conditions

Expected Behavior

After the fix:

  • OR queries: search('A or B') consistent with A match ... or B match ...
  • NOT queries: search('not A') consistent with not search('A')
  • Proper SQL three-value logic for NULL handling

Running Tests

cd regression-test
./run-regression-test.sh --suite search