Passed
Push — master ( 16e851...25995c )
by Daniel
09:34
created

SingleLookupFieldTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 19
dl 0
loc 32
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testValueFromSource() 0 14 1
A testValueNotFromSource() 0 14 1
1
<?php
2
3
namespace SilverStripe\Forms\Tests;
4
5
use SilverStripe\Forms\SingleLookupField;
6
use SilverStripe\Dev\SapphireTest;
7
use SilverStripe\Forms\DropdownField;
8
9
/**
10
 * Class SingleLookupFieldTest
11
 *
12
 * @package SilverStripe\Forms\Tests
13
 */
14
class SingleLookupFieldTest extends SapphireTest
15
{
16
    public function testValueFromSource()
17
    {
18
        /** @var SingleLookupField $testField */
19
        $testField = DropdownField::create(
20
            'FirstName',
21
            'FirstName',
22
            ['member1' => 'Member 1', 'member2' => 'Member 2', 'member3' => 'Member 3']
23
        )->performReadonlyTransformation();
24
25
        $this->assertInstanceOf(SingleLookupField::class, $testField);
26
27
        $testField->setValue('member1');
28
        preg_match('/Member 1/', $testField->Field(), $matches);
29
        $this->assertEquals($matches[0], 'Member 1');
30
    }
31
32
    public function testValueNotFromSource()
33
    {
34
        /** @var SingleLookupField $testField */
35
        $testField = DropdownField::create(
36
            'FirstName',
37
            'FirstName',
38
            ['member1' => 'Member 1', 'member2' => 'Member 2', 'member3' => 'Member 3']
39
        )->performReadonlyTransformation();
40
41
        $this->assertInstanceOf(SingleLookupField::class, $testField);
42
43
        $testField->setValue('member123');
44
        preg_match('/\(none\)/', $testField->Field(), $matches);
45
        $this->assertEquals($matches[0], '(none)');
46
    }
47
}
48