
- name: default_date_range
  description: Test default behavior without date parameters (last 7 days)
  parameters: ''
  expected_result: ''

- name: specific_date_range
  description: Test with specific start and end dates
  parameters: start_date=2100-01-01&end_date=2100-01-07
  expected_result: |
    {"date":"2100-01-07","total_events":1,"avg_latency_ms":250,"p50_latency_ms":250,"p95_latency_ms":250,"min_latency_ms":250,"max_latency_ms":250}
    {"date":"2100-01-06","total_events":1,"avg_latency_ms":300,"p50_latency_ms":300,"p95_latency_ms":300,"min_latency_ms":300,"max_latency_ms":300}
    {"date":"2100-01-05","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}
    {"date":"2100-01-02","total_events":1,"avg_latency_ms":200,"p50_latency_ms":200,"p95_latency_ms":200,"min_latency_ms":200,"max_latency_ms":200}
    {"date":"2100-01-01","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: single_day_range
  description: Test with single day date range
  parameters: start_date=2100-01-01&end_date=2100-01-01
  expected_result: |
    {"date":"2100-01-01","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: filtered_by_site_uuid
  description: Test filtering by specific site UUID
  parameters: site_uuid=mock_site_uuid&start_date=2100-01-01&end_date=2100-01-07
  expected_result: |
    {"date":"2100-01-07","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":250,"p50_latency_ms":250,"p95_latency_ms":250,"min_latency_ms":250,"max_latency_ms":250}
    {"date":"2100-01-06","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":300,"p50_latency_ms":300,"p95_latency_ms":300,"min_latency_ms":300,"max_latency_ms":300}
    {"date":"2100-01-05","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}
    {"date":"2100-01-02","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":200,"p50_latency_ms":200,"p95_latency_ms":200,"min_latency_ms":200,"max_latency_ms":200}
    {"date":"2100-01-01","site_uuid":"mock_site_uuid","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: start_date_only
  description: Test with only start date specified
  parameters: start_date=2100-01-01
  expected_result: ''

- name: end_date_only
  description: Test with only end date specified
  parameters: end_date=2100-01-07
  expected_result: |
    {"date":"2100-01-07","total_events":1,"avg_latency_ms":250,"p50_latency_ms":250,"p95_latency_ms":250,"min_latency_ms":250,"max_latency_ms":250}
    {"date":"2100-01-06","total_events":1,"avg_latency_ms":300,"p50_latency_ms":300,"p95_latency_ms":300,"min_latency_ms":300,"max_latency_ms":300}
    {"date":"2100-01-05","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}
    {"date":"2100-01-02","total_events":1,"avg_latency_ms":200,"p50_latency_ms":200,"p95_latency_ms":200,"min_latency_ms":200,"max_latency_ms":200}
    {"date":"2100-01-01","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: future_date_range
  description: Test with future dates that should return no data
  parameters: start_date=2200-01-01&end_date=2200-01-07
  expected_result: ''

- name: wide_date_range
  description: Test with wide date range spanning multiple months
  parameters: start_date=2099-12-01&end_date=2100-02-28
  expected_result: |
    {"date":"2100-01-07","total_events":1,"avg_latency_ms":250,"p50_latency_ms":250,"p95_latency_ms":250,"min_latency_ms":250,"max_latency_ms":250}
    {"date":"2100-01-06","total_events":1,"avg_latency_ms":300,"p50_latency_ms":300,"p95_latency_ms":300,"min_latency_ms":300,"max_latency_ms":300}
    {"date":"2100-01-05","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}
    {"date":"2100-01-02","total_events":1,"avg_latency_ms":200,"p50_latency_ms":200,"p95_latency_ms":200,"min_latency_ms":200,"max_latency_ms":200}
    {"date":"2100-01-01","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: site_and_date_combination
  description: Test combination of site filtering with specific dates
  parameters: site_uuid=mock_site_uuid&start_date=2100-01-03&end_date=2100-01-05
  expected_result: |
    {"date":"2100-01-05","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","site_uuid":"mock_site_uuid","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}

- name: no_site_uuid
  description: Test with empty site UUID parameter
  parameters: start_date=2100-01-01&end_date=2100-01-07
  expected_result: |
    {"date":"2100-01-07","total_events":1,"avg_latency_ms":250,"p50_latency_ms":250,"p95_latency_ms":250,"min_latency_ms":250,"max_latency_ms":250}
    {"date":"2100-01-06","total_events":1,"avg_latency_ms":300,"p50_latency_ms":300,"p95_latency_ms":300,"min_latency_ms":300,"max_latency_ms":300}
    {"date":"2100-01-05","total_events":1,"avg_latency_ms":150,"p50_latency_ms":150,"p95_latency_ms":150,"min_latency_ms":150,"max_latency_ms":150}
    {"date":"2100-01-04","total_events":1,"avg_latency_ms":100,"p50_latency_ms":100,"p95_latency_ms":100,"min_latency_ms":100,"max_latency_ms":100}
    {"date":"2100-01-03","total_events":1,"avg_latency_ms":500,"p50_latency_ms":500,"p95_latency_ms":500,"min_latency_ms":500,"max_latency_ms":500}
    {"date":"2100-01-02","total_events":1,"avg_latency_ms":200,"p50_latency_ms":200,"p95_latency_ms":200,"min_latency_ms":200,"max_latency_ms":200}
    {"date":"2100-01-01","total_events":3,"avg_latency_ms":217,"p50_latency_ms":100,"p95_latency_ms":460,"min_latency_ms":50,"max_latency_ms":500}

- name: non_existent_site
  description: Test with non-existent site UUID
  parameters: site_uuid=non_existent_site&start_date=2100-01-01&end_date=2100-01-07
  expected_result: ''
