This is a test list for the field assist component.  It is a work
in progress.  Last updated 9-27-2007.

Tests are conducted using the FieldAssistTestDialog in
org.eclipse.ui.examples.fieldassist and the platform text 
search and replace dialog.

Field Assist Test Dialog

The first tests should be conducted on all platforms until otherwise noted.
Use the example preference page to adjust the parameters as needed
for the test.

**CONTENT ASSIST KEY**
- Ctrl+Space invokes without delay
- * invokes without delay
- alphanumeric invokes on delay (try different delay settings including 0)
- t,d invokes on delay (try different delay settings including 0)

**AUTOACTIVATION COMPLETION**
- turn on auto activation, and also test on the autocomplete fields
- invoke the auto-popup
- cursor to make a selection
- hit the Enter key to confirm selection
- the text should be inserted/replaced and the popup should remain closed.

**NAVIGATION WHILE POPUP IS OPEN (but without focus)**
- arrow up/down scroll through proposals
- left/right move cursor in target control text
- page up/down, home/end move through proposals
- enter selects proposal
- esc closes popup

**NAVIGATION WHILE POPUP HAS FOCUS**
- same as above except left/right arrow has no effect
- on Mac, the home/end keys pg/up down, move but don't affect selection

**PROPAGATE KEYSTROKES WHEN POPUP IS OPEN (but without focus)**
- keystrokes typed while popup is open propagate to control when set to true
- keystrokes typed while popup is open never propagate to control when false
(Exception cases)
- pg up/down, arrow up/down, home/end never propagate back to control
regardless of setting (ie, combo selection doesn't change, etc.)
- arrow left/right always propagate to control regardless of setting.  Cursor
position should change

**SECONDARY POPUP**
- only shows when option is checked
- updates on a delay (not with every cursor through the table)
- if you cursor to an item ("tori") that has no secondary info,
the popup should close

**CONTENT PROPOSAL ACCEPTANCE**
- test insert and replace modes with various text selected

**FILTERING STYLE**
- cumulative filter should be applied and backspace reduces filter by one
character
- single character filter is backed out on backspace
- cursor left shouldn't affect filter in either case above (neither should
cursor right)
- if cumulative filter resolves to no choices, popup should remain open
(note this is different than when filtering for autocomplete)
- FILTER_NONE should never filter
- when autoactivation is on, it is expected that the autoactivation key
would *not* be in the filter.  See bug #141084 comment #5.

**POPUP SIZING**
- sizing primary popup should size secondary and it should move to fit on
screen

**POPUP LOCATION**
- the popup should be butted under the field when in replace mode.
- the popup should be closer to the cursor position when in insert mode.
- verify that the y location of the popup is correct in the multi-line text field

**POPUP DEACTIVATION**
- popup closes when dialog is moved
- popup closes when another app is activated
- popup closes when another field in the dialog is clicked

**AUTOCOMPLETE POPUP NOT TRIGGERED BY COMBO SELECTION**
- Select a user name in the autocomplete combo.  The popup should not
trigger.
- Select a user name in the autocomplete combo while the popup is open.
It should close.  (On Linux it stays open if already open)

**MULTILINE TEXT**
- popup positioning for insert mode should respect
vertical position in multiline text.

These tests do not need to be tested on each platform.

**AUTOCOMPLETE INCLUDES EXACT MATCHES IN POPUP
- Type "Tod" in an autocomplete field.
- You should see "Todd" and "Tod" as choices.  Type another d and it
should resolve to the last remaining choice.

**AUTOCOMPLETE POPUP CLOSES WHEN NO MORE AVAILABLE CHOICES**
- Type "Todde" and the popup should close on the e.
- Backspace and the popup should reappear.
- Should be able to backspace to nothing and popup stays open

**AUTOCOMPLETE SHOULDN'T OPEN IF NO CHOICES**
- Type "X" and you shouldn't see an empty popup.
- Backspace and you should not get a popup

Search and Replace Dialog (with regular expressions enabled)

**INSERT MODE WITH PROPER CURSOR PLACEMENT
- Type "abc", set caret to after "a"
- Use content assist to insert \t
- Text should be "a\tbc" with cursor after the t

**SELECTION TAKEN INTO ACCOUNT ON INSERT MODE
- Type the word "Foobar" into the find field
- Select "oob", type '\' and make a selection for '\n' in the popup.
- You should see "F\nar"

**DIFFERENT SELECTION STYLES WHEN POPUP EXPLICITLY ACTIVATED**
- Try the scenarios above with different styles for activating and selecting
from content assist:
- Ctrl+Space, doubleclick with mouse to insert proposal
- Ctrl+Space, use cursor keys and enter key to insert
- Ctrl+Space, type "\", then use mouse to insert
- Ctrl+Space, type "\", then use keyboard to insert

**DIFFERENT SELECTION STYLES WHEN AUTOACTIVATED**
- Try the scenarios above with different styles for activating and selecting
from content assist:
- type '\', doubleclick with mouse to insert proposal
- type '\', use cursor keys and enter key to insert

**CURSOR POSITION SET IN THE MIDDLE OF INSERTED TEXT**
- type "abc", move cursor between a and b
- type "(?"
- proposals starting with "(?" are first
- choose the proposal insert proposal (?<=)
- text is "a(?<=)bc", caret is after  "="

**AUTOACTIVATION CANCELS ON KEYSTROKE**
- Type the '\' character and pause, this will trigger the popup.  Cancel it.
- Type '\a' quickly and the popup should never launch.

**CURSOR RELATED FILTERING**
- Using arrow left/right while popup is open can change the popup contents
(since filtering is specific to cursor position)
- Using BS when field is empty should never reload popup

