Exemplo n.º 1
0
 public void testBureaucratActionNoVictoryInOtherPlayer()
 {
     Game g = new Game(2);
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Feast());
     CardFunctions.bureaucratAction(g.getPlayers()[0]);
     Assert.AreEqual(CardMother.Feast(), g.getPlayers()[1].getDeck().draw());
     Assert.AreEqual(CardMother.Silver(), g.getPlayers()[0].getDeck().draw());
 }
Exemplo n.º 2
0
 public void testBureaucratAction()
 {
     Game g = new Game(2);
     g.getPlayers()[1].getHand().getHand().Add(CardMother.Estate());
     CardFunctions.bureaucratAction(g.getPlayers()[0]);
     Assert.AreEqual(CardMother.Estate(), g.getPlayers()[1].getDeck().draw());
     Assert.AreEqual(CardMother.Silver(), g.getPlayers()[0].getDeck().draw());
 }
Exemplo n.º 3
0
 private void ConfirmNames(object sender, RoutedEventArgs e)
 {
     Game mygame = new Game(numValue);
     List<Player> players = mygame.getPlayers();
     for (int i = 0; i < numValue; i++) {
         players[i].setName(nameBox[i].Text);
     }
     main = new MainWindow(mygame,language);
     PrepScreen Prep = new PrepScreen(players[0].getName(), main);
     Prep.Show();
     Close();
 }
Exemplo n.º 4
0
 public void testGetPlayers()
 {
     Game g = new Game(4);
     List<Player> players = g.getPlayers();
     for (int i = 0; i < players.Count; i++)
     {
         Assert.AreEqual(i, players[i].getID());
     }
 }
Exemplo n.º 5
0
 public void testPlayMoatAndWitch()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     Player p3 = g.getPlayers()[2];
     p2.getHand().getHand().Add(CardMother.Moat());
     p.getHand().getHand().Add(CardMother.Witch());
     p.play(CardMother.Witch());
     p2.setVictoryPts();
     p3.setVictoryPts();
     Assert.AreEqual(2, p3.getVictoryPts());
     Assert.AreEqual(3, p2.getVictoryPts());
 }
Exemplo n.º 6
0
 public void testPlayMoatAndThief()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     Player p3 = g.getPlayers()[2];
     p2.getHand().getHand().Add(CardMother.Moat());
     p.getHand().getHand().Add(CardMother.Thief());
     p.play(CardMother.Thief());
     List<List<Card>> thiefed = p.getThiefList();
     Assert.AreEqual(0, thiefed[0].Count);
     Assert.AreEqual(2, thiefed[1].Count);
 }
Exemplo n.º 7
0
 public void testPlayMoatAndSpy()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     Player p3 = g.getPlayers()[2];
     p2.getHand().getHand().Add(CardMother.Moat());
     p.getHand().getHand().Add(CardMother.Spy());
     p.play(CardMother.Spy());
     List<Card> cards = p.spyOnDecks();
     p.keepOrDiscardSpiedCards(cards);
     Assert.AreEqual(0, p2.getDeck().getInDiscard().Count);
     Assert.AreEqual(1, p3.getDeck().getInDiscard().Count);
     Assert.AreEqual(1, p.getDeck().getInDiscard().Count);
 }
Exemplo n.º 8
0
 public void testPlayMoatAndMilitia()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     Player p3 = g.getPlayers()[2];
     p2.getHand().getHand().Add(CardMother.Moat());
     p.getHand().getHand().Add(CardMother.Militia());
     p.play(CardMother.Militia());
     Assert.AreEqual(0, p2.functionsToCall.Count);
     Assert.AreEqual(1, p3.functionsToCall.Count);
 }
Exemplo n.º 9
0
 public void testPlayMoatAndBureaucrat()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     Player p3 = g.getPlayers()[2];
     p2.getHand().getHand().Add(CardMother.Moat());
     p.getHand().getHand().Add(CardMother.Bureaucrat());
     p2.getHand().getHand().Add(CardMother.Estate());
     p3.getHand().getHand().Add(CardMother.Estate());
     p.play(CardMother.Bureaucrat());
     Assert.AreEqual(CardMother.Copper(), p2.getDeck().peekAtTopCard());
     Assert.AreEqual(CardMother.Estate(), p3.getDeck().peekAtTopCard());
 }
Exemplo n.º 10
0
 public void testThiefActionWithNull()
 {
     Game g = new Game(3);
     g.getPlayers()[1].setDeck(new Deck(new List<Card>()));
     Player p = g.getCurrentPlayer();
     StatusObject o = new StatusObject(false);
     CardFunctions.thiefAction(p, o);
     List<List<Card>> thiefed = p.getThiefList();
     Assert.AreEqual(0, thiefed[0].Count);
 }
Exemplo n.º 11
0
 public void testFunctionSeven()
 {
     Game g = new Game(2);
     Player p = g.getCurrentPlayer();
     Player p2 = g.getPlayers()[1];
     p.getHand().getHand().Add(CardMother.Witch());
     Assert.IsTrue(p.play(CardMother.Witch()).wasPlayedProperly());
     Assert.AreEqual(7,p.getHand().size());
     p.setVictoryPts();
     p2.setVictoryPts();
     Assert.AreEqual(3, p.getVictoryPts());
     Assert.AreEqual(2, p2.getVictoryPts());
 }
Exemplo n.º 12
0
 public void testPlayThiefValidateCardNotStolen()
 {
     Game g = new Game(4);
     Player p = g.getCurrentPlayer();
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Gold());
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Silver());
     g.getPlayers()[2].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[3].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[3].getDeck().addCardToFront(CardMother.Feast());
     p.getHand().getHand().Add(CardMother.Thief());
     StatusObject o = p.play(CardMother.Thief());
     Assert.IsTrue(o.selectTrashFromThief());
     List<List<Card>> cards = p.getThiefList();
     Assert.AreEqual(2, cards[0].Count);
     Assert.AreEqual(1, cards[1].Count);
     Assert.AreEqual(0, cards[2].Count);
     List<Card> steal = new List<Card>();
     steal.Add(CardMother.Gold());
     steal.Add(CardMother.Silver());
     steal.Add(null);
     o = p.validateThiefStolenCards(steal);
     Assert.IsTrue(o.selectTrashFromThief());
     Assert.AreEqual(0, p.getPossibleCardsToKeepFromThief().Count);
 }
Exemplo n.º 13
0
 public void testPlayThiefSuccess()
 {
     Game g = new Game(4);
     Player p = g.getCurrentPlayer();
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Gold());
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Silver());
     g.getPlayers()[2].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[3].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[3].getDeck().addCardToFront(CardMother.Feast());
     p.getHand().getHand().Add(CardMother.Thief());
     StatusObject o = p.play(CardMother.Thief());
     Assert.IsTrue(o.selectTrashFromThief());
     List<List<Card>> cards = p.getThiefList();
     Assert.AreEqual(2, cards[0].Count);
     Assert.AreEqual(1, cards[1].Count);
     Assert.AreEqual(0, cards[2].Count);
     List<Card> steal = new List<Card>();
     steal.Add(CardMother.Gold());
     steal.Add(CardMother.Copper());
     steal.Add(null);
     o = p.validateThiefStolenCards(steal);
     Assert.IsTrue(o.needToKeepThief());
     Assert.AreEqual(CardMother.Silver(), g.getPlayers()[1].getDeck().getInDiscard()[0]);
     List<Card> keep = new List<Card>();
     keep.Add(CardMother.Gold());
     o = p.keepCardsFromThief(keep);
     Assert.AreEqual(1, p.getDeck().getInDiscard().Count);
     Assert.AreEqual(CardMother.Gold(), p.getDeck().getInDiscard()[0]);
 }
Exemplo n.º 14
0
 public void testPlaySpyWithNull()
 {
     Game g = new Game(4);
     Player p = g.getCurrentPlayer();
     g.getPlayers()[0].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[0].getDeck().addCardToFront(CardMother.Feast());
     g.getPlayers()[1].getDeck().addCardToFront(CardMother.Duchy());
     g.getPlayers()[2].getDeck().addCardToFront(CardMother.ThroneRoom());
     g.getPlayers()[3].getDeck().addCardToFront(CardMother.Militia());
     p.getHand().getHand().Add(CardMother.Spy());
     StatusObject o = p.play(CardMother.Spy());
     Assert.IsTrue(o.canSpyOnDeck());
     List<Card> cards = p.spyOnDecks();
     cards[1] = null;
     o = p.keepOrDiscardSpiedCards(cards);
     Assert.IsTrue(o.playerSpiedSuccessfully());
     Assert.AreEqual(CardMother.Feast(), g.getPlayers()[0].getDeck().getInDiscard()[0]);
     Assert.AreEqual(CardMother.Duchy(), g.getPlayers()[1].getDeck().peekAtTopCard());
     Assert.AreEqual(CardMother.ThroneRoom(), g.getPlayers()[2].getDeck().getInDiscard()[0]);
     Assert.AreEqual(CardMother.Militia(), g.getPlayers()[3].getDeck().getInDiscard()[0]);
 }
Exemplo n.º 15
0
 public void testLoad()
 {
     gameThreePlayer = Game.Load();
     Assert.AreEqual(4, gameThreePlayer.getPlayers().Count);
 }
Exemplo n.º 16
0
        public void testLoadAndSave()
        {
            Internationalizer.setLocale(new Locale("de", "DE"));
            Game g = new Game(2);
            Player p = g.getPlayers()[0];
            p.getHand().getHand().Add(CardMother.Feast());
            p.getDeck().getInDiscard().Add(CardMother.Estate());
            p = g.nextTurnPlayer();
            p.getHand().getHand().Add(CardMother.Village());

            //Setup Done
            string direc = Directory.GetCurrentDirectory();
            direc += "\\testSave.dom";
            FileStream stream = new FileStream(direc, FileMode.OpenOrCreate,FileAccess.ReadWrite);
            g.SaveFile(stream);

            Internationalizer.setLocale(new Locale("en", "US"));

            stream = new FileStream(direc, FileMode.OpenOrCreate, FileAccess.ReadWrite);
            Game g2 = Game.LoadFile(stream);
            Assert.AreEqual(1, g2.getCurrentPlayerNumber());
            Assert.IsTrue(g2.getCurrentPlayer().getHand().contains(CardMother.Village()));
            Assert.IsFalse(g2.isGameOver());
            Assert.AreEqual(4, g2.getPlayers()[0].getVictoryPts());
            Assert.AreEqual(3, g2.getPlayers()[1].getVictoryPts());
            Assert.AreEqual(12, g2.getPlayers()[0].getDeck().size() + g2.getPlayers()[0].getHand().size());
            Assert.AreEqual(11, g2.getPlayers()[1].getDeck().size() + g2.getPlayers()[1].getHand().size());
            Assert.AreEqual("Aktionen", Internationalizer.getMessage("Actions"));

            Internationalizer.setLocale(new Locale("en", "US"));
        }
Exemplo n.º 17
0
 public void testPlayBureaucrat()
 {
     Game g = new Game(3);
     Player p = g.getCurrentPlayer();
     p.getHand().getHand().Add(CardMother.Bureaucrat());
     g.getPlayers()[1].getHand().getHand().Add(CardMother.Duchy());
     p.play(CardMother.Bureaucrat());
     Assert.AreEqual(CardMother.Silver(), p.getDeck().getInDeck()[0]);
     p = g.nextTurnPlayer();
     Assert.AreEqual(CardMother.Duchy(), p.getDeck().getInDeck()[0]);
     p = g.nextTurnPlayer();
     Assert.AreEqual(CardMother.Copper(), p.getDeck().getInDeck()[0]);
     Console.Write(g.getGameStatus());
 }