同じ引数(user_id)を取るメソッドはほとんどありません。これらのメソッドでは、渡された引数が有効な 8 つの数字の整数であることをテストします。渡された引数の検証をテストするためにテストをグループ化(?)する可能性はありますか?
Class Hello{
public function test($user_id=0){
if (!preg_match('/^[0-9]{8}$/', $user_id)) return false;
do stuff...
}
public function make($user_id=0){
if (!preg_match('/^[0-9]{8}$/', $user_id)) return false;
do stuff...
}
public function find($user_id=0){
if (!preg_match('/^[0-9]{8}$/', $user_id)) return false;
do stuff...
}
}
およびテストファイル:
class HelloTest extends PHPUnit_Framework_TestCase {
//Looking for something simpler to replace that:
// zwraca FALSE jesli dlugosc inna niz 8 znakow
$this->assertFalse(Hello::test('1'), 'Dlugosc user_id musi byc 8 znakow, nie 1.');
$this->assertFalse(Hello::test(0), 'Dlugosc user_id musi byc 8 znakow, nie 1 (zero).');
$this->assertFalse(Hello::test('7777777'), 'Dlugosc user_id musi byc 8 znakow, nie 7.');
$this->assertFalse(Hello::make('1'), 'Dlugosc user_id musi byc 8 znakow, nie 1.');
$this->assertFalse(Hello::make(0), 'Dlugosc user_id musi byc 8 znakow, nie 1 (zero).');
$this->assertFalse(Hello::make('7777777'), 'Dlugosc user_id musi byc 8 znakow, nie 7.');
$this->assertFalse(Hello::find('1'), 'Dlugosc user_id musi byc 8 znakow, nie 1.');
$this->assertFalse(Hello::find(0), 'Dlugosc user_id musi byc 8 znakow, nie 1 (zero).');
$this->assertFalse(Hello::find('7777777'), 'Dlugosc user_id musi byc 8 znakow, nie 7.');
}