public function testAutoUser() { $user = ['username' => 'Mehlah']; $adapter = new Rules(['rules' => ['isMehlah' => function ($user, $request, $options) { return isset($user['username']) && $user['username'] == 'Mehlah'; }], 'defaults' => ['isMehlah'], 'user' => function () use($user) { return $user; }]); $result = $adapter->check($user, null); $this->assertTrue($result); $result = $adapter->check(null, null); $this->assertTrue($result); $result = $adapter->check(['username' => 'Bob'], null); $this->assertFalse($result); $expected = ['isMehlah' => 'You are not permitted to access this area.']; $result = $adapter->error(); $this->assertEqual($expected, $result); }