beberlei / acme-pizza
Installs: 354
Dependents: 0
Suggesters: 0
Security: 0
Stars: 131
Watchers: 6
Forks: 27
Open Issues: 4
Type:symfony-bundle
Requires
- php: >=5.3.2
- symfony/symfony: >=2.0
This package is auto-updated.
Last update: 2024-12-12 04:33:33 UTC
README
This is a test-bundle for the experimental form support.
It is very early status and will be finalized as a demo example over the weekend.
Distribution: Best used with Symfony Standard Edition
Requirements
Symfony(https://github.com/symfony/symfony) obviously.
Installation
Add the deps for the needed bundles
[AcmePizzaBundle] git=https://github.com/beberlei/AcmePizzaBundle.git target=/bundles/Acme/PizzaBundle [doctrine-fixtures] git=http://github.com/doctrine/data-fixtures.git [DoctrineFixturesBundle] git=http://github.com/symfony/DoctrineFixturesBundle.git target=/bundles/Symfony/Bundle/DoctrineFixturesBundle
Next, run the vendors script to download the bundles:
$ php bin/vendors install
Add to autoload.php
$loader->registerNamespaces(array( 'Acme' => __DIR__.'/../vendor/bundles', // ...
Register AcmePizzaBundle to Kernel
<?php # app/AppKernel.php //... $bundles = array( //... new Acme\PizzaBundle\AcmePizzaBundle(), ); //...
Create database and schema
$ php app/console doctrine:database:create $ php app/console doctrine:schema:create
Enable routing configuration
# app/config/routing.yml AcmePizzaBundle: resource: "@AcmePizzaBundle/Controller/" type: annotation prefix: /acme-pizza
Refresh asset folder
$ php app/console assets:install web/
Data fixtures (optional)
First, make sure that your db parameters are correctly set in app/config/parameters.ini
.
You'll need to install Doctrine Data Fixtures
(don't forget to add the
path to AppKernel.php
) and then run:
$ php app/console doctrine:fixtures:load
You can read about install instructions in the Symfony2 Cookbook(http://symfony.com/doc/2.0/cookbook/doctrine/doctrine_fixtures.html#setup-and-configuration)
Usage
Go to app_dev.php/acme-pizza/pizza/list
and start selling pizzas.
Testing
You can launch functional tests with Selenium RC server running with the following steps:
- download selenium server
- edit
app/phpunit.xml.dist
:- add php's server variable to match your configuration
- add the selenium's browser configuration. I added Google Chrome Portable because it's faster than ie or even firefox.
app/phpunit.xml.dist
# app/phpunit.xml.dist <!-- ... --> <php> <server name = "KERNEL_DIR" value = "/var/www/AcmePizza/app/" /> <server name = "HTTP_HOST" value = "localhost" /> <server name = "SCRIPT_NAME" value = "/AcmePizza/web/app_dev.php" /> </php> <!-- ... --> <!-- ... --> <selenium> <browser name = "Google Chrome Portable" browser = "*custom c:\bin\GoogleChromePortable\GoogleChromePortable.exe -disable-popup-blocking -proxy-server=127.0.0.1:4444" host = "127.0.0.1" /> <!-- ip of selenium RC server --> </selenium> <!-- ... -->
Now you can run test (assuming that Selenium RC is running java -jar selenium-server-standalone-2.2.0.jar
)
with phpunit -c app/ src/Acme/PizzaBundle/Tests/
If you want you can submit other missing tests.