Passed
Push — master ( 289a67...2a2cfd )
by
unknown
01:53
created

FieldTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 0
dl 0
loc 5
rs 9.4285
c 0
b 0
f 0
1
<?php
2
3
namespace PluginSimpleValidate\Tests\unit;
4
5
use PluginSimpleValidate\Field;
6
use PluginSimpleValidate\Libraries\Language;
7
8
class FieldTest extends Base
9
{
10
    /**
11
     * @var Language
12
     */
13
    private $language;
14
15
    public function setUp()
16
    {
17
        parent::setUp(); // TODO: Change the autogenerated stub
18
        $this->language = new Language('id');
19
    }
20
21
    public function test_construct()
22
    {
23
        $field = new Field('name', 'value');
24
        $this->assertEquals('name', $field->getName());
25
        $this->assertEquals('value', $field->getValue());
26
    }
27
28
    public function test_is_required(){
29
        $field = (new Field('username', ''))->required();
30
        $this->assertFalse($field->isValid($this->language));
31
        $this->assertEquals(['harus diisi.'], $field->getErrors());
32
    }
33
34
    public function test_is_less_than(){
35
        $field = (new Field('score', 90.90))->lessThan(90.87);
36
        $this->assertFalse($field->isValid($this->language));
37
        $this->assertEquals(['harus lebih kecil dari 90.87.'], $field->getErrors());
38
    }
39
40
    public function test_equal(){
41
        $field = (new Field('confirm_password', 'newpassword'))->equal('oldpassword');
42
        $this->assertFalse($field->isValid($this->language));
43
        $this->assertEquals(['harus memiliki nilai yang sama dengan "oldpassword".'], $field->getErrors());
44
    }
45
46
    public function test_between(){
47
        $field = (new Field('grade_b', 86))->between(79, 86);
48
        $this->assertFalse($field->isValid($this->language));
49
        $this->assertEquals(['harus lebih besar dari 79 dan lebih kecil dari 86.'], $field->getErrors());
50
    }
51
52
    public function test_field_multi_rules(){
53
        $field = (new Field('email', ''))->required()->validEmail();
54
        $this->assertFalse($field->isValid($this->language));
55
        $this->assertEquals(['harus diisi.', 'harus berisi alamat email yang valid.'], $field->getErrors());
56
    }
57
58
    public function test_is_true(){
59
        $field = (new Field('value', 5 < 4))->isTrue('comparison error');
60
        $this->assertFalse($field->isValid($this->language));
61
        $this->assertEquals(['comparison error'], $field->getErrors());
62
    }
63
}
64