#!/usr/bin/env php
<?php
$cwd = getcwd();

if (is_file($autoload = $cwd . '/vendor/autoload.php')) {
    require $autoload;
} else {
    fwrite(STDERR,
        'You must set up the project dependencies, run the following commands:' . PHP_EOL .
        'curl -s http://getcomposer.org/installer | php' . PHP_EOL .
        'php composer.phar install' . PHP_EOL
    );
    exit(1);
}

try {
    if (!empty($argv[1])) {
        $bongoConfigurationFile = $argv[1];
    } else {
        $bongoConfigurationFile = $cwd . "/config/bongo.yml";
        fwrite(STDOUT, "No configuration file provided. Loading Default." . PHP_EOL);
    }

    if (!file_exists($bongoConfigurationFile)) {
        fwrite(STDERR,
            sprintf("Warning, file %s doesn't exists" . PHP_EOL, $bongoConfigurationFile)
        );
        exit(1);
    }


    $fixtureLoader = Bones\Component\Fixture\FixtureLoader::factoryMongoFixtureLoader(
        $bongoConfigurationFile
    );

    $fixtureLoader->addFixturesFromConfiguration($bongoConfigurationFile, $cwd);
    $fixtureLoader->persistLoadedFixtures();

    $fixtureLoader->dumpMessages();

} Catch(\Exception $e) {
    fwrite(STDERR,
       "Error: " . $e->getMessage() . PHP_EOL
    );
    exit(1);
}
