def test_apply(self): FakeRule = type(b"FakeRule", (object, ), {"to_field": None}) rules = Rules({}) rules._fields = {} rules._fields["field"] = FakeRule() rules.field = "field__value" special_field = FakeRule() special_field.to_field = "__special_field" rules._fields["special_field"] = special_field rules.special_field = "special_field__value" self.assertDictEqual(rules.apply(), { "field": "field__value", "__special_field": "special_field__value", })
class Game(object): """docstring for Game""" def __init__(self, board): super(Game, self).__init__() self.rules = Rules() self.board = board self.xSize = board.getXSize() self.ySize = board.getYSize() def iterate(self): newBoard = Board(self.xSize, self.ySize) for i in xrange(self.xSize): for j in xrange(self.ySize): count = self.board.getAliveNeiburghs(i,j) state = self.board.isAlive(i,j) newState = self.rules.apply(count, state) newBoard.setState(i,j,newState) self.board = newBoard def playGame(self): while(not self.board.isAllDead()): self.iterate() self.printBoard() def printLines(self): line = '\n' for i in xrange(self.ySize): line += '-' print line + '\n' def printBoard(self): os.system('clear') self.printLines() print self.board.toString() self.printLines()
def test_apply_error(self): rules = Rules({}) rules._fields = {} rules.f = rules._fields['f'] = _NOTSET self.assertRaises(NotSetError, rules.apply, silent=False) self.assertEqual(rules.apply(silent=True), {})
def apply(days): obj = Rules() response = jsonify(obj.apply(days=days)) return response