/** * @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]); } }