/**
  * 生成ack响应供测试程序使用
  * @return ack响应集供test case选择
  */
 private function _gen_ack_response($subject)
 {
     $ack = new BStompAckFrame();
     $ack->status = BStompIdAckType::TOPIC_ID;
     $ack->ack_type = BStompFrameType::ACK;
     $ack->session_message_id = TestUtilities::get_private_var($subject, '_session_msg_id') + 1;
     $this->assertFalse(false === $ack->session_message_id);
     $ack->topic_message_id = 369;
     $ack->global_message_id = 7659;
     $ack->delay_time = 0;
     $ack->destination = 'unknown';
     $ack->receipt_id = 'fake-receipt-id';
     $ack->store();
     $good_ack = $ack->buffer();
     $orig_smid = $ack->session_message_id;
     $ack->session_message_id = $orig_smid + 10;
     $ack->store();
     $bad_session = $ack->buffer();
     $ack->session_message_id = $orig_smid;
     $ack->receipt_id = BigpipeUtilities::get_uid();
     $ack->store();
     $bad_receipt = $ack->buffer();
     $res_arr = array('good' => $good_ack, 'bad_session' => $bad_session, 'bad_receipt' => $bad_receipt, 'error_body' => 'error');
     return $res_arr;
 }