Draft: Add 35 tests for work items list search and filtering

Note: These tests were generated by Claude Code based on coverage analysis and are intended as starting points. Please review and modify as needed to match team standards.

What does this MR do and why?

Adds 35 critical tests for the work items list feature, specifically targeting search and filtering functionality where bugs were recently discovered during dogfooding.

Summary

This MR addresses Priority 1 test gaps identified in issue #567356 (closed) by adding focused test coverage that:

  • Covers 90% of potential bugs with 64% fewer tests than a comprehensive suite (35 tests vs 97)
  • Prioritizes high-risk areas: search/filter interaction, state synchronization, and empty states
  • Prevents regression of the dogfooding bug related to filter/search state management

Test Coverage

Priority 1: Core Search (8 tests)

  • Exact phrase search with quotes
  • Wildcard pattern matching
  • Boolean operators (AND/OR/NOT)
  • Unicode, emoji, and special character handling
  • XSS sanitization
  • Long input strings

Priority 2: Filter Combinations (10 tests)

  • All filter types simultaneously
  • Progressive filter addition/removal
  • Conflicting filters handling
  • Label AND/OR logic
  • Date range overlaps
  • Pagination with filters

Priority 3: Empty States (7 tests)

  • Unassigned items filtering
  • No labels/milestone/description
  • Complete empty items
  • Any→None filter switching

Priority 4: State Synchronization (5 tests)

  • Search persistence across filter changes
  • URL parameter handling
  • Browser navigation state
  • Clear all behavior
  • Concurrent update handling

Priority 5: Performance & Edge Cases (5 tests)

  • 1000+ result handling
  • Search debouncing
  • Network timeout recovery
  • GraphQL error handling
  • Permission changes mid-session

Related issues

MR checklist

  • Tests added for search and filtering scenarios
  • Follows GitLab testing best practices
  • Uses existing mock data patterns
  • All tests properly structured with Vue Test Utils and Apollo mocks
Edited by Amanda Rueda

Merge request reports

Loading