Main function
Description of CasesInputs Expected Outputs / Actions
1. Normal play, ALL passes of both players used P,P,P,P,P,P first 6 turns, players totals should not change, pass counts reduce to zero, after 6 turns, rolls are automatically done without asking
2. Normal play, NO passes used by either player R,R,R,R,... rolls are added to player's total accordingly
3. Player 1 wins R, ... Player 2's total equals or exceeds 21 first
4. Player 2 wins R, ... Player 1's total equals or exceeds 21 first

Play_turn function
Description of CasesParameters, Inputs
name, total rolls, passes, choice
Expected Outputs / Actions
Normal, player has 3 passes, uses one "Joe", 5, 3, "P"returns 5, 2
Normal, player has 3 passes, rolls "Bob", 5, 3, "R", roll is 4returns 9, 3
Normal, player has 2 passes, uses one "Joe", 0, 2, "P"returns 0, 1
Normal, player has 2 passes, rolls "Bob", 0, 2, "R", roll is 4returns 4, 2
Normal, player has 1 pass, uses it "Sam", 5, 1, "P" returns 5, 0
Normal, player has 1 pass, rolls "Tom", 6, 1,"R", roll is 3 returns 9, 1
Normal, player has no passes, rolls automatically "Sue", 5, 0, no choice, rolls 3 returns 8, 0

Pass or Roll function
Description of CasesParameter/Input Expected Outputs / Actions
Normal input first "Joe", "R" prompt "Player Joe (P)ass or (R)oll", returns "R"
Normal input first "Joe", "r" prompt "Player Joe (P)ass or (R)oll", returns "R"
Normal input first "Joe", "P" prompt "Player Joe (P)ass or (R)oll", returns "P"
Normal input first "Joe", "p" prompt "Player Joe (P)ass or (R)oll", returns "P"
One invalid input, then valid"Joe", "X","P" gives error message, prompt "Player Joe (P)ass or (R)oll", returns "P"
Two invalid inputs, then valid"Joe","X","X","P" gives error message, gives error message, prompt "Player Joe (P)ass or (R)oll", returns "P"