mirror of
https://github.com/shlomif/PySolFC.git
synced 2025-04-05 00:02:29 -04:00
implement writeCard.
This commit is contained in:
parent
a15dfe4773
commit
ec808f30e9
2 changed files with 25 additions and 2 deletions
|
@ -46,9 +46,20 @@ class KpatXmlEmitter:
|
|||
self._indent -= 1
|
||||
self._ind_out("</{}>\n".format(self._tags.pop()['name']))
|
||||
|
||||
def _calcSuit(self, suit):
|
||||
"""docstring for _calcSuit"""
|
||||
return ["clubs", "spades", "hearts", "diamonds"][suit]
|
||||
|
||||
def _calcRank(self, rank):
|
||||
"""docstring for _calcRank"""
|
||||
return ["ace", "two", "three", "four", "five", "six",
|
||||
"seven", "eight", "nine", "ten", "jack", "queen", "king"][rank]
|
||||
|
||||
def writeCard(self, card, turn=None):
|
||||
"""docstring for writeCard"""
|
||||
self.writeEmptyTag(
|
||||
"card",
|
||||
[("id", str(card.id)), ("suit", "clubs"), ("rank", "ace")] +
|
||||
[("id", str(card.id)),
|
||||
("suit", self._calcSuit(card.suit)),
|
||||
("rank", self._calcRank(card.rank))] +
|
||||
([("turn", turn)] if turn else []))
|
||||
|
|
|
@ -52,10 +52,22 @@ class MyTests(unittest.TestCase):
|
|||
f = cStringIO()
|
||||
e = KpatXmlEmitter(f)
|
||||
self.assertTrue(e)
|
||||
e.writeCard(card=AbstractCard(1001, 0, 0, 1, 3001), turn="face-up")
|
||||
e.writeCard(card=AbstractCard(1001, 0, 0, 0, 3001), turn="face-up")
|
||||
self.assertEqual(
|
||||
f.getvalue(),
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
|
||||
+ "<card id=\"1001\" suit=\"clubs\" " +
|
||||
"rank=\"ace\" turn=\"face-up\"/>\n"
|
||||
)
|
||||
|
||||
def test_write_card2(self):
|
||||
f = cStringIO()
|
||||
e = KpatXmlEmitter(f)
|
||||
self.assertTrue(e)
|
||||
e.writeCard(card=AbstractCard(1002, 0, 1, 1, 3001), turn="face-up")
|
||||
self.assertEqual(
|
||||
f.getvalue(),
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
|
||||
+ "<card id=\"1002\" suit=\"spades\" " +
|
||||
"rank=\"two\" turn=\"face-up\"/>\n"
|
||||
)
|
||||
|
|
Loading…
Add table
Reference in a new issue