main_testing4/shogun_test2.scala
author Christian Urban <christian.urban@kcl.ac.uk>
Fri, 26 Apr 2024 17:36:41 +0100
changeset 487 efad9725dfd8
parent 476 7550c816187a
permissions -rw-r--r--
updated

def urbanmain() = {
  import M4._

  val b_init = Board(Set(King(2,Wht,(4,1)), King(1,Red,(5,8)),
                         Pawn(4,Wht,(1,1)), Pawn(4,Red,(1,8)),
                  	 Pawn(3,Wht,(2,1)), Pawn(2,Red,(2,8)),
                      	 Pawn(2,Wht,(3,1)), Pawn(3,Red,(3,8)),
              		 Pawn(1,Wht,(5,1)), Pawn(1,Red,(4,8)),
               		 Pawn(4,Wht,(6,1)), Pawn(3,Red,(6,8)),
               		 Pawn(3,Wht,(7,1)), Pawn(1,Red,(7,8)),
               		 Pawn(2,Wht,(8,1)), Pawn(3,Red,(8,8))))

  val pw_c = Pawn(2, Wht, (4,4))
  val pw_d = Pawn(3, Red, (4,4))

  assert(all_moves(pw_c, b_init) == 
   Set(Pawn(2,Wht,(3,5)), Pawn(2,Wht,(2,4)), Pawn(2,Wht,(3,3)), Pawn(2,Wht,(5,5)),
   Pawn(2,Wht,(6,4)), Pawn(2,Wht,(4,6)), Pawn(2,Wht,(4,2)), Pawn(2,Wht,(5,3))))

  assert(all_moves(pw_d, b_init) ==
   Set(Pawn(3,Red,(4,7)), Pawn(3,Red,(5,2)), Pawn(3,Red,(3,2)), Pawn(3,Red,(1,4)), 
       Pawn(3,Red,(6,3)), Pawn(3,Red,(3,6)), Pawn(3,Red,(2,5)), Pawn(3,Red,(2,3)), 
       Pawn(3,Red,(4,1)), Pawn(3,Red,(5,6)), Pawn(3,Red,(7,4)), Pawn(3,Red,(6,5))))

}