diff options
Diffstat (limited to 'extra/cluedo_test.go')
| -rw-r--r-- | extra/cluedo_test.go | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/extra/cluedo_test.go b/extra/cluedo_test.go deleted file mode 100644 index e7a53b1..0000000 --- a/extra/cluedo_test.go +++ /dev/null @@ -1,50 +0,0 @@ -package extra - -import ( - "testing" -) - -func TestPrepCards(t *testing.T) { - // Run the function to get the murder combination and player cards - roundInfo := CluedoPrepCards([]string{"{{user}}", "{{char}}", "{{char2}}"}) - // Create a map to track all distributed cards - distributedCards := make(map[string]bool) - // Check that the murder combination cards are not distributed to players - murderCards := []string{roundInfo.Answer.Murderer, roundInfo.Answer.Weapon, roundInfo.Answer.Room} - for _, card := range murderCards { - if distributedCards[card] { - t.Errorf("Murder card %s was distributed to a player", card) - } - } - // Check each player's cards - for player, cards := range roundInfo.PlayersCards { - for _, card := range cards { - // Ensure the card is not part of the murder combination - for _, murderCard := range murderCards { - if card == murderCard { - t.Errorf("Player %s has a murder card: %s", player, card) - } - } - // Ensure the card is unique and not already distributed - if distributedCards[card] { - t.Errorf("Card %s is duplicated in player %s's hand", card, player) - } - distributedCards[card] = true - } - } - // Verify that all non-murder cards are distributed - allCards := append(append([]string{}, rooms...), weapons...) - allCards = append(allCards, people...) - for _, card := range allCards { - isMurderCard := false - for _, murderCard := range murderCards { - if card == murderCard { - isMurderCard = true - break - } - } - if !isMurderCard && !distributedCards[card] { - t.Errorf("Card %s was not distributed to any player", card) - } - } -} |
