def check_value(self): from src.models.vote import Vote votes = self._get_votes() if votes and votes.value and float(votes.value) <= VOTE_LIMIT: Vote.delete(permanently=True).where(Vote.item == self).execute() self.delete_instance()
def setUp(self): self.testbed = testbed.Testbed() self.testbed.activate() self.testbed.init_datastore_v3_stub() self.testbed.init_memcache_stub() self.g1 = Game(opponent='test', date=datetime.date(2015, 10, 01), venue='test', team=Team.TEST) self.g2 = Game(opponent='test', date=datetime.date(2015, 11, 01), venue='test', team=Team.TEST) players = [] for i in range(0, 10): p = Player(name='Player ' + str(i)) p.put() players.append(p) self.g1.players = [p.key for p in players] self.g1.put() self.g2.players = [p.key for p in players] self.g2.put() v = Vote(game=self.g1.key, three=players[7].key, two=players[9].key, one=players[3].key) v.put() v = Vote(game=self.g1.key, three=players[4].key, two=players[7].key, one=players[3].key) v.put() v = Vote(game=self.g2.key, three=players[3].key, two=players[4].key, one=players[7].key) v.put()
def _get_votes(self): from src.models.vote import Vote vote = Vote.fetch( fn.Sum(Vote.value).alias("value") ).where(Vote.item == self).first() return vote
def add_vote(cid, item, data): vote_value = data.get("vote", 1) if "list" in item.type: vote = PlaylistVote.create_vote(cid=cid, value=vote_value, item=item) else: vote = Vote.create_vote(cid=cid, value=vote_value, item=item) vote.save() return vote
def setUp(self): self.testbed = testbed.Testbed() self.testbed.activate() self.testbed.init_datastore_v3_stub() self.testbed.init_memcache_stub() g = Game(opponent='test', date=datetime.date.today(), venue='test', team=Team.TEST) players = [] for i in range(0, 10): p = Player(name='Player ' + str(i)) p.put() players.append(p) g.players = [p.key for p in players] g.put() for i in range(0, 10): v = Vote(game=g.key, three=players[4].key, two=players[7].key, one=players[1].key) v.put()
def remove_vote(cid, item): if "list" in item.type: vote = PlaylistVote.fetch().where( (Vote.cid == cid) & (Vote.item == item) ).first() else: vote = Vote.fetch().where( (Vote.cid == cid) & (Vote.item == item) ).first() if vote: vote.delete_instance() return True else: return False
def delete_instance(self, permanently=False, recursive=False, delete_nullable=False): from src.models.vote import Vote Vote.delete(permanently=True).where(Vote.item == self.id).execute() return super(MediaItem, self).delete_instance(permanently, recursive, delete_nullable)