import Ġdev . my th os . test . assert Follow s Ċ import Ġdev . my th os . test . branch Ċ import Ġkotlin . test . Test Ċ Ċ class ĠMain Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Level 1 () Ġ{ ĊĠĠĠĠĠĠĠ Ġassert Follow s ( main Game , Ġbranch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" show Ġcomp ass ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (""" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġâĸ ² ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠN ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠâĹ Ħ W ĠĠĠ ĠE âĸ º ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġâĸ ¼ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ""" . trim Indent ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġup ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 1 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġnorth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġno Ġdoor Ġthat Ġway .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġsouth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġno Ġdoor Ġthat Ġway .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġup ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġno Ġl adder Ġthat Ġway .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġan a ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġnothing Ġin Ġthat Ġdirection .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġwest ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 1 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġk ata ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 1 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġdown ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 0 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġan a ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* yes .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" yes ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 0 .* red .* ")) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Level 2 () Ġ{ ĊĠĠĠĠĠĠĠ Ġassert Follow s ( main Game , Ġbranch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġto Ġlevel Ġtwo ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 0 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġeast ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 0 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġsouth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġno Ġdoor Ġthat Ġway .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġnorth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame (" There 's Ġno Ġdoor Ġthat Ġway .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġk ata ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 0 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġwest ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 0 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġnorth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 0 \\. 0 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġan a ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 0 \\. 0 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġeast ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 1 \\. 0 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġk ata ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 1 \\. 0 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġup ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 1 \\. 1 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġwest ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 0 \\. 1 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġsouth ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 1 .* blue .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġan a ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 0 \\. 1 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġeast ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 1 .* red .* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" shift Ġk ata ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* You Ġfinished ĠLevel Ġ 2 ! .* ")) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ // ĠĠĠ Ġ@ Test Ċ // ĠĠĠ Ġfun Ġtest Level 3 () Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġassert Follow s ( main Game , Ġbranch Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġto Ġlevel Ġthree ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 1 .* blue .* ")) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" go Ġnorth ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 1 \\. 1 \\. 1 .* blue .* ")) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġplayer (" push Ġbox Ġsouth ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġgame ( Regex (" .* 0 \\. 1 \\. 1 .* blue .* ")) Ċ // ĠĠĠĠĠĠĠ Ġ}) Ċ // ĠĠĠ Ġ} Ċ }