def run_case(self, app, case): """ Method: run_case Description: 运行一个用例 Parameter: case: 一个用例, instance of ALECase Return: 0: 成功 非0: 失败 Others: """ tracelog.info("run case %s..." % str(case)) ret = self.find_case_entity(case) if ret != 0: return -1 case.case_entity frame = bf.AppFrame() frame.set_cmd_code(case.case_entity.get_cmd_code()) frame.add_data(case.case_entity.gen_request()) frame.set_receiver_pid(app.get_pid("AleGate")) ack_frames = bf.rpc_request(frame, case.case_entity.get_timeout()) if len(ack_frames) == 0: tracelog.error("wait for response timeout. case:%s" % str(case)) else: case.case_entity.handle_ack(ack_frames[0].get_data()) return 0
def wx_access(): wx_msg = request.body.read() print "req from WX: %s" % wx_msg frame = bf.AppFrame() frame.set_cmd_code(cmd_code_def.WX_ACCESS_HTTP_POST_FORWARD) frame.set_receiver_pid(app.get_pid("WXGateApp")) content = msg_params_def.CommonContentReq() content.init_all_attr() content.user_session = '' content.content = wx_msg frame.add_data(content.serialize()) ack_frame = bf.rpc_request(frame, 5) buf = ack_frame[0].get_data() rpl = msg_params_def.CommonContentRsp.deserialize(buf) print 'ack from cloud: %s' % rpl return rpl.content
def __init_NE_info(self): """ Method: __init_NE_info Description: 初始化所有的网元信息 Parameter: 无 Return: Others: """ # 从IMCDeviceMgr查询EAU ID和PID frame = bf.AppFrame() frame.set_cmd_code(cmd_code_def.CMD_QUERY_NE_ID_PID) frame.set_receiver_pid(self.get_pid("IMCDeviceMgr")) reponses = bf.rpc_request(frame, 5) if len(reponses) == 0: tracelog.error("query NE information from IMCDeviceMgr timeout.") return -1 ret = self.on_NE_cfg_change(reponses[0]) return ret