public class Verifier
{
    public static final String EXAMPLE_1 = "example1.txt";
    public static final Integer[] EXAMPLE_1_RESULT = {0, 3, 6, 9, 2, 5, 8, 1, 4, 7};
    public static final String EXAMPLE_2 = "example2.txt";
    public static final Integer[] EXAMPLE_2_RESULT = {3, 0, 7, 4, 1, 8, 5, 2, 9, 6};
    public static final String EXAMPLE_3 = "example3.txt";
    public static final Integer[] EXAMPLE_3_RESULT = {6, 3, 0, 7, 4, 1, 8, 5, 2, 9};

    public static final Integer[] DEALT_INTO_RESULT = {9, 8, 7, 6, 5, 4, 3, 2, 1, 0};
    public static final Integer[] CUT_RESULT = {3, 4, 5, 6, 7, 8, 9, 0, 1, 2};

    public Verifier (boolean debug)
    {
        _debug = debug;
    }

    public boolean verify ()
    {
        Deck theDeck = new Deck(10, _debug);

        theDeck.populateWithCards();

        System.out.println("Initial:\n"+theDeck);

        Deck copy = new Deck(10, _debug);

        if (!theDeck.dealInto(copy))
            System.out.println("Dealing failed!");

        System.out.println("\nDealt into:\n"+copy);

        Deck dealtInto = new Deck(DEALT_INTO_RESULT, _debug);

        if (copy.equals(dealtInto))
            System.out.println("Dealt into worked!");
        else
        {
            System.out.println("Dealt into did not work!");

            return false;
        }

        theDeck.cut(3);

        System.out.println("\nDeck after cut 3:\n"+theDeck);

        Deck cutDeck = new Deck(CUT_RESULT, _debug);

        if (theDeck.equals(cutDeck))
            System.out.println("Cut worked!");
        else
        {
            System.out.println("Cut did not work!");

            return false;
        }
        
        theDeck.populateWithCards();

        theDeck.cut(-4);

        System.out.println("\nDeck after cut -4:\n"+theDeck);

        theDeck.populateWithCards();

        Table theTable = new Table(_debug);

        theTable.deal(theDeck, 3);

        theDeck = theTable.collectCards();

        System.out.println("\nDeck after deal with increment 3:\n"+theDeck);
        
        return true;
    }

    private boolean _debug;
}
@@ -570,16 +570,25 @@
 teger%5B%5D 
+POSITIVE_
 CUT_RESU
@@ -623,16 +623,192 @@
 , 1, 2%7D;
+%0A    public static final Integer%5B%5D NEGATIVE_CUT_RESULT = %7B6, 7, 8, 9, 0, 1, 2, 3, 4, 5%7D;%0A    public static final Integer%5B%5D DEAL_WITH_INCREMENT = %7B0, 7, 4, 1, 8, 5, 2, 9, 6, 3%7D;
 %0A%0A    pu
@@ -1622,16 +1622,25 @@
 ew Deck(
+POSITIVE_
 CUT_RESU
@@ -1726,16 +1726,30 @@
 ln(%22Cut 
+with positive 
 worked!%22
@@ -1810,16 +1810,30 @@
 ln(%22Cut 
+with positive 
 did not 
@@ -1878,24 +1878,16 @@
       %7D%0A
-        
 %0A       
@@ -2018,248 +2018,829 @@
     
-theDeck.populateWithCards();%0A%0A        Table theTable = new Table(_debug);%0A%0A        theTable.deal(theDeck, 3);%0A%0A        theDeck = theTable.collectCards();%0A%0A        System.out.println(%22%5CnDeck after deal with increment 3:%5Cn%22+theDeck);%0A        
+cutDeck = new Deck(NEGATIVE_CUT_RESULT, _debug);%0A%0A        if (theDeck.equals(cutDeck))%0A            System.out.println(%22Cut with negative worked!%22);%0A        else%0A        %7B%0A            System.out.println(%22Cut with negative did not work!%22);%0A%0A            return false;%0A        %7D%0A%0A        theDeck.populateWithCards();%0A%0A        Table theTable = new Table(_debug);%0A%0A        theTable.deal(theDeck, 3);%0A%0A        theDeck = theTable.collectCards();%0A%0A        System.out.println(%22%5CnDeck after deal with increment 3:%5Cn%22+theDeck);%0A        %0A        Deck dealtDeck = new Deck(DEAL_WITH_INCREMENT, _debug);%0A%0A        if (theDeck.equals(dealtDeck))%0A            System.out.println(%22Deal with increment worked!%22);%0A        else%0A        %7B%0A            System.out.println(%22Deal with increment did not work!%22);%0A%0A            return false;%0A        %7D%0A
 %0A   

Update Verifier.java