A search specification

Seaching in a document cmd+f has been a surprisingly hard feature to get right in the Debugger. On the surface, it seems like it should be simple, but there are a lot of subtle interactions that make it difficult to get right. Here is a quick spec that helped me document the feature.

Queries

  • typing/deleting query
    • should search after each character, index
    • the index and count should be correct
    • the match should be to right of the cursor

Iterating

  • (enter/shift enter | cmd+g/cmd+shift+g)
    • increments and decrements by one
    • wraps from first to last of the list and vice versa
  • moving the cursor
    • updates the match and index to be to the right of the cursor

Mouse Actions

  • click on document
    • cmd+g should research from that location.
    • cmd+f should refocus the search bar with the current query
    • search bar should search from the cursor location
  • select text
    • cmd+f should update the query of the search bar
    • cmd+g should search from that location with the current query

21 Feb 2017