mirror of
https://github.com/elyby/accounts.git
synced 2025-05-31 14:11:46 +05:30
Написан тест для поведения beforeSave модели EmailActivation
This commit is contained in:
@ -28,4 +28,30 @@ class EmailActivationTest extends DbTestCase {
|
||||
});
|
||||
}
|
||||
|
||||
public function testBeforeSave() {
|
||||
$this->specify('method should generate value for key field if it empty', function() {
|
||||
$model = new EmailActivation();
|
||||
$model->beforeSave(true);
|
||||
expect($model->key)->notNull();
|
||||
});
|
||||
|
||||
$this->specify('method should repeat code generation if code duplicate with exists', function() {
|
||||
/** @var EmailActivation|\PHPUnit_Framework_MockObject_MockObject $model */
|
||||
$model = $this->getMockBuilder(EmailActivation::class)
|
||||
->setMethods(['generateKey', 'isKeyExists'])
|
||||
->getMock();
|
||||
|
||||
$model->expects($this->exactly(3))
|
||||
->method('generateKey')
|
||||
->will($this->onConsecutiveCalls('1', '2', '3'));
|
||||
|
||||
$model->expects($this->exactly(3))
|
||||
->method('isKeyExists')
|
||||
->will($this->onConsecutiveCalls(true, true, false));
|
||||
|
||||
$model->beforeSave(true);
|
||||
expect($model->key)->equals('3');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user