testtreeview-plan.txt 2.46 KB
Newer Older
Havoc Pennington's avatar
Havoc Pennington committed
1 2
This document is a laundry list of stuff to check if you want to
verify that GtkTreeView and associated objects are working properly.
3 4 5 6 7 8 9 10 11 12
It isn't a very formal test plan or anything.
 
Launching:
 - Launch testtreeview with --gtk-debug=tree, this will ensure that 
   debugging code in the tree widget gets run.

Automated tests:

 - on startup, testtreeview runs some automated tests; these all have
   to pass. 
Havoc Pennington's avatar
Havoc Pennington committed
13

Havoc Pennington's avatar
Havoc Pennington committed
14 15 16
TreeModel testing:

 - all the TreeView/TreeModel tests in this document should be run 
17 18 19 20 21
   with each of the different models testtreeview supports. The 
   option menu at the top of testtreeview lets you swap in the 
   various models. The option menu includes each of the 
   models that comes with GTK, in various configurations, 
   and also NULL (no model).
Havoc Pennington's avatar
Havoc Pennington committed
22 23

 - ensure that swapping in a new model for the tree view when there
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
   was a preexisting one works OK 

TreeViewColumn testing:
 
 - clicking a column header pops up a property inspector for that 
   column, use this to change column attributes for testing
 
 - should test columns with 0, 1, and N columns in the tree view
 
 - check that setting a column invisible works
 
 - check that setting a column unclickable works

 - check that setting the column width works 

 - check that width of -1 unsets column width

 - check that min/max widths can be set/unset and have the desired
   effect

 - check that setting the column title works

 - check that the column with an image in it looks right, there should 
   be such a column (once we support the custom widget feature)

 - check that justification works

TreeView testing:

 - check that expansion/collapse of tree nodes with the expanders
   works

 - check that turning headers off works

 - check that scrolling works properly

 - check that autosize works (resize columns to a weird size, 
   then click autosize to ensure they snap back to the original 
   size)

 - check move_to

 - check expand_all, collapse_all

Key navigation:
 - FIXME, all the keybindings and what they are supposed to do

TreeSelection testing:

 - check that single and multi mode both work; single should allow zero 
   or 1 rows selected, multi should allow any number.

 - in multi, check that shift-select selects a contiguous region,
   control-select selects a disjunct set of nodes

 - check that retrieving the selection works

 - check that foreach() works

CellRenderer testing:

 - these should be well-exercised by the multi-column test, be
   sure everything looks correctly rendered
Havoc Pennington's avatar
Havoc Pennington committed
87