package belotetime.tests;
import static org.junit.Assert.*;
import org.junit.Ignore;
import org.junit.Test;
import belotetime.application.game.Card;
import belotetime.application.game.Game;
import belotetime.application.game.Player;
import belotetime.application.game.Set;
import belotetime.application.game.XmlFeeds;
public class TestXmlFeeds
{
private Game g;
public TestXmlFeeds()
{
g = new Game();
g.getPlayers().add(new Player("Joueur 1"));
g.getPlayers().add(new Player("Joueur 2"));
g.getPlayers().add(new Player("Joueur 3"));
g.getPlayers().add(new Player("Joueur 4"));
g.addPlayer(g.getT1(), g.getPlayers().get(0));
g.addPlayer(g.getT2(), g.getPlayers().get(1));
g.addPlayer(g.getT1(), g.getPlayers().get(2));
g.addPlayer(g.getT2(), g.getPlayers().get(3));
g.getPacket().shuffle();
g.setCurrentSet(new Set(g, g.getPlayers().get((int)(Math.random() * 4))));
g.getCurrentSet().firstDeal(Set.THREE_CARDS);
}
@Test
public void testXmlGetAction()
{
assertEquals(XmlFeeds.xmlGetAction("erigjroiehgogoihio<action>playCard</action>fljgdlkvhfkldhgilzfsdfl"), "playCard");
}
@Test
public void testXmlGetTag()
{
String xml = "";
xml += "<action>Test</action>";
assertEquals("Test", XmlFeeds.xmlGetTag(xml, "action"));
assertTrue(XmlFeeds.xmlGetTag(xml, "player").isEmpty());
assertTrue(XmlFeeds.xmlGetTag(xml, "player").length() == 0);
}
@Test
public void testGameToXml()
{
String gameXml = XmlFeeds.gameToXml(g);
assertEquals(XmlFeeds.playersToXml(g), "<players>" + XmlFeeds.xmlGetTag(gameXml, "players") + "</players>");
}
@Test
public void testXmlToGame()
{
Game game = XmlFeeds.xmlToGame(XmlFeeds.gameToXml(g));
Set s = game.getCurrentSet();
if(s.getTaker().getLogin().isEmpty())
s.setTaker(null);
if(s.getDealer().getLogin().isEmpty())
s.setDealer(null);
if(s.getStarter().getLogin().isEmpty())
s.setStarter(null);
if(s.getTrump().equals("false"))
s.setTrump(null);
assertEquals(g.getCurrentSet().getTrump(), s.getTrump());
assertEquals(g.getCurrentSet().getStarter(), s.getStarter());
assertEquals(g.getCurrentSet().getTaker(), s.getTaker());
assertEquals(g.getT2().getP1().getLogin(), "Joueur 2");
}
@Test
public void testXmlToPlayer()
{
String xml = "<player><login>name</login><hand><card><name>Neuf</name><color>Pique</color><value>14</value><trump>true</trump><img></img></card>";
Player p = XmlFeeds.xmlToPlayer(xml);
assertEquals(p.getLogin(), "name");
assertEquals(p.getHand().getCards().get(0).getName(), "Neuf");
}
@Test
public void testSetToXml()
{
g.getCurrentSet().setTurn(Set.SECOND_TURN);
System.out.println(XmlFeeds.setToXml(g.getCurrentSet()));
g.getCurrentSet().setTrump("Test");
System.out.println(XmlFeeds.setToXml(g.getCurrentSet()));
}
@Test
public void testXmlToSet()
{
g.getCurrentSet().setTurn(Set.SECOND_TURN);
String xml = XmlFeeds.setToXml(g.getCurrentSet());
String turn = XmlFeeds.xmlGetTag(xml, "turn");
int t = Integer.parseInt(turn);
Set s = XmlFeeds.xmlToSet(xml);
}
}