form = new LoginForm(); } public function testLoginAndPasswordAreRequired(): void { $rules = $this->form->rules(); $requiredRule = null; foreach ($rules as $rule) { if ($rule[1] === 'required') { $requiredRule = $rule[0]; break; } } $this->assertNotNull($requiredRule); $this->assertContains('login', $requiredRule); $this->assertContains('password', $requiredRule); } public function testRememberMeIsBoolean(): void { $rules = $this->form->rules(); $hasBooleanRule = false; foreach ($rules as $rule) { if ($rule[1] === 'boolean' && in_array('rememberMe', (array) $rule[0])) { $hasBooleanRule = true; break; } } $this->assertTrue($hasBooleanRule); } public function testRulesArrayStructure(): void { $rules = $this->form->rules(); $this->assertIsArray($rules); $this->assertNotEmpty($rules); foreach ($rules as $rule) { $this->assertIsArray($rule); $this->assertArrayHasKey(0, $rule); $this->assertArrayHasKey(1, $rule); } } }