---
test case: 'test queue range "1, 0"'
in:
  type: RANGE
  values:
    - 1
    - 0
---
test case: 'test queue range "1, 2, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 0
---
test case: 'test queue range "1, 2, 3, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 5, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 5, 6, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 5, 6, 7, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 5, 6, 7, 8, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 0
---
test case: 'test queue range "1, 2, 3, 4, 5, 6, 7, 8, 9, 0"'
in:
  type: RANGE
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    - 0
---
test case: 'test compacting when tail is before head (no data wraparound) "1, 2, 3, 4, 5, 6, 7"'
in:
  type: COMPACT_TH
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
---
test case: 'test compacting when head is before tail (data wraparound) with empty space in the middle "1, 2, 3, 4, 5, 6, 7"'
in:
  type: COMPACT_HT
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
---
test case: 'test removal when tail is before head (no data wraparound) "1, 2, 3, 4, 5, 6, 7"'
in:
  type: REMOVE_TH
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
---
test case: 'test removal when tail is after head (data wraparound) "1, 2, 3, 4, 5, 6, 7"'
in:
  type: REMOVE_HT
  values:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7