Completed
Pull Request — master (#28)
by Vitaliy
03:13
created

SelectTest::testRendering()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 11
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 11
rs 9.4285
cc 1
eloc 9
nc 1
nop 0
1
<?php
2
3
4
  namespace Tests\Fiv\Form\Element;
5
6
7
  use Fiv\Form\Element\Select;
8
  use Fiv\Form\RequestContext;
9
  
10
  /**
11
   *
12
   */
13
  class SelectTest extends \PHPUnit_Framework_TestCase {
14
15
    /**
16
     *
17
     */
18
    public function testRendering() {
19
      $select = new Select();
20
      $select->setName('lang');
21
      $select->setOptions(['ru' => 'Russian', 'ua' => 'Ukrainian']);
22
23
      $selectHtml = $select->render();
24
      $this->assertContains('<select name="lang" ', $selectHtml);
25
      $this->assertContains('<option value="ru">Russian</option>', $selectHtml);
26
      $this->assertContains('<option value="ua">Ukrainian</option>', $selectHtml);
27
      $this->assertContains('</select>', $selectHtml);
28
    }
29
30
31
    /**
32
     *
33
     */
34
    public function testHandleRequest() {
35
      $select = new Select();
36
      $select->setName('lang');
37
      $select->setOptions(['ru' => 'Russian', 'ua' => 'Ukrainian']);
38
39
      $select->handleRequestContext(new RequestContext('post', ['lang' => 'ru']));
40
      $this->assertEquals('ru', $select->getValue());
41
      $select->handleRequestContext(new RequestContext('post', []));
42
      $this->assertNull($select->getValue());
43
    }
44
  }