!4 Look in the collapsed setup how the mapping between column names and method names is done.
The magic is done with two variables:
SLIM_DT_SETTER - for input columns
SLIM_DT_GETTER - for output columns
For each variable you can define a list of ''Method Extractor Rules'' in JSON format. A Method Extractor Rule has 3 properties:
1. Scope - a regular expression which identifies all columns for which this extractor should be applied.
2. Target Name - a replacement string for the "Column Name" regular expression. This will be passed to the Disgracer to generate the final method name.
3. Parameters - a colon separated list of parameters passed to the method called.
The list of rules is preceded with a version number ''Format Version''. This must currently be always "1.0".
Future versions might define additional features and will require a different version number.
If no Method Extractor Rule matches the current column name than the default rules of the Decision Table are used ("set " + column name).
The Hybrid Decision Table is no new table type but it modifies the behavior of the decision table with the help of the above variables.
This has the advantage that you don't need to specify the table type in your test cases
and leaves the decision to the implementer of the test cases if he wants to use a hybrid, dynamic or normal decision table.
!4 IMPORTANT: to avoid side effects always add a >TearDown page to reset the mappings to the defaults.
!2 Warning: The Hybrid Decision Table is still experimental
The way how the method names are configured (via variables) might change.
Be prepared to refactor your tests if you use this feature.
Your ideas for a final solution are welcome please give feedback on the [[!-FitNesse-! mail group][https://groups.yahoo.com/neo/groups/fitnesse/info]]