import charter3.TicTacToe;
import com.google.common.truth.Truth;
import org.junit.Before;
import org.junit.Test;

/**
 * Created by brucezu on 11/13/15.
 */
public class TicTacToeTest {
    private TicTacToe game;

    @Before
    public void setup() {
        game = new TicTacToe(6, 3);
    }

    @Test(timeout = 90000L, expected = IllegalArgumentException.class)
    public void testValidNumberOfMarksInlineToWin() {
        TicTacToe game = new TicTacToe(6, 2);
    }

    @Test(timeout = 90000L, expected = IllegalArgumentException.class)
    public void testValidNumberOfMarksInlineToWin2() {
        TicTacToe game = new TicTacToe(6, 7);
    }

    @Test(timeout = 90000L, expected = IndexOutOfBoundsException.class)
    public void testValidMarkLocation() {
       game.mark(-1,0);
    }
    @Test(timeout = 90000L, expected = IndexOutOfBoundsException.class)
    public void testValidMarkLocation2() {
        game.mark(1,7);
    }

    @Test(timeout = 90000L, expected = IndexOutOfBoundsException.class)
    public void testValidMarkLocation3() {
        game.mark(2,2);
        game.mark(2,2);
    }

    @Test(timeout = 90000L, expected = Test.None.class)
    public void testNextPlayer() {
        int player = game.currentPlayer();
        game.nextPlayer();
        Truth.assertThat(player).isEqualTo(game.nextPlayer());
    }

    @Test(timeout = 90000L, expected = Test.None.class)
    public void testSuccessOnLeftTopToRightDownDiagonal() {
        // row line
        game.mark(1, 1);
        game.mark(2, 2);
        Truth.assertThat(game.whoWin()).isEqualTo(TicTacToe.None);

        game.mark(3, 3);
        Truth.assertThat(game.whoWin()).isNotEqualTo(TicTacToe.None);
    }
}

@@ -1,16 +1,625 @@
+// Copyright (C) 2014 The Android Open Source Project%0A//%0A// Licensed under the Apache License, Version 2.0 (the %22License%22);%0A// you may not use this file except in compliance with the License.%0A// You may obtain a copy of the License at%0A//%0A// http://www.apache.org/licenses/LICENSE-2.0%0A//%0A// Unless required by applicable law or agreed to in writing, software%0A// distributed under the License is distributed on an %22AS IS%22 BASIS,%0A// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A// See the License for the specific language governing permissions and%0A// limitations under the License.%0A%0A
 import charter3.
@@ -720,51 +720,8 @@
 t;%0A%0A
-/**%0A * Created by brucezu on 11/13/15.%0A */%0A
 publ
@@ -1329,24 +1329,25 @@
 () %7B%0A       
+ 
 game.mark(-1
@@ -1347,16 +1347,17 @@
 mark(-1,
+ 
 0);%0A    
@@ -1358,16 +1358,17 @@
 ;%0A    %7D%0A
+%0A
     @Tes
@@ -1494,16 +1494,17 @@
 .mark(1,
+ 
 7);%0A    
@@ -1633,32 +1633,33 @@
     game.mark(2,
+ 
 2);%0A        game
@@ -1666,16 +1666,17 @@
 .mark(2,
+ 
 2);%0A    
@@ -2163,16 +2163,16 @@
 None);%0A%0A
-
         
@@ -2263,11 +2263,1086 @@
 );%0A    %7D
+%0A%0A    @Test(timeout = 90000L, expected = Test.None.class)%0A    public void testSuccessOnRightTopToLeftDownDiagonal() %7B%0A        // row line%0A        game.mark(1, 4);%0A        game.mark(2, 3);%0A        Truth.assertThat(game.whoWin()).isEqualTo(TicTacToe.None);%0A%0A        game.mark(3, 2);%0A        Truth.assertThat(game.whoWin()).isNotEqualTo(TicTacToe.None);%0A    %7D%0A%0A    @Test(timeout = 90000L, expected = Test.None.class)%0A    public void testSuccessOnColumn() %7B%0A        // row line%0A        game.mark(1, 1);%0A        game.mark(3, 1);%0A        game.mark(4, 1);%0A        Truth.assertThat(game.whoWin()).isEqualTo(TicTacToe.None);%0A%0A        game.mark(5, 1);%0A        Truth.assertThat(game.whoWin()).isNotEqualTo(TicTacToe.None);%0A    %7D%0A%0A    @Test(timeout = 90000L, expected = Test.None.class)%0A    public void testSuccessOnRow() %7B%0A        // row line%0A        game.mark(2, 1);%0A        game.mark(2, 3);%0A        game.mark(2, 4);%0A        Truth.assertThat(game.whoWin()).isEqualTo(TicTacToe.None);%0A%0A        game.mark(2, 5);%0A        Truth.assertThat(game.whoWin()).isNotEqualTo(TicTacToe.None);%0A    %7D
 %0A%7D%0A

Add license to TicTacToeTest and 3 test method