public void OneOnTwo_If_both_can_be_killed_keep_the_odd_gun_to_avoid_split() { var bangStrategy = new CleverBangStrategy(); Assert.That(bangStrategy.BangOneOnTwo(2, 3, 4), Is.EqualTo(Gun.Right)); Assert.That(bangStrategy.BangOneOnTwo(2, 4, 3), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(3, 2, 3), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(3, 3, 2), Is.EqualTo(Gun.Right)); }
public void OneOnTwo_Go_for_smallest_hand() { var bangStrategy = new CleverBangStrategy(); Assert.That(bangStrategy.BangOneOnTwo(1, 2, 3), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(1, 3, 2), Is.EqualTo(Gun.Right)); Assert.That(bangStrategy.BangOneOnTwo(2, 1, 2), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(2, 2, 1), Is.EqualTo(Gun.Right)); }
public void OneOnTwo_Kill_one_gun_if_possible() { var bangStrategy = new CleverBangStrategy(); Assert.That(bangStrategy.BangOneOnTwo(1, 3, 4), Is.EqualTo(Gun.Right)); Assert.That(bangStrategy.BangOneOnTwo(1, 4, 3), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(2, 3, 2), Is.EqualTo(Gun.Left)); Assert.That(bangStrategy.BangOneOnTwo(2, 2, 3), Is.EqualTo(Gun.Right)); }