handle simple draw
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing

This commit is contained in:
2019-11-01 21:54:37 +01:00
parent befc8128cd
commit cc87ad378e

View File

@@ -163,6 +163,7 @@ impl Board {
}
//Diagonal winners require a full X pass
winner(&winners[2..4])
.or(Some(State::N).filter(|_| self.0.iter().filter(|s| *s == &State::N).count() == 0))
}
}
@@ -253,6 +254,11 @@ mod test {
Board::from_str("OXN,OON,XNO").unwrap().winner(),
Some(State::O)
);
println!("{}", Board::from_str("XOX,OOX,OXO").unwrap());
assert_eq!(
Board::from_str("XOX,OOX,OXO").unwrap().winner(),
Some(State::N)
);
}
#[test]