Passed
Push — master ( f9ae12...289a67 )
by
unknown
02:11
created

FieldTest   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Importance

Changes 0
Metric Value
dl 0
loc 50
rs 10
c 0
b 0
f 0
wmc 7
lcom 1
cbo 3

7 Methods

Rating   Name   Duplication   Size   Complexity  
A setUp() 0 5 1
A test_construct() 0 6 1
A test_is_required() 0 5 1
A test_is_less_than() 0 5 1
A test_equal() 0 5 1
A test_between() 0 5 1
A test_field_multi_rules() 0 5 1
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