TestTalk.php 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2018/7/16
  6. * Time: 下午4:36
  7. */
  8. define('BASE_ROOT_PATH',str_replace('/test','',dirname(__FILE__)));
  9. require_once (BASE_ROOT_PATH . '/fooder.php');
  10. require_once(BASE_ROOT_PATH . '/helper/search/tcp_client.php');
  11. require_once(BASE_ROOT_PATH . '/helper/room/factory_client.php');
  12. require_once(BASE_ROOT_PATH . '/helper/room/proto_type.php');
  13. require_once(BASE_ROOT_PATH . '/helper/room/room_info.php');
  14. require_once(BASE_ROOT_PATH . '/helper/room/author.php');
  15. require_once(BASE_CORE_PATH . "/framework/function/http.php");
  16. require_once(BASE_ROOT_PATH . '/helper/room/util.php');
  17. class TestTalk extends PHPUnit_Framework_TestCase
  18. {
  19. public static function setUpBeforeClass()
  20. {
  21. Base::run_util();
  22. }
  23. public function testGen()
  24. {
  25. global $config;
  26. $room_id = $config['special_rooms']['shake_bonus'];
  27. $webaddr = $config['access_addr'];
  28. $uids = [39625,39653];
  29. $creator = self::shake_creator($room_id);
  30. $ret = room\factory_client::instance()->invite($room_id,$creator,$uids);
  31. foreach ($uids as $uid)
  32. {
  33. $result = [];
  34. if($ret != false) {
  35. $result['addr'] = $webaddr;
  36. $result['token'] = room\author::sign_web($room_id,$uid);
  37. $result['room'] = intval($room_id);
  38. $result['user'] = $uid;
  39. }
  40. }
  41. }
  42. static private function shake_creator($room_id)
  43. {
  44. static $stCreator = 0;
  45. if($stCreator == 0) {
  46. $mod_room = Model('room');
  47. $params = $mod_room->getRoom($room_id);
  48. $rinfo = new room\room_info($params);
  49. $stCreator = $rinfo->creator();
  50. }
  51. return $stCreator;
  52. }
  53. public function testParam(){
  54. $room_item = [ "type" => "room", "room"=> 37 ,"msg_id" => 1000];
  55. $chatwo_item = [ "type" => "chatwo", "user"=> 39234 ,"msg_id" => 0];
  56. $param[] = $room_item;
  57. $param[] = $chatwo_item;
  58. $cmp_content = base64_encode(json_encode($param));
  59. echo 0;
  60. }
  61. public function testCmptable()
  62. {
  63. $data = 'W3sidGFsa19pZCI6Mzg2NDcsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNjQ5MiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjQxMDc5LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6Mzg2NzEsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjo0MTI2NiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM4NjA2LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzY0ODcsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNzA2OCwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM2NjU4LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzcyMDUsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNjY2OSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM2NTM2LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzcyNzYsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozODYxMCwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MDg2LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzcyMTQsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNzUwNCwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM2NDI5LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzkyOTMsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNjQ4NSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM2NjU2LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6Mzc0ODgsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozOTM4NiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjQxMDU3LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6NDExNTYsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjo0MTA0OSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5Mzc1LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6NDEwMjAsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozOTE0MSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM2Njg3LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzkwNzMsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozOTI3OSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MDc4LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6NDExNjMsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNjQ5NiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MDc1LCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6NDEwMjksIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjo0MTAzMSwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MDcwLCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzkzNDIsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozOTA3MiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MDcxLCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6NDAyNjYsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjozNjQ4NiwibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5MjgwLCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6Mzg2MTIsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn0seyJ0YWxrX2lkIjo0MDk5NywibXNnX2lkIjowLCJ0YWxrX3R5cGUiOiJjaGF0d28ifSx7InRhbGtfaWQiOjM5NTAwLCJtc2dfaWQiOjAsInRhbGtfdHlwZSI6ImNoYXR3byJ9LHsidGFsa19pZCI6MzkxODcsIm1zZ19pZCI6MCwidGFsa190eXBlIjoiY2hhdHdvIn1d';
  64. $content = base64_decode($data);
  65. $val = json_decode($content,true);
  66. }
  67. public function testTalklist()
  68. {
  69. $x = http_post_data("http://a.lrlz.com/mobile/index.php",'act=member_talk&op=talks',['Client-Type: ios','Client-Version: 3.4']);
  70. $x = http_post_data("http://192.168.0.200/mobile/index.php",'act=member_talk&op=talks',['Client-Type: ios','Client-Version: 3.4']);
  71. }
  72. public function testAuthor()
  73. {
  74. $data = 'https%253A%252F%252Fpassport.lrlz.com';
  75. $val1 = urldecode($data);
  76. $val = urldecode($val1);
  77. }
  78. public function testArraySorter()
  79. {
  80. $l[1] = 'a';
  81. $l[2] = 'b';
  82. $l[3] = 'c';
  83. $l[4] = 'd';
  84. $r[4] = 'd';
  85. $r[3] = 'c';
  86. $r[2] = 'b';
  87. $r[1] = 'a';
  88. $out = fopen('php://stdout','w');
  89. foreach ($l as $key => $val) {
  90. fprintf($out, "{$key} : {$val} ");
  91. }
  92. foreach ($r as $key => $val) {
  93. fprintf($out, "{$key} : {$val} ");
  94. }
  95. }
  96. public function testRankSteps()
  97. {
  98. $from = 0;//11-05 1541347200
  99. $to = 1541952000;//11-12
  100. $mod = Model('room');
  101. $items = $mod->roomSteps(["date_stamp"=>[['gt',$from],['lt',$to]]],"*",false);
  102. $uids = [];
  103. foreach ($items as $item)
  104. {
  105. $uids[] = $item['member_id'];
  106. }
  107. $uids = array_unique($uids,SORT_NUMERIC);
  108. if(!empty($uids)) {
  109. $members = Model('member')->getMemberList(['member_id' => ['in',$uids]]);
  110. } else {
  111. $members = [];
  112. }
  113. $uid_infos = [];
  114. foreach ($members as $member) {
  115. $uinfo = new member_info($member);
  116. $user = $uinfo->member_id();
  117. $nickname = empty($member_nick[$user]) ? $uinfo->nickname() : $member_nick[$user];
  118. $item = ['avatar' => $uinfo->avatar(),'nickname' => $nickname,'userid' => $uinfo->member_id(),"steps"=> 0];
  119. $uid_infos[$user] = $item;
  120. }
  121. foreach ($items as $item)
  122. {
  123. $uid = $item['member_id'];
  124. if(array_key_exists($uid,$uid_infos))
  125. {
  126. $uid_infos[$uid]["steps"] = $uid_infos[$uid]["steps"] + $item['steps'];
  127. }
  128. }
  129. usort($uid_infos,['room\sorter','steps_desc']);
  130. echo 0;
  131. }
  132. }