main
method) that would later need to be
commented-out. You must have a public default constructor.
SystemAction
TesterSystemAction
s in three modes:
SystemAction
s, it calls the
actionPerformed
method (with a null argument). This is
not likely to be useful for many people.
CallableSystemAction
s, it calls
actionPerformed
so you can test the action.
NodeAction
s (including subclasses like
CookieAction
s), it first presents a selection dialog
rooted at the Desktop. You must select a node (or combination of
nodes) that the action accepts. When you press OK, the
action will be run on those nodes. This lets you test both the
performance of the action, and the correctness of the enablement
logic.
Callable_action
, Node_action
and
Cookie_action
templates.
Presenter
TesterAny action (or other object) tested by it must implement either
Presenter.Menu
or Presenter.Toolbar
(or
both). A frame will be displayed, possibly with a menu bar
demonstrating the menu presenter, possibly with the toolbar
presenter added to it. You can select the action via these means
and make sure it works. You can also (e.g.) open an Explorer and
start selecting some nodes, to check the enablement logic of (e.g.)
a NodeAction
.
This tester is the default executor for the
Submenu_action
and Grouping_action
templates.
Executor
TesterYou can also create customized versions of this tester that predefine the class name to test on, rather than prompting each time, which may be easier if you are testing it over and over again. If you predefine the class name, you may also predefine a list of arguments.
This tester is the default executor for the External_executor
and Internal_executor
templates.
CompilerType
TesterThe tester can be customized according to the style of compilation requested (compile, build, or clean); and according to the requested depth (files only, files and folders, or files and recursive subfolders).
This tester is the default executor for the External_compiler
template.
This tester is the default executor for the Leaf_node
,
Container_node
, System_option
, and Local_filesystem
templates.
But it can be used on any object with a public default constructor.