hautelook/alice-bundle

Symfony2 Bundle that helps loading fixture data written with the Alice library

Installs: 200 013

Dependents: 13

Stars: 104

Watchers: 31

Forks: 21

Open Issues: 16

Language: PHP

0.2 2014-10-19 05:10 UTC

README

A Symfony2 bundle to help load Doctrine Fixtures with Alice

Build Status Scrutinizer Quality Score Code Coverage SensioLabsInsight

Introduction

This bundle provides a new loader as well as an abstract DataFixureLoader that makes it easy for you to add fixtures to your bundles. Additionally, the loader shares the references to your fixtures among your bundles, so that you can use them there. Refer to the Alice documentation for more information.

And if you prefer watching, a screencast about using this bundle is also available: https://knpuniversity.com/screencast/alice-fixtures

Installation

Simply run assuming you have installed composer.phar or composer binary (or add to your composer.json and run composer install:

$ composer require hautelook/alice-bundle

You can follow dev-master, or use a more stable tag (recommended for various reasons). On the Github repository, or on Packagist, you can always find the latest tag. It is very likely that you have a stable stability setting in your composer file which will prevent some of the required packages from being installed. To get around this, you will have to install the two required packages as well:

$ composer.phar require "doctrine/data-fixtures dev-master"
$ composer.phar require "doctrine/doctrine-fixtures-bundle 2.2.*"
$ composer.phar require "hautelook/alice-bundle 0.1.*"

Now add the Bundle to your Kernel:

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(),
        new Hautelook\AliceBundle\HautelookAliceBundle(),
        // ...
    );
}

Configuration

You can configure the Seed, and the Locale that the Faker will use:

# app/config/config.yml

hautelook_alice:
    locale: en_US   # default
    seed: 1         # default

Usage

Simply add a loader class in your bundle, and extend the DataFixtureLoader class. Example

<?php

namespace AppBundle\DataFixtures\ORM;

use Hautelook\AliceBundle\Alice\DataFixtureLoader;

class TestLoader extends DataFixtureLoader
{
    /**
     * {@inheritdoc}
     */
    protected function getFixtures()
    {
        return  array(
            __DIR__ . '/test.yml',
        );
    }
}

Future and ToDos:

  • Unit and functional tests
  • Clean up composer dev dependencies