You are here

Html5Test.php in Zircon Profile 8

File

vendor/behat/mink/driver-testsuite/tests/Form/Html5Test.php
View source
<?php

namespace Behat\Mink\Tests\Driver\Form;

use Behat\Mink\Tests\Driver\TestCase;
class Html5Test extends TestCase {
  public function testHtml5FormInputAttribute() {
    $this
      ->getSession()
      ->visit($this
      ->pathTo('/html5_form.html'));
    $page = $this
      ->getSession()
      ->getPage();
    $webAssert = $this
      ->getAssertSession();
    $firstName = $webAssert
      ->fieldExists('first_name');
    $lastName = $webAssert
      ->fieldExists('last_name');
    $this
      ->assertEquals('not set', $lastName
      ->getValue());
    $firstName
      ->setValue('John');
    $lastName
      ->setValue('Doe');
    $this
      ->assertEquals('Doe', $lastName
      ->getValue());
    $page
      ->pressButton('Submit in form');
    if ($this
      ->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
      $out = <<<OUT
  'first_name' = 'John',
  'last_name' = 'Doe',
OUT;
      $this
        ->assertContains($out, $page
        ->getContent());
      $this
        ->assertNotContains('other_field', $page
        ->getContent());
    }
  }
  public function testHtml5FormRadioAttribute() {
    $this
      ->getSession()
      ->visit($this
      ->pathTo('html5_radio.html'));
    $page = $this
      ->getSession()
      ->getPage();
    $radio = $this
      ->findById('sex_f');
    $otherRadio = $this
      ->findById('sex_invalid');
    $this
      ->assertEquals('f', $radio
      ->getValue());
    $this
      ->assertEquals('invalid', $otherRadio
      ->getValue());
    $radio
      ->selectOption('m');
    $this
      ->assertEquals('m', $radio
      ->getValue());
    $this
      ->assertEquals('invalid', $otherRadio
      ->getValue());
    $page
      ->pressButton('Submit in form');
    $out = <<<OUT
  'sex' = 'm',
OUT;
    $this
      ->assertContains($out, $page
      ->getContent());
  }
  public function testHtml5FormButtonAttribute() {
    $this
      ->getSession()
      ->visit($this
      ->pathTo('/html5_form.html'));
    $page = $this
      ->getSession()
      ->getPage();
    $webAssert = $this
      ->getAssertSession();
    $firstName = $webAssert
      ->fieldExists('first_name');
    $lastName = $webAssert
      ->fieldExists('last_name');
    $firstName
      ->setValue('John');
    $lastName
      ->setValue('Doe');
    $page
      ->pressButton('Submit outside form');
    if ($this
      ->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
      $out = <<<OUT
  'first_name' = 'John',
  'last_name' = 'Doe',
  'submit_button' = 'test',
OUT;
      $this
        ->assertContains($out, $page
        ->getContent());
    }
  }
  public function testHtml5FormOutside() {
    $this
      ->getSession()
      ->visit($this
      ->pathTo('/html5_form.html'));
    $page = $this
      ->getSession()
      ->getPage();
    $page
      ->fillField('other_field', 'hello');
    $page
      ->pressButton('Submit separate form');
    if ($this
      ->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
      $out = <<<OUT
  'other_field' = 'hello',
OUT;
      $this
        ->assertContains($out, $page
        ->getContent());
      $this
        ->assertNotContains('first_name', $page
        ->getContent());
    }
  }
  public function testHtml5Types() {
    $this
      ->getSession()
      ->visit($this
      ->pathTo('html5_types.html'));
    $page = $this
      ->getSession()
      ->getPage();
    $page
      ->fillField('url', 'http://mink.behat.org/');
    $page
      ->fillField('email', 'mink@example.org');
    $page
      ->fillField('number', '6');
    $page
      ->fillField('search', 'mink');
    $page
      ->fillField('date', '2014-05-19');
    $page
      ->fillField('color', '#ff00aa');
    $page
      ->pressButton('Submit');
    $out = <<<OUT
  'color' = '#ff00aa',
  'date' = '2014-05-19',
  'email' = 'mink@example.org',
  'number' = '6',
  'search' = 'mink',
  'submit_button' = 'Submit',
  'url' = 'http://mink.behat.org/',
OUT;
    $this
      ->assertContains($out, $page
      ->getContent());
  }

}

Classes

Namesort descending Description
Html5Test