src/Company/BaseBundle/Tests/Controller/DocumentControllerTest.php
author cavaliet
Thu, 20 Oct 2011 18:35:34 +0200
changeset 14 fc78844c8a76
parent 2 806e57d67020
permissions -rwxr-xr-x
debug addtag for document
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
<?php
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
namespace Company\BaseBundle\Tests\Controller;
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
class DocumentControllerTest extends WebTestCase
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
{
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
    /*
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
    public function testCompleteScenario()
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
    {
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
        // Create a new client to browse the application
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
        $client = static::createClient();
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
        // Create a new entry in the database
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
        $crawler = $client->request('GET', '/document/');
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
        $this->assertTrue(200 === $client->getResponse()->getStatusCode());
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
        $crawler = $client->click($crawler->selectLink('Create a new entry')->link());
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
        // Fill in the form and submit it
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
        $form = $crawler->selectButton('Create')->form(array(
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
            'document[field_name]'  => 'Test',
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
            // ... other fields to fill
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
        ));
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
        $client->submit($form);
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
        $crawler = $client->followRedirect();
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
        // Check data in the show view
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
        $this->assertTrue($crawler->filter('td:contains("Test")')->count() > 0);
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
        // Edit the entity
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
        $crawler = $client->click($crawler->selectLink('Edit')->link());
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
        $form = $crawler->selectButton('Edit')->form(array(
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
            'document[field_name]'  => 'Foo',
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
            // ... other fields to fill
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        ));
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
        $client->submit($form);
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
        $crawler = $client->followRedirect();
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
        // Check the element contains an attribute with value equals "Foo"
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
        $this->assertTrue($crawler->filter('[value="Foo"]')->count() > 0);
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
        // Delete the entity
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
        $client->submit($crawler->selectButton('Delete')->form());
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
        $crawler = $client->followRedirect();
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
        // Check the entity has been delete on the list
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
        $this->assertNotRegExp('/Foo/', $client->getResponse()->getContent());
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
    }
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
    */
806e57d67020 Base Bundle commit
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
}