def importPlayer(self, player): self.log.message(str(player)) gm = GameMinute() gm.connectDB() appearanceID = gm.lookupID(player, self.log) if (len(appearanceID) > 1): # We have more than one record of this player/team/game. # This is a problem. self.errored += 1 elif (len(appearanceID) == 1): # We already have a record of this player/team/game. # We add that appearanceID, to ensure an update operation. player['ID'] = appearanceID[0] gm.saveDict(player, self.log) self.updated += 1 else: gm.saveDict(player, self.log) self.imported += 1 return True
def test_gameminute_saveDict(): log = Log('test.log') gm = GameMinute() gm.connectDB() # Formats with pytest.raises(RuntimeError) as excinfo: data = 'foo' gm.saveDict(data, log) assert 'saveDict requires a dictionary' in str(excinfo.value) # Insert dummy data data = { 'GameID': 1, 'TeamID': 1, 'PlayerID': 1, 'TimeOn': 0, 'TimeOff': 90, 'Ejected': 314 } assert gm.saveDict(data, log) is True assert gm.db.warnings() is None # Updates data = { 'ID': 2, 'GameID': 0, 'TeamID': 0, 'PlayerID': 0, 'TimeOn': 0, 'TimeOff': 0, 'Ejected': 0 } assert gm.saveDict(data, log) is True assert gm.db.warnings() is None # Delete dummy data sql = 'DELETE FROM tbl_gameminutes WHERE Ejected = 314' gm.db.query(sql, ())