def check(self): eventmaster = self.__scoutevent_util.eventmaster stagemaster = self.__scoutevent_util.get_stage(1) playdata_pre = self.__scoutevent_util.get_scoutplaydata( self.__player0.id) # リダイレクト先. redirect_url = self.response.get('redirect_url') if redirect_url is None or redirect_url.find( '/sceventanim/{}/{}'.format(stagemaster.id, playdata_pre.confirmkey)) == -1: raise AppTestError(u'リダイレクト先が正しくありません') model_mgr = ModelRequestMgr() # 実行結果. playdata = BackendApi.get_event_playdata(model_mgr, eventmaster.id, self.__player0.id) if playdata.alreadykey != playdata_pre.confirmkey: raise AppTestError(u'重複確認キーが正しくない') elif BackendApi.find_scout_event( playdata, Defines.ScoutEventType.LOVETIME_STAR) is None: raise AppTestError(u'星獲得の結果が設定されていない') star_diff = playdata.star - playdata_pre.star if not (stagemaster.lovetime_star_min <= star_diff <= stagemaster.lovetime_star_max): raise AppTestError(u'星の獲得数が正しくありません')
def check(self): playerrequest = PlayerRequest.getByKey(self.__player.id) if playerrequest.req_confirmkey == self.__player.req_confirmkey: raise AppTestError(u'確認キーが更新されていない') elif playerrequest.req_alreadykey != self.__player.req_confirmkey: raise AppTestError(u'確認済みのキーが正しく設定されていない') # 秘宝. playertreasure = PlayerTreasure.getByKey(self.__player.id) cabaretking = playertreasure.get_cabaretking_num() if cabaretking == self.__treasurenum: raise AppTestError(u'キャバ王の秘宝所持数が減っていない') elif cabaretking != (self.__treasurenum - self.__trade.rate_cabaretking): raise AppTestError(u'キャバ王の秘宝所持数が正しくない') # チケット数. playergachapt = PlayerGachaPt.getByKey(self.__player.id) ticketnum = BackendApi.get_num_by_itemtype(ModelRequestMgr(), playergachapt, self.__trade.itype) if ticketnum == self.__ticketnum: raise AppTestError(u'チケットの所持数が変わっていない') elif ticketnum != (self.__ticketnum + self.__trade.itemnum): raise AppTestError(u'チケットの所持数が正しくない')
def setUp(self): model_mgr = ModelRequestMgr() # Player. self.__player0 = self.create_dummy(DummyType.PLAYER) # イベントマスター. eventmaster = self.create_dummy(DummyType.SCOUT_EVENT_MASTER) self.__eventmaster = eventmaster now = OSAUtil.get_now() # OPを閲覧済みに. flagrecord = self.create_dummy(DummyType.SCOUT_EVENT_FLAGS, self.__player0.id, self.__eventmaster.id, now) self.__flagrecord = flagrecord # イベント発生中設定. config = BackendApi.get_current_scouteventconfig(model_mgr) self.__preconfig_mid = config.mid self.__preconfig_starttime = config.starttime self.__preconfig_endtime = config.endtime BackendApi.update_scouteventconfig(self.__eventmaster.id, now, now + datetime.timedelta(days=1))
def get_data(self): model_mgr = ModelRequestMgr() eventid = self.getEventId(model_mgr) data = RaidEventConsumePoint.aggregate(eventid) if data: return data.items() else: return None
def setUp2(self): model_mgr = ModelRequestMgr() # Player. self.__player0 = self.makePlayer(1000) # イベントマスター. eventmaster = self.setUpEvent(model_mgr=model_mgr) self.__eventmaster = eventmaster # ランクのマスター. prize = self.create_dummy(DummyType.PRIZE_MASTER, gold=1000) params = { 'winprizes': [{ 'prizes': [prize.id], 'rate': 100, }], 'loseprizes': [{ 'prizes': [prize.id], 'rate': 100, }], 'battlepoint_w': 100, 'battlepoint_l': 200, 'battlepoint_lv': 10, 'battlepointreceive': 30, } eventrankmaster = self.createRankMaster(params=params) self.__eventrankmaster = eventrankmaster # オープニングを閲覧済みに. self.setOpeningViewTime(self.__player0.id) # 参加させておく. self.joinRank(self.__player0.id) # ログインしておく. self.setLoginBonusReceived(self.__player0.id) for _ in xrange(4): # 仕掛けて勝利. player = self.makePlayer(10) self.joinRank(player.id) self.battle(self.__player0, player) # 仕掛けて敗北. player = self.makePlayer(10000) self.joinRank(player.id) self.battle(self.__player0, player) # 受けて勝利. player = self.makePlayer(10) self.joinRank(player.id) self.battle(player, self.__player0) # 受けて敗北. player = self.makePlayer(10000) self.joinRank(player.id) self.battle(player, self.__player0)
def tr(): model_mgr = ModelRequestMgr() playerfriend = model_mgr.get_model(PlayerFriend, v_player.id) playerfriend.friendnum = friend_num model_mgr.set_save(playerfriend) model_mgr.write_all() return model_mgr, playerfriend
def check(self): self.checkResponseStatus() model_mgr = ModelRequestMgr() player = BackendApi.get_players(None, [self.__player.id], [PlayerRegist], model_mgr=model_mgr)[0] if player.ptype != ApiTest.CHARACTER_TYPE: raise AppTestError(u'タイプが正しくない')
def get_data(self): model_mgr = ModelRequestMgr() eventid = self.getBattleEventId(model_mgr) data = BattleEventFame.aggregate(eventid) if data: return list(data.items()) else: return None
def tr_write(self, uid, area, boss, animdata, key): """書き込み. """ model_mgr = ModelRequestMgr() # 結果書き込み. BackendApi.tr_save_bossresult(model_mgr, uid, area, boss, animdata, key) player = BackendApi.get_players(self, [uid], [PlayerAp, PlayerFriend, PlayerExp], model_mgr=model_mgr)[0] if animdata.winFlag: BackendApi.tr_area_clear(model_mgr, player, area) # 消費体力書き込み. if 0 < boss.apcost: BackendApi.tr_add_ap(model_mgr, player, -boss.apcost) model_mgr.write_all() return model_mgr
def tr_event_write(self, eventmaster, uid, stage, boss, animdata, key, write_win): """イベント書き込み. """ model_mgr = ModelRequestMgr() # 結果書き込み. BackendApi.tr_save_bossresult(model_mgr, uid, stage, boss, animdata, key) player = BackendApi.get_players(self, [uid], [PlayerAp, PlayerFriend, PlayerExp], model_mgr=model_mgr)[0] if animdata.winFlag: write_win(model_mgr, eventmaster, player, stage) # 消費体力書き込み. if 0 < boss.apcost: BackendApi.tr_add_ap(model_mgr, player, -boss.apcost) model_mgr.write_all() return model_mgr
def setUp2(self): model_mgr = ModelRequestMgr() # Player. self.__player0 = self.create_dummy(DummyType.PLAYER) # イベントマスター. eventmaster = self.setUpEvent(model_mgr=model_mgr) self.__eventmaster = eventmaster
def tr(): model_mgr = ModelRequestMgr() for ticket in tickets: if ticket.num == 0: continue print 'mid: {}, num: {} => 0'.format(ticket.mid, ticket.num) ticket.num = 0 model_mgr.set_save(ticket) model_mgr.write_all() model_mgr.write_end() return model_mgr