@@ -3811,6 +3811,30 @@ def test_variant_end(self):
38113811 self .assertFalse (board .is_variant_win ())
38123812 self .assertTrue (board .is_variant_loss ())
38133813
3814+ # White far away.
3815+ board = chess .variant .RacingKingsBoard ("k1q1R2Q/3N4/8/8/5K2/6n1/1b6/1r6 w - - 4 19" )
3816+ self .assertTrue (board .is_variant_end ())
3817+ self .assertTrue (board .is_variant_loss ())
3818+ self .assertFalse (board .is_variant_win ())
3819+ self .assertFalse (board .is_variant_draw ())
3820+ self .assertEqual (board .result (), "0-1" )
3821+
3822+ # Black near backrank, but cannot move there.
3823+ board = chess .variant .RacingKingsBoard ("2KR4/k7/2Q5/4q3/8/8/8/2N5 b - - 0 1" )
3824+ self .assertTrue (board .is_variant_end ())
3825+ self .assertTrue (board .is_variant_loss ())
3826+ self .assertFalse (board .is_variant_win ())
3827+ self .assertFalse (board .is_variant_draw ())
3828+ self .assertEqual (board .result (), "1-0" )
3829+
3830+ # Black two moves away.
3831+ board = chess .variant .RacingKingsBoard ("1r4RK/6R1/k1r5/8/8/8/4N3/q2n1n2 b - - 0 1" )
3832+ self .assertTrue (board .is_variant_end ())
3833+ self .assertTrue (board .is_variant_loss ())
3834+ self .assertFalse (board .is_variant_win ())
3835+ self .assertFalse (board .is_variant_draw ())
3836+ self .assertEqual (board .result (), "1-0" )
3837+
38143838 def test_stalemate (self ):
38153839 board = chess .variant .RacingKingsBoard ("1Q4R1/5K2/4B3/8/8/3N4/8/k7 b - - 0 1" )
38163840 self .assertTrue (board .is_game_over ())
0 commit comments