TestDatabase.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2017/1/31
  6. * Time: 上午11:28
  7. */
  8. define('BASE_ROOT_PATH',str_replace('/test','',dirname(__FILE__)));
  9. define('MOBILE_SERVER',true);
  10. require_once(BASE_ROOT_PATH . '/fooder.php');
  11. class TestDatabase extends PHPUnit_Framework_TestCase
  12. {
  13. public static function setUpBeforeClass()
  14. {
  15. Base::run_util();
  16. }
  17. public function testUrl()
  18. {
  19. $url = urlShop('store_goods_online', 'edit_save_goods');
  20. }
  21. public function testTranslog()
  22. {
  23. }
  24. public function testSyscount()
  25. {
  26. $bonus_type = Model('bonus_type');
  27. $result = $bonus_type->field('*')->where(['send_start_date' => ['between',[1495592858,1495601456]]])->limit(false)->select();
  28. }
  29. public function testCount()
  30. {
  31. $mod_member = Model('member');
  32. $num = $mod_member->count();
  33. }
  34. public function testQuery()
  35. {
  36. $mobile = '18911779278';
  37. $sql = "select * from lrlz_member where member_mobile='{$mobile}'";
  38. $items = Db::getAll($sql);
  39. }
  40. public static function tearDownAfterClass()
  41. {
  42. }
  43. public function testModel()
  44. {
  45. $result = Model()->table('config')->select();
  46. $y = Model('member');
  47. $start = microtime(true);
  48. for ($i = 0; $i < 100; ++$i) {
  49. $member1 = Model('member');
  50. }
  51. $t = $member1;
  52. $period = microtime(true) - $start;
  53. $x = sprintf("%.6f",$period);
  54. echo $period;
  55. }
  56. public function testTransaction()
  57. {
  58. try
  59. {
  60. $mod_member = Model('member');
  61. $trans = new trans_wapper(null,__METHOD__);
  62. $mod_member->where(array('member_id' => 36490))->update(array('member_name' => '江南舟子F2'));
  63. $affect_rows_a = $mod_member->affected_rows();
  64. $trans->commit();
  65. throw new Exception("xxxx");
  66. }
  67. catch (Exception $ex) {
  68. $trans->rollback();
  69. }
  70. }
  71. public function testMaster()
  72. {
  73. $mod_member = Model('member');
  74. //$items = $mod_member->where(array('member_mobile' => '18911779278'))->limit(false)->select(array('lock' => true));
  75. $item = $mod_member->where(array('member_mobile' => '18911779278'))->find(array('lock' => true));
  76. }
  77. public function testConnection()
  78. {
  79. $mysql = @new mysqli('192.168.1.205', 'root', '55668899', 'pandashop', '3306');
  80. }
  81. public function testConnectionhost()
  82. {
  83. $mysql = @new mysqli('192.168.1.103', 'root', '55668899', 'pandashop', '3306');
  84. }
  85. public function testTableInfo()
  86. {
  87. $mod_member = Model('member');
  88. $iterm = $mod_member->tableInfo('memble');
  89. $mod_member = Model();
  90. $iterm = $mod_member->tableInfo('memble');
  91. }
  92. public function testNull()
  93. {
  94. $x = intval(null);
  95. }
  96. public function testUpdate()
  97. {
  98. $mod_member = Model('member');
  99. $data = array(
  100. 'member_mobile' => '15512468630'
  101. );
  102. $mod_member->where(array('member_id'=>1))->update($data);
  103. $mod_member->execute('UPDATE `lrlz_member` SET member_mobile=\'15512468638\' WHERE ( member_id = \'1\' )');
  104. }
  105. public function testInsert()
  106. {
  107. $mod_member = Model('member');
  108. $data = array(
  109. 'member_mobile' => '18330118841'
  110. );
  111. $ret = $mod_member->insert($data);
  112. }
  113. public function testInsertAll()
  114. {
  115. $mod_member = Model('member');
  116. $data = array(
  117. array(
  118. 'member_mobile'=>'18330118840'
  119. ),
  120. array(
  121. 'member_mobile'=>'18330118839'
  122. )
  123. );
  124. $mod_member->insertAll($data);
  125. }
  126. public function testDelete()
  127. {
  128. $mod_member = Model('member');
  129. $mod_member->where(array('member_mobile'=>'18330118841'))->delete();
  130. }
  131. public function testSelect()
  132. {
  133. $mod_member = Model('member');
  134. $iterm = $mod_member->where(array('member_mobile' => '15512468630'))->select();
  135. }
  136. public function testFind()
  137. {
  138. $mod_member = Model('member');
  139. $iterm = $mod_member->where(array('member_mobile' => '15512468630'))->find();
  140. }
  141. public function testLimit()
  142. {
  143. $mod_member = Model('member');
  144. $iterm = $mod_member->limit(4)->select();
  145. }
  146. public function testTable()
  147. {
  148. $mod_member = Model();
  149. $iterm = $mod_member->table('member')->limit(4)->where(array('member_mobile'=>'15512468630'))->select();
  150. }
  151. public function testJoin()
  152. {
  153. $mod_member = Model();
  154. $on = 'member.member_id=member_common.member_id';
  155. $iterm = $mod_member->table('member,member_common')->join('inner')->on($on)->limit(2)->select();
  156. }
  157. public function testOrder()
  158. {
  159. $mod_member = Model();
  160. $iterm = $mod_member->field('member_id,member_sex')->table('member')->order('member_id desc')->limit(50)->select();
  161. $itermb = $mod_member->field('member_id,member_sex')->table('member')->order('member_id desc,member_sex asc')->limit(50)->select();
  162. }
  163. public function testxCount()
  164. {
  165. $mod_member = Model('member');
  166. $num = $mod_member->count();
  167. $num_big = $mod_member->where('member_id>15')->count();
  168. }
  169. public function testPage()
  170. {
  171. $mod_member = Model('member');
  172. //$reta = $mod_member->page(10)->order('member_id desc')->select();
  173. $retb = $mod_member->page(10, 100)->order('member_id desc')->select();
  174. // $retc = $mod_member->page(10)->where('member_id=1')->select();
  175. // $retd = $mod_member->where('member_id=1')->page(10)->select();
  176. }
  177. public function testGroup()
  178. {
  179. $mod_member = Model('member');
  180. $result = $mod_member->field('member_id,member_login_num,count(*)as count')->group('member_login_num')->select();
  181. }
  182. public function testHaving()
  183. {
  184. //$mod_goods = Model('goods');
  185. //$result = $mod_goods->field('store_id,count(*) as nc_count')->group('store_id')->having('nc_count>500')->select();
  186. $mod_member = Model('member');
  187. $result = $mod_member->field('member_id,member_login_num,count(*)as count')->group('member_login_num')->select();
  188. $result = $mod_member->field('member_id,member_login_num,count(*)as count')->group('member_login_num')->having('count>500')->select();
  189. }
  190. public function testQuerya()
  191. {
  192. $mod_member = Model('member');
  193. Model()->query('SELECT * FROM `shopnc_member` LIMIT 10');
  194. Model()->execute('UPDATE `shopnc_member` SET member_mobile=18330118841 WHERE member_id=1');
  195. $mod_member = Model();
  196. $mod_member->query('SELECT * FROM `shopnc_member` LIMIT 10');
  197. }
  198. public function testSum()
  199. {
  200. $mod_goods = Model();
  201. $mod_goods->table('goods')->sum('price');
  202. }
  203. public function testSetInc()
  204. {
  205. $mod_member = Model('member');
  206. $ret = $mod_member->where('member_id=2')->setInc('member_id', 1000);
  207. $retb = $mod_member->where(array('member_id=2'))->setInc('member_id', 1000);
  208. }
  209. public function testGetby_member_name()
  210. {
  211. $mod_member = Model('member');
  212. $ret = $mod_member->getby_member_name('江海苗');
  213. }
  214. public function testAttr()
  215. {
  216. $model = Model('goods');
  217. $ret = $model->where(array('goods_id' => 100))->attr('LOW_PRIORITY');
  218. $ret = $model->update(array('goods_click' =>array('exp','goods_click+1')));
  219. }
  220. public function testAutoCommit()
  221. {
  222. $model = Model('member');
  223. while (true)
  224. {
  225. $model->beginTransaction();
  226. $ret = $model->where(array('member_id' => 10000000))->update(array('member_mobilex' => '18911779278'));
  227. $affect_rows = $model->affected_rows();
  228. $model->beginTransaction();
  229. $ret = $model->where(array('member_id' => 36490))->update(array('member_mobile' => '18911779279'));
  230. $affect_rows = $model->affected_rows();
  231. $model->commit();
  232. }
  233. }
  234. public function testMessage()
  235. {
  236. $mod_message = Model('message');
  237. //INSERT INTO `lrlz_message` (`message_parent_id`,`from_member_id`,`from_member_name`,
  238. //`to_member_id`,`to_member_name`,`message_body`,
  239. //`message_time`,
  240. //`message_update_time`,`message_type`,`message_ismore`,
  241. //`read_member_id`,`del_member_id`)
  242. // VALUES('0','0','',
  243. //'36646','','你的账户于 2017-05-12 09:02:52 账户资金有变化,描述:领取红包,红包单号: 14281494512386767010 make_type=2,可用金额变化 :4.30元,冻结金额变化:0.00元。<a href=\"http://p.lrlz.com/shop/index.php?act=predeposit&op=pd_log_list\" target=\"_blank\">点击查看余额</a>',
  244. //'1494550972',
  245. //'1494550972','1','0',
  246. //'','')
  247. $data = ['message_parent_id' => 0,
  248. 'from_member_id' => 0,
  249. 'from_member_name' => '',
  250. 'to_member_name' => '',
  251. 'msg_content' => '你的账户于 2017-05-12 09:02:52 账户资金有变化,描述:领取红包,红包单号: 14281494512386767010 make_type=2,可用金额变化 :4.30元,冻结金额变化:0.00元。<a href=\"http://p.lrlz.com/shop/index.php?act=predeposit&op=pd_log_list\" target=\"_blank\">点击查看余额</a>',
  252. 'message_time' => time(),
  253. 'message_update_time' => time(),
  254. 'message_type' => 1,
  255. 'message_ismore' => 0,
  256. 'read_member_id' => '',
  257. 'del_member_id' => '',
  258. ];
  259. for ($i = 0; $i < 1000000; $i++) {
  260. $data['member_id'] = mt_rand(10000,100000);
  261. $insert_id = $mod_message->saveMessage($data);
  262. Log::record("id = {$insert_id}",Log::DEBUG);
  263. }
  264. }
  265. public function testGoods()
  266. {
  267. global $config;
  268. $exbrands = $config['exclude_brands'];
  269. $mod_goods = Model('goods');
  270. if(!empty($exbrands)) {
  271. $items = $mod_goods->getGoodsOnlineList(['brand_id' => ['not in',$exbrands]],'*',0,'goods_id desc',false);
  272. } else {
  273. }
  274. }
  275. }