Package sofya.apps.dejavu

Interface Summary
GraphLoader This interface defines the contract for classes that provide the service of loading graphs built from Java classes.
 

Class Summary
BlockTestMapper Test mapper which performs a mapping from basic blocks selected by DejaVu to the tests that hit those blocks.
BytecodeNodeComparer Implementation of NodeComparer which uses the bytecode instruction lists of two nodes to compare them for equivalence.
CFEdgeSelector Implementation of the edge selection module in the DejaVu graph traversal algorithm which understands the control flow edges found in Sofya control flow graphs.
CFGLoader Loader class for control flow graphs.
ClassPair Data structure which correlates a class name to its location in the two versions of the program.
EdgeSelector The edge selector retrieves and matches edges from the graphs being traversed, using this information to control how the graph traverser walks the graphs.
EdgeSelector.EdgeMatchData Data container class which records information about the outgoing edges from nodes in each graph and the path (or paths) the traverser should follow next.
EdgeSelector.EdgeTraversal Data container class which is used to direct the behavior of the graph traverser.
GraphTraverser This class traverses two graphs using a node comparer to build a list of dangerous edges.
InputParser This class performs basic validation of the input files supplied to DejaVu.
MethodPair Data structure which maintains information about the class and methods currently being processed by DejaVu.
NodeComparer This abstract class defines the contract for classes that provide the service of comparing nodes from different Java classes for equality.
OutputAdapter Adapter class which is responsible for the display of test selection results and the writing of those results to a database file.
TestMapper A concrete implementation of this class is responsible for performing the mapping of dangerous edges to tests in the original test suite.
TestSelectionHandler The TestSelectionHandler provides methods to manipulate Sofya test selection files and manage test selection information for methods obtained from running the DejaVu tool.