/
AllTest.php
84 lines (71 loc) · 1.74 KB
/
AllTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
namespace Aura\Filter\Rule;
use Aura\Filter\AbstractRuleTest;
use Aura\Filter\RuleLocator;
class AllTest extends AbstractRuleTest
{
protected $expect_message = 'FILTER_RULE_FAILURE_IS_ALL';
protected $list = [
['alnum'],
['strlen', 4],
];
protected function newRule($data, $field)
{
$rule = parent::newRule($data, $field);
$rule->setRuleLocator(new RuleLocator([
'alnum' => function () { return new \Aura\Filter\Rule\Alnum; },
'strlen' => function () { return new \Aura\Filter\Rule\Strlen; },
]));
return $rule;
}
public function ruleIs($rule)
{
return $rule->is($this->list);
}
public function ruleIsNot($rule)
{
return $rule->isNot($this->list);
}
public function ruleIsBlankOr($rule)
{
return $rule->isBlankOr($this->list);
}
public function ruleFix($rule)
{
return $rule->fix($this->list);
}
public function ruleFixBlankOr($rule)
{
return $rule->fixBlankOr($this->list);
}
public function providerIs()
{
return [
['0123'],
['abcd'],
['01ab'],
];
}
public function providerIsNot()
{
return [
['1234abcd'],
["Seven 8 nine"],
["non:alpha-numeric's"],
[[]],
["something @ somewhere.edu"],
["the-name.for!you"],
["non:alpha@example.com"],
[""],
["\t\n"],
[" "],
];
}
public function providerFix()
{
// can't fix on "all" rule combinations
return [
['$#% abc () 123 ,./', false, '$#% abc () 123 ,./'],
];
}
}