Esempio n. 1
0
 /**
  * @return \yii\web\Response
  */
 public function actionMove()
 {
     $model = new RedisItem();
     $model->scenario = 'move';
     if ($model->load(\Yii::$app->request->post()) && $model->validate()) {
         $model->move();
         \Yii::$app->session->setFlash('success', Redisman::t('redisman', 'Key moved from Db№ {from} to {to}', ['from' => $this->module->getCurrentDb(), 'to' => $model->db]));
     } else {
         \Yii::$app->session->setFlash('error', Html::errorSummary($model, ['encode' => true]));
     }
     return $this->redirect(Url::to(['/redisman/default/show']));
 }
 public function testStressMove()
 {
     $this->module->setConnection('local', 1);
     $keys = $this->module->executeCommand('KEYS', ['stress:*']);
     $this->module->setConnection('local', 3);
     foreach ($keys as $key) {
         $this->assertEquals(0, $this->module->executeCommand('EXISTS', [$key]));
     }
     $this->module->setConnection('local', 1);
     foreach ($keys as $key) {
         $model = new RedisItem();
         $model->setAttributes(['key' => $key, 'db' => 3]);
         $model->scenario = 'move';
         $this->assertTrue($model->validate());
         $model->move();
         $this->assertEquals(0, $this->module->executeCommand('EXISTS', [$key]));
     }
     $this->module->setConnection('local', 3);
     foreach ($keys as $key) {
         $this->assertEquals(1, $this->module->executeCommand('EXISTS', [$key]));
         $this->module->executeCommand('DEL', [$key]);
     }
 }