mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-18 15:33:15 +00:00
Merge pull request #511 from romainneutron/developers
[3.8] Developers API
This commit is contained in:
@@ -54,8 +54,8 @@ php:
|
|||||||
- 5.5
|
- 5.5
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- bin/setup system:upgrade -y -v -f
|
|
||||||
- bin/developer dependencies:all --prefer-source
|
- bin/developer dependencies:all --prefer-source
|
||||||
|
- bin/setup system:upgrade -y -v -f
|
||||||
- php hudson/cleanupSubdefs.php
|
- php hudson/cleanupSubdefs.php
|
||||||
- bin/developer assets:compile-less
|
- bin/developer assets:compile-less
|
||||||
- bin/developer assets:build-javascript
|
- bin/developer assets:build-javascript
|
||||||
|
@@ -57,14 +57,16 @@ try {
|
|||||||
under certain conditions; type `about:license' for details.\n\n"
|
under certain conditions; type `about:license' for details.\n\n"
|
||||||
. ' Phraseanet Developer Tools ', Version::getName() . ' ' . Version::getNumber());
|
. ' Phraseanet Developer Tools ', Version::getName() . ' ' . Version::getNumber());
|
||||||
|
|
||||||
$helpers = array(
|
if ($cli['phraseanet.configuration']->isSetup()) {
|
||||||
'db' => new ConnectionHelper($cli['EM']->getConnection()),
|
$helpers = array(
|
||||||
'em' => new EntityManagerHelper($cli['EM'])
|
'db' => new ConnectionHelper($cli['EM']->getConnection()),
|
||||||
);
|
'em' => new EntityManagerHelper($cli['EM'])
|
||||||
|
);
|
||||||
|
|
||||||
$helperSet = $cli['console']->getHelperSet();
|
$helperSet = $cli['console']->getHelperSet();
|
||||||
foreach ($helpers as $name => $helper) {
|
foreach ($helpers as $name => $helper) {
|
||||||
$helperSet->set($helper, $name);
|
$helperSet->set($helper, $name);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$cli->command(new InstallAll());
|
$cli->command(new InstallAll());
|
||||||
|
@@ -88,8 +88,6 @@ use Alchemy\Phrasea\Core\Provider\FtpServiceProvider;
|
|||||||
use Alchemy\Geonames\GeonamesServiceProvider;
|
use Alchemy\Geonames\GeonamesServiceProvider;
|
||||||
use Alchemy\Phrasea\Core\Provider\InstallerServiceProvider;
|
use Alchemy\Phrasea\Core\Provider\InstallerServiceProvider;
|
||||||
use Alchemy\Phrasea\Core\Provider\JMSSerializerServiceProvider;
|
use Alchemy\Phrasea\Core\Provider\JMSSerializerServiceProvider;
|
||||||
use Alchemy\Phrasea\Core\Provider\LessBuilderServiceProvider;
|
|
||||||
use Alchemy\Phrasea\Core\Provider\LessCompilerServiceProvider;
|
|
||||||
use Alchemy\Phrasea\Core\Provider\LocaleServiceProvider;
|
use Alchemy\Phrasea\Core\Provider\LocaleServiceProvider;
|
||||||
use Alchemy\Phrasea\Core\Provider\NotificationDelivererServiceProvider;
|
use Alchemy\Phrasea\Core\Provider\NotificationDelivererServiceProvider;
|
||||||
use Alchemy\Phrasea\Core\Provider\ORMServiceProvider;
|
use Alchemy\Phrasea\Core\Provider\ORMServiceProvider;
|
||||||
@@ -255,8 +253,6 @@ class Application extends SilexApplication
|
|||||||
$this->register(new PhraseaVersionServiceProvider());
|
$this->register(new PhraseaVersionServiceProvider());
|
||||||
$this->register(new PHPExiftoolServiceProvider());
|
$this->register(new PHPExiftoolServiceProvider());
|
||||||
$this->register(new ReCaptchaServiceProvider());
|
$this->register(new ReCaptchaServiceProvider());
|
||||||
$this->register(new LessCompilerServiceProvider());
|
|
||||||
$this->register(new LessBuilderServiceProvider());
|
|
||||||
|
|
||||||
$this['recaptcha.public-key'] = $this->share(function (Application $app) {
|
$this['recaptcha.public-key'] = $this->share(function (Application $app) {
|
||||||
if ($app['phraseanet.registry']->get('GV_captchas')) {
|
if ($app['phraseanet.registry']->get('GV_captchas')) {
|
||||||
|
@@ -13,9 +13,10 @@ namespace Alchemy\Phrasea;
|
|||||||
|
|
||||||
use Alchemy\Phrasea\Command\CommandInterface;
|
use Alchemy\Phrasea\Command\CommandInterface;
|
||||||
use Symfony\Component\Console;
|
use Symfony\Component\Console;
|
||||||
use Alchemy\Phrasea\Core\CLIProvider\PluginServiceProvider;
|
|
||||||
use Alchemy\Phrasea\Core\CLIProvider\ComposerSetupServiceProvider;
|
|
||||||
use Alchemy\Phrasea\Core\CLIProvider\CLIDriversServiceProvider;
|
use Alchemy\Phrasea\Core\CLIProvider\CLIDriversServiceProvider;
|
||||||
|
use Alchemy\Phrasea\Core\CLIProvider\ComposerSetupServiceProvider;
|
||||||
|
use Alchemy\Phrasea\Core\CLIProvider\LessBuilderServiceProvider;
|
||||||
|
use Alchemy\Phrasea\Core\CLIProvider\PluginServiceProvider;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Phraseanet Command Line Application
|
* Phraseanet Command Line Application
|
||||||
@@ -52,6 +53,7 @@ class CLI extends Application
|
|||||||
$this->register(new PluginServiceProvider());
|
$this->register(new PluginServiceProvider());
|
||||||
$this->register(new ComposerSetupServiceProvider());
|
$this->register(new ComposerSetupServiceProvider());
|
||||||
$this->register(new CLIDriversServiceProvider());
|
$this->register(new CLIDriversServiceProvider());
|
||||||
|
$this->register(new LessBuilderServiceProvider());
|
||||||
|
|
||||||
$this->bindRoutes();
|
$this->bindRoutes();
|
||||||
}
|
}
|
||||||
|
@@ -54,7 +54,7 @@ class ComposerInstall extends Command
|
|||||||
$output->writeln("<info>OK</info>");
|
$output->writeln("<info>OK</info>");
|
||||||
}
|
}
|
||||||
} catch (ExecutionFailureException $e) {
|
} catch (ExecutionFailureException $e) {
|
||||||
throw new RuntimeException('Unable to install bower dependencies', $e->getCode(), $e);
|
throw new RuntimeException('Unable to install composer dependencies', $e->getCode(), $e);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
* file that was distributed with this source code.
|
* file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Alchemy\Phrasea\Utilities\Less;
|
namespace Alchemy\Phrasea\Command\Developer\Utils;
|
||||||
|
|
||||||
use Alchemy\BinaryDriver\AbstractBinary;
|
use Alchemy\BinaryDriver\AbstractBinary;
|
||||||
use Psr\Log\LoggerInterface;
|
use Psr\Log\LoggerInterface;
|
||||||
@@ -18,11 +18,20 @@ use Alchemy\BinaryDriver\ConfigurationInterface;
|
|||||||
|
|
||||||
class RecessDriver extends AbstractBinary
|
class RecessDriver extends AbstractBinary
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
public function getName()
|
public function getName()
|
||||||
{
|
{
|
||||||
return 'recess';
|
return 'recess';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array|ConfigurationInterface $conf
|
||||||
|
* @param LoggerInterface $logger
|
||||||
|
*
|
||||||
|
* @return RecessDriver
|
||||||
|
*/
|
||||||
public static function create($conf = array(), LoggerInterface $logger = null)
|
public static function create($conf = array(), LoggerInterface $logger = null)
|
||||||
{
|
{
|
||||||
if (!$conf instanceof ConfigurationInterface) {
|
if (!$conf instanceof ConfigurationInterface) {
|
@@ -14,6 +14,7 @@ namespace Alchemy\Phrasea\Core\CLIProvider;
|
|||||||
use Alchemy\Phrasea\Command\Developer\Utils\BowerDriver;
|
use Alchemy\Phrasea\Command\Developer\Utils\BowerDriver;
|
||||||
use Alchemy\Phrasea\Command\Developer\Utils\UglifyJsDriver;
|
use Alchemy\Phrasea\Command\Developer\Utils\UglifyJsDriver;
|
||||||
use Alchemy\Phrasea\Command\Developer\Utils\ComposerDriver;
|
use Alchemy\Phrasea\Command\Developer\Utils\ComposerDriver;
|
||||||
|
use Alchemy\Phrasea\Command\Developer\Utils\RecessDriver;
|
||||||
use Silex\Application;
|
use Silex\Application;
|
||||||
use Silex\ServiceProviderInterface;
|
use Silex\ServiceProviderInterface;
|
||||||
use Symfony\Component\Process\ExecutableFinder;
|
use Symfony\Component\Process\ExecutableFinder;
|
||||||
@@ -26,13 +27,21 @@ class CLIDriversServiceProvider implements ServiceProviderInterface
|
|||||||
return new ExecutableFinder();
|
return new ExecutableFinder();
|
||||||
});
|
});
|
||||||
|
|
||||||
$app['driver.bower'] = $app->share(function (Application $app) {
|
$app['driver.binary-finder'] = $app->protect(function ($name, $configName) use ($app) {
|
||||||
if (isset($app['phraseanet.configuration']['binaries']['bower_binary'])) {
|
if (!$app['phraseanet.configuration']->isSetup()) {
|
||||||
$bowerBinary = $app['phraseanet.configuration']['binaries']['bower_binary'];
|
return $app['executable-finder']->find($name);
|
||||||
} else {
|
|
||||||
$bowerBinary = $app['executable-finder']->find('bower');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isset($app['phraseanet.configuration']['binaries'][$configName])) {
|
||||||
|
return $app['phraseanet.configuration']['binaries'][$configName];
|
||||||
|
}
|
||||||
|
|
||||||
|
return $app['executable-finder']->find($name);
|
||||||
|
});
|
||||||
|
|
||||||
|
$app['driver.bower'] = $app->share(function (Application $app) {
|
||||||
|
$bowerBinary = $app['driver.binary-finder']('bower', 'bower_binary');
|
||||||
|
|
||||||
if (null === $bowerBinary) {
|
if (null === $bowerBinary) {
|
||||||
throw new RuntimeException('Unable to find bower executable.');
|
throw new RuntimeException('Unable to find bower executable.');
|
||||||
}
|
}
|
||||||
@@ -40,13 +49,19 @@ class CLIDriversServiceProvider implements ServiceProviderInterface
|
|||||||
return BowerDriver::create(array('bower.binaries' => $bowerBinary), $app['monolog']);
|
return BowerDriver::create(array('bower.binaries' => $bowerBinary), $app['monolog']);
|
||||||
});
|
});
|
||||||
|
|
||||||
$app['driver.composer'] = $app->share(function (Application $app) {
|
$app['driver.recess'] = $app->share(function (Application $app) {
|
||||||
if (isset($app['phraseanet.configuration']['binaries']['composer_binary'])) {
|
$recessBinary = $app['driver.binary-finder']('recess', 'recess_binary');
|
||||||
$composerBinary = $app['phraseanet.configuration']['binaries']['composer_binary'];
|
|
||||||
} else {
|
if (null === $recessBinary) {
|
||||||
$composerBinary = $app['executable-finder']->find('composer');
|
throw new RuntimeException('Unable to find recess executable.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return RecessDriver::create(array('recess.binaries' => $recessBinary), $app['monolog']);
|
||||||
|
});
|
||||||
|
|
||||||
|
$app['driver.composer'] = $app->share(function (Application $app) {
|
||||||
|
$composerBinary = $app['driver.binary-finder']('composer', 'composer_binary');
|
||||||
|
|
||||||
if (null === $composerBinary) {
|
if (null === $composerBinary) {
|
||||||
throw new RuntimeException('Unable to find composer executable.');
|
throw new RuntimeException('Unable to find composer executable.');
|
||||||
}
|
}
|
||||||
@@ -55,7 +70,13 @@ class CLIDriversServiceProvider implements ServiceProviderInterface
|
|||||||
});
|
});
|
||||||
|
|
||||||
$app['driver.uglifyjs'] = $app->share(function (Application $app) {
|
$app['driver.uglifyjs'] = $app->share(function (Application $app) {
|
||||||
return UglifyJsDriver::create(array(), $app['monolog']);
|
$uglifyJsBinary = $app['driver.binary-finder']('uglifyjs', 'uglifyjs_binary');
|
||||||
|
|
||||||
|
if (null === $uglifyJsBinary) {
|
||||||
|
throw new RuntimeException('Unable to find uglifyJs executable.');
|
||||||
|
}
|
||||||
|
|
||||||
|
return UglifyJsDriver::create(array('uglifyjs.binaries' => $uglifyJsBinary), $app['monolog']);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -9,11 +9,12 @@
|
|||||||
* file that was distributed with this source code.
|
* file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Alchemy\Phrasea\Core\Provider;
|
namespace Alchemy\Phrasea\Core\CLIProvider;
|
||||||
|
|
||||||
use Silex\Application;
|
use Silex\Application;
|
||||||
use Silex\ServiceProviderInterface;
|
use Silex\ServiceProviderInterface;
|
||||||
use Alchemy\Phrasea\Utilities\Less\Builder as LessBuilder;
|
use Alchemy\Phrasea\Utilities\Less\Builder as LessBuilder;
|
||||||
|
use Alchemy\Phrasea\Utilities\Less\Compiler as LessCompiler;
|
||||||
|
|
||||||
class LessBuilderServiceProvider implements ServiceProviderInterface
|
class LessBuilderServiceProvider implements ServiceProviderInterface
|
||||||
{
|
{
|
||||||
@@ -47,6 +48,10 @@ class LessBuilderServiceProvider implements ServiceProviderInterface
|
|||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$app['phraseanet.less-compiler'] = $app->share(function($app) {
|
||||||
|
return new LessCompiler($app['filesystem'], $app['driver.recess']);
|
||||||
|
});
|
||||||
|
|
||||||
$app['phraseanet.less-builder'] = $app->share(function($app) {
|
$app['phraseanet.less-builder'] = $app->share(function($app) {
|
||||||
return new LessBuilder($app['phraseanet.less-compiler'], $app['filesystem']);
|
return new LessBuilder($app['phraseanet.less-compiler'], $app['filesystem']);
|
||||||
});
|
});
|
@@ -1,30 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This file is part of Phraseanet
|
|
||||||
*
|
|
||||||
* (c) 2005-2013 Alchemy
|
|
||||||
*
|
|
||||||
* For the full copyright and license information, please view the LICENSE
|
|
||||||
* file that was distributed with this source code.
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace Alchemy\Phrasea\Core\Provider;
|
|
||||||
|
|
||||||
use Silex\Application;
|
|
||||||
use Silex\ServiceProviderInterface;
|
|
||||||
use Alchemy\Phrasea\Utilities\Less\Compiler as LessCompiler;
|
|
||||||
|
|
||||||
class LessCompilerServiceProvider implements ServiceProviderInterface
|
|
||||||
{
|
|
||||||
public function register(Application $app)
|
|
||||||
{
|
|
||||||
$app['phraseanet.less-compiler'] = $app->share(function($app) {
|
|
||||||
return LessCompiler::create($app);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public function boot(Application $app)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
@@ -11,8 +11,7 @@
|
|||||||
|
|
||||||
namespace Alchemy\Phrasea\Utilities\Less;
|
namespace Alchemy\Phrasea\Utilities\Less;
|
||||||
|
|
||||||
use Alchemy\Phrasea\Application;
|
use Alchemy\Phrasea\Command\Developer\Utils\RecessDriver;
|
||||||
use Alchemy\BinaryDriver\BinaryInterface;
|
|
||||||
use Alchemy\BinaryDriver\Exception\ExecutionFailureException;
|
use Alchemy\BinaryDriver\Exception\ExecutionFailureException;
|
||||||
use Alchemy\Phrasea\Exception\RuntimeException;
|
use Alchemy\Phrasea\Exception\RuntimeException;
|
||||||
use Symfony\Component\Filesystem\Filesystem;
|
use Symfony\Component\Filesystem\Filesystem;
|
||||||
@@ -22,19 +21,12 @@ class Compiler
|
|||||||
private $filesystem;
|
private $filesystem;
|
||||||
private $recess;
|
private $recess;
|
||||||
|
|
||||||
public function __construct(Filesystem $filesystem, BinaryInterface $recess)
|
public function __construct(Filesystem $filesystem, RecessDriver $recess)
|
||||||
{
|
{
|
||||||
$this->filesystem = $filesystem;
|
$this->filesystem = $filesystem;
|
||||||
$this->recess = $recess;
|
$this->recess = $recess;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function create(Application $app)
|
|
||||||
{
|
|
||||||
$binaries = $app['phraseanet.configuration']['binaries'];
|
|
||||||
|
|
||||||
return new self($app['filesystem'], RecessDriver::create($binaries));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Compile LESS files
|
* Compile LESS files
|
||||||
*
|
*
|
||||||
|
@@ -10,8 +10,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
use Alchemy\Phrasea\Application;
|
use Alchemy\Phrasea\Application;
|
||||||
use Entities\Session;
|
|
||||||
use Entities\SessionModule;
|
|
||||||
|
|
||||||
class patch_3814 implements patchInterface
|
class patch_3814 implements patchInterface
|
||||||
{
|
{
|
||||||
|
@@ -1,17 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
/*
|
namespace Alchemy\Tests\Phrasea\Command\Developper\Utils;
|
||||||
* This file is part of Phraseanet
|
|
||||||
*
|
|
||||||
* (c) 2005-2013 Alchemy
|
|
||||||
*
|
|
||||||
* For the full copyright and license information, please view the LICENSE
|
|
||||||
* file that was distributed with this source code.
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace Alchemy\Tests\Phrasea\Utilities\Less;
|
use Alchemy\Phrasea\Command\Developer\Utils\RecessDriver;
|
||||||
|
|
||||||
use Alchemy\Phrasea\Utilities\Less\RecessDriver;
|
|
||||||
|
|
||||||
class RecessDriverTest extends \PHPUnit_Framework_TestCase
|
class RecessDriverTest extends \PHPUnit_Framework_TestCase
|
||||||
{
|
{
|
@@ -30,6 +30,11 @@ class CLISDriversServiceProviderTest extends ServiceProviderTestCase
|
|||||||
'driver.uglifyjs',
|
'driver.uglifyjs',
|
||||||
'Alchemy\Phrasea\Command\Developer\Utils\UglifyJsDriver'
|
'Alchemy\Phrasea\Command\Developer\Utils\UglifyJsDriver'
|
||||||
),
|
),
|
||||||
|
array(
|
||||||
|
'Alchemy\Phrasea\Core\CLIProvider\CLIDriversServiceProvider',
|
||||||
|
'driver.recess',
|
||||||
|
'Alchemy\Phrasea\Command\Developer\Utils\RecessDriver'
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Alchemy\Tests\Phrasea\Core\CLIProvider;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers Alchemy\Phrasea\Core\CLIProvider\LessBuilderServiceProvider
|
||||||
|
*/
|
||||||
|
class LessBuilderServiceProvidertest extends ServiceProviderTestCase
|
||||||
|
{
|
||||||
|
public function provideServiceDescription()
|
||||||
|
{
|
||||||
|
return array(
|
||||||
|
array(
|
||||||
|
'Alchemy\Phrasea\Core\CLIProvider\LessBuilderServiceProvider',
|
||||||
|
'phraseanet.less-compiler',
|
||||||
|
'\Alchemy\Phrasea\Utilities\Less\Compiler'
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'Alchemy\Phrasea\Core\CLIProvider\LessBuilderServiceProvider',
|
||||||
|
'phraseanet.less-builder',
|
||||||
|
'\Alchemy\Phrasea\Utilities\Less\Builder'
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
@@ -3,7 +3,7 @@ main:
|
|||||||
maintenance: false
|
maintenance: false
|
||||||
database:
|
database:
|
||||||
host: 'sql-host'
|
host: 'sql-host'
|
||||||
port: '3306'
|
port: 3306
|
||||||
user: 'sql-user'
|
user: 'sql-user'
|
||||||
password: 'sql-password'
|
password: 'sql-password'
|
||||||
dbname: ab_phraseanet
|
dbname: ab_phraseanet
|
||||||
@@ -25,12 +25,28 @@ main:
|
|||||||
search-engine:
|
search-engine:
|
||||||
type: Alchemy\Phrasea\SearchEngine\Phrasea\PhraseaEngine
|
type: Alchemy\Phrasea\SearchEngine\Phrasea\PhraseaEngine
|
||||||
options: []
|
options: []
|
||||||
task-manager:
|
|
||||||
options: null
|
|
||||||
trusted-proxies: []
|
trusted-proxies: []
|
||||||
debugger:
|
debugger:
|
||||||
allowed-ips: []
|
allowed-ips: []
|
||||||
binaries: []
|
binaries:
|
||||||
|
ghostscript_binary: null
|
||||||
|
php_binary: null
|
||||||
|
swf_extract_binary: null
|
||||||
|
pdf2swf_binary: null
|
||||||
|
swf_render_binary: null
|
||||||
|
unoconv_binary: null
|
||||||
|
ffmpeg_binary: null
|
||||||
|
ffprobe_binary: null
|
||||||
|
mp4box_binary: null
|
||||||
|
pdftotext_binary: null
|
||||||
|
recess_binary: null
|
||||||
|
phraseanet_indexer: null
|
||||||
|
ffmpeg_timeout: 3600
|
||||||
|
ffprobe_timeout: 60
|
||||||
|
gs_timeout: 60
|
||||||
|
mp4box_timeout: 60
|
||||||
|
swftools_timeout: 60
|
||||||
|
unoconv_timeout: 60
|
||||||
border-manager:
|
border-manager:
|
||||||
enabled: true
|
enabled: true
|
||||||
checkers:
|
checkers:
|
||||||
|
@@ -3,7 +3,7 @@ main:
|
|||||||
maintenance: false
|
maintenance: false
|
||||||
database:
|
database:
|
||||||
host: 'sql-host'
|
host: 'sql-host'
|
||||||
port: '3306'
|
port: 3306
|
||||||
user: 'sql-user'
|
user: 'sql-user'
|
||||||
password: 'sql-password'
|
password: 'sql-password'
|
||||||
dbname: ab_phraseanet
|
dbname: ab_phraseanet
|
||||||
@@ -25,12 +25,28 @@ main:
|
|||||||
search-engine:
|
search-engine:
|
||||||
type: Alchemy\Phrasea\SearchEngine\Phrasea\PhraseaEngine
|
type: Alchemy\Phrasea\SearchEngine\Phrasea\PhraseaEngine
|
||||||
options: []
|
options: []
|
||||||
task-manager:
|
|
||||||
options: null
|
|
||||||
trusted-proxies: []
|
trusted-proxies: []
|
||||||
debugger:
|
debugger:
|
||||||
allowed-ips: []
|
allowed-ips: []
|
||||||
binaries: []
|
binaries:
|
||||||
|
ghostscript_binary: null
|
||||||
|
php_binary: null
|
||||||
|
swf_extract_binary: null
|
||||||
|
pdf2swf_binary: null
|
||||||
|
swf_render_binary: null
|
||||||
|
unoconv_binary: null
|
||||||
|
ffmpeg_binary: null
|
||||||
|
ffprobe_binary: null
|
||||||
|
mp4box_binary: null
|
||||||
|
pdftotext_binary: null
|
||||||
|
recess_binary: null
|
||||||
|
phraseanet_indexer: null
|
||||||
|
ffmpeg_timeout: 3600
|
||||||
|
ffprobe_timeout: 60
|
||||||
|
gs_timeout: 60
|
||||||
|
mp4box_timeout: 60
|
||||||
|
swftools_timeout: 60
|
||||||
|
unoconv_timeout: 60
|
||||||
border-manager:
|
border-manager:
|
||||||
enabled: true
|
enabled: true
|
||||||
checkers:
|
checkers:
|
||||||
|
@@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Alchemy\Tests\Phrasea\Core\Provider;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @covers Alchemy\Phrasea\Core\Provider\UnicodeServiceProvider
|
|
||||||
*/
|
|
||||||
class LessCompilerServiceProvidertest extends ServiceProviderTestCase
|
|
||||||
{
|
|
||||||
public function provideServiceDescription()
|
|
||||||
{
|
|
||||||
return array(
|
|
||||||
array('Alchemy\Phrasea\Core\Provider\LessCompilerServiceProvider', 'phraseanet.less-compiler', '\Alchemy\Phrasea\Utilities\Less\Compiler'),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Alchemy\Tests\Phrasea\Core\Provider;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @covers Alchemy\Phrasea\Core\Provider\UnicodeServiceProvider
|
|
||||||
*/
|
|
||||||
class LessBuilderServiceProvidertest extends ServiceProviderTestCase
|
|
||||||
{
|
|
||||||
public function provideServiceDescription()
|
|
||||||
{
|
|
||||||
return array(
|
|
||||||
array('Alchemy\Phrasea\Core\Provider\LessBuilderServiceProvider', 'phraseanet.less-builder', '\Alchemy\Phrasea\Utilities\Less\Builder'),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
@@ -18,7 +18,9 @@ class CompilerTest extends \PhraseanetPHPUnitAbstract
|
|||||||
{
|
{
|
||||||
public function testCompileSuccess()
|
public function testCompileSuccess()
|
||||||
{
|
{
|
||||||
$recessDriver = $this->getMock('Alchemy\BinaryDriver\BinaryInterface');
|
$recessDriver = $this->getMockBuilder('Alchemy\Phrasea\Command\Developer\Utils\RecessDriver')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
$recessDriver->expects($this->once())->method('command');
|
$recessDriver->expects($this->once())->method('command');
|
||||||
|
|
||||||
$filesystem = $this->getMock('Symfony\Component\Filesystem\Filesystem');
|
$filesystem = $this->getMock('Symfony\Component\Filesystem\Filesystem');
|
||||||
@@ -30,18 +32,14 @@ class CompilerTest extends \PhraseanetPHPUnitAbstract
|
|||||||
$compiler->compile(__DIR__ . '/output.css', __FILE__);
|
$compiler->compile(__DIR__ . '/output.css', __FILE__);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testCreate()
|
/**
|
||||||
{
|
|
||||||
$compiler = Compiler::create(self::$DI['app']);
|
|
||||||
$this->assertInstanceOf('Alchemy\Phrasea\Utilities\Less\Compiler', $compiler);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @expectedException Alchemy\Phrasea\Exception\RuntimeException
|
* @expectedException Alchemy\Phrasea\Exception\RuntimeException
|
||||||
*/
|
*/
|
||||||
public function testCompileFileNotExists()
|
public function testCompileFileNotExists()
|
||||||
{
|
{
|
||||||
$recessDriver = $this->getMock('Alchemy\BinaryDriver\BinaryInterface');
|
$recessDriver = $this->getMockBuilder('Alchemy\Phrasea\Command\Developer\Utils\RecessDriver')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
|
||||||
$filesystem = $this->getMock('Symfony\Component\Filesystem\Filesystem');
|
$filesystem = $this->getMock('Symfony\Component\Filesystem\Filesystem');
|
||||||
$filesystem->expects($this->once())->method('mkdir');
|
$filesystem->expects($this->once())->method('mkdir');
|
||||||
@@ -56,7 +54,10 @@ class CompilerTest extends \PhraseanetPHPUnitAbstract
|
|||||||
*/
|
*/
|
||||||
public function testCompileExecutionFailure()
|
public function testCompileExecutionFailure()
|
||||||
{
|
{
|
||||||
$recessDriver = $this->getMock('Alchemy\BinaryDriver\BinaryInterface');
|
$recessDriver = $this->getMockBuilder('Alchemy\Phrasea\Command\Developer\Utils\RecessDriver')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
|
||||||
$recessDriver->expects($this->once())->method('command')->will(
|
$recessDriver->expects($this->once())->method('command')->will(
|
||||||
$this->throwException(new ExecutionFailureException())
|
$this->throwException(new ExecutionFailureException())
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user