Interface ToChange<CH extends ChangeElement>

Type Parameters:
CH - The class of a assertion on a change (an sub-class of ChangeElement).
All Superinterfaces:
Navigation
All Known Subinterfaces:
OriginWithChanges<CHS,CH>, OriginWithColumnsAndRowsFromChange<CHS,CH,C,R>, OriginWithValuesFromColumn<CHS,CH,C,R,V>, OriginWithValuesFromRow<CHS,CH,C,R,V>
All Known Implementing Classes:
AbstractAssertWithOriginWithChanges, AbstractAssertWithOriginWithColumnsAndRowsFromChange, AbstractAssertWithValues, AbstractOutputterWithOriginWithChanges, AbstractOutputterWithOriginWithColumnsAndRowsFromChange, AbstractOutputterWithValues, ChangeAssert, ChangeColumnAssert, ChangeColumnOutputter, ChangeColumnValueAssert, ChangeColumnValueOutputter, ChangeOutputter, ChangeRowAssert, ChangeRowOutputter, ChangeRowValueAssert, ChangeRowValueOutputter, ChangesAssert, ChangesOutputter

public interface ToChange<CH extends ChangeElement> extends Navigation
Defines methods to navigate to an instance with assertion methods on a Change.

The different methods return an instance with assertion methods on one change (ChangeAssert).

These methods exists when navigating (at the beginning assertThat()) from changes.

As shown in the diagram below, it is possible to call the method to navigate to a change from :

diagram with navigation to change

It is important to keep in mind that the methods are executed from the point of view of the last instance with assertion methods on changes (ChangesAssert).
So all the lines of code below are equivalent : they point on the change at index 1 (as usual, the list start at index 0).

 
 assertThat(changes).change(1)......;                                   // Point directly on the change at index 1
 assertThat(changes).change().returnToChange().change()......;          // Use the returnToChange() method to return to origin
                                                                        // to return on the changes and access to the next/second change of the list
 assertThat(changes).change().change()......;                           // Same as precedent but returnToChange() is implicit
 assertThat(changes).change().change(1)......;                          // The method with the index can be call too
 assertThat(changes).change(2).change(0).change(1)......;               // Idem
 assertThat(changes).change().column().change()......;
 assertThat(changes).change().rowAtEndPoint().change(1)......;
 assertThat(changes).change().column().value().change()......;
 assertThat(changes).change().rowAtEndPoint().value().change(1)......;
 // Equivalent to the precedent but with the use of the methods to return to origin
 assertThat(changes).change().rowAtEndPoint().value().returnToRow().returnToChange().returnToChanges().change(1)......;
 
 
Author:
Régis Pouiller