mautic / app /config /config_test.php
chrisbryan17's picture
Upload folder using huggingface_hub
d2897cd verified
<?php
use Doctrine\Bundle\FixturesBundle\DependencyInjection\CompilerPass\FixturesCompilerPass;
use Mautic\CoreBundle\Loader\ParameterLoader;
use Mautic\CoreBundle\Test\EnvLoader;
use Symfony\Component\DependencyInjection\Reference;
/** @var Symfony\Component\DependencyInjection\ContainerBuilder $container */
// Include path settings
$root = $container->getParameter('mautic.application_dir').'/app';
$configBaseDir = ParameterLoader::getLocalConfigBaseDir($root);
$loader->import('config.php');
EnvLoader::load();
// Define some constants from .env
defined('MAUTIC_TABLE_PREFIX') || define('MAUTIC_TABLE_PREFIX', getenv('MAUTIC_DB_PREFIX') ?: '');
defined('MAUTIC_ENV') || define('MAUTIC_ENV', getenv('MAUTIC_ENV') ?: 'test');
// Twig Configuration
$container->loadFromExtension('twig', [
'cache' => false,
'debug' => '%kernel.debug%',
'strict_variables' => true,
'paths' => [
'%mautic.application_dir%/app/bundles' => 'bundles',
'%mautic.application_dir%/app/bundles/CoreBundle' => 'MauticCore',
'%mautic.application_dir%/themes' => 'themes',
],
'form_themes' => [
// Can be found at bundles/CoreBundle/Resources/views/mautic_form_layout.html.twig
'@MauticCore/FormTheme/mautic_form_layout.html.twig',
],
]);
$container->loadFromExtension('framework', [
'test' => true,
'session' => [
'storage_id' => 'session.storage.mock_file',
'name' => 'MOCKSESSION',
],
'profiler' => [
'collect' => false,
],
'translator' => [
'enabled' => true,
],
'csrf_protection' => [
'enabled' => true,
],
]);
$container->setParameter('mautic.famework.csrf_protection', true);
$container->loadFromExtension('web_profiler', [
'toolbar' => false,
'intercept_redirects' => false,
]);
$connectionSettings = [
'host' => '%env(DB_HOST)%' ?: '%mautic.db_host%',
'port' => '%env(DB_PORT)%' ?: '%mautic.db_port%',
'dbname' => '%env(DB_NAME)%' ?: '%mautic.db_name%',
'user' => '%env(DB_USER)%' ?: '%mautic.db_user%',
'password' => '%env(DB_PASSWD)%' ?: '%mautic.db_password%',
'options' => [PDO::ATTR_STRINGIFY_FETCHES => true], // @see https://www.php.net/manual/en/migration81.incompatible.php#migration81.incompatible.pdo.mysql
];
$container->loadFromExtension('doctrine', [
'dbal' => [
'connections' => [
'default' => $connectionSettings,
'unbuffered' => $connectionSettings,
],
],
]);
$container->setParameter('mautic.db_table_prefix', MAUTIC_TABLE_PREFIX);
$container->loadFromExtension('monolog', [
'channels' => [
'mautic',
],
'handlers' => [
'main' => [
'formatter' => 'mautic.monolog.fulltrace.formatter',
'type' => 'rotating_file',
'path' => '%kernel.logs_dir%/%kernel.environment%.php',
'level' => getenv('MAUTIC_DEBUG_LEVEL') ?: 'error',
'channels' => [
'!mautic',
],
'max_files' => 7,
],
'console' => [
'type' => 'console',
'bubble' => false,
],
'mautic' => [
'formatter' => 'mautic.monolog.fulltrace.formatter',
'type' => 'rotating_file',
'path' => '%kernel.logs_dir%/mautic_%kernel.environment%.php',
'level' => getenv('MAUTIC_DEBUG_LEVEL') ?: 'error',
'channels' => [
'mautic',
],
'max_files' => 7,
],
],
]);
$container->loadFromExtension('liip_test_fixtures', [
'cache_db' => [
'sqlite' => 'liip_functional_test.services_database_backup.sqlite',
],
'keep_database_and_schema' => true,
]);
$loader->import('security_test.php');
// Allow overriding config without a requiring a full bundle or hacks
if (file_exists($configBaseDir.'/config/config_override.php')) {
$loader->import($configBaseDir.'/config/config_override.php');
}
// Add required parameters
$container->setParameter('mautic.secret_key', '68c7e75470c02cba06dd543431411e0de94e04fdf2b3a2eac05957060edb66d0');
$container->setParameter('mautic.security.disableUpdates', true);
$container->setParameter('mautic.rss_notification_url', null);
$container->setParameter('mautic.batch_sleep_time', 0);
// Turn off creating of indexes in lead field fixtures
$container->register('mautic.install.fixture.lead_field', Mautic\InstallBundle\InstallFixtures\ORM\LeadFieldData::class)
->addArgument(new Reference('translator'))
->addTag(FixturesCompilerPass::FIXTURE_TAG)
->setPublic(true);
// Use static namespace for token manager
$container->register('security.csrf.token_manager', Symfony\Component\Security\Csrf\CsrfTokenManager::class)
->addArgument(new Reference('security.csrf.token_generator'))
->addArgument(new Reference('security.csrf.token_storage'))
->addArgument('test')
->setPublic(true);
// HTTP client mock handler providing response queue
$container->register(GuzzleHttp\Handler\MockHandler::class)->setPublic(true);
$container->register('http_client', Symfony\Component\HttpClient\MockHttpClient::class)
->setPublic(true);
$container->register('test.service_container', Mautic\CoreBundle\Test\Container\TestContainer::class)
->setArgument('$kernel', new Reference('kernel'))
->setArgument('$privateServicesLocatorId', 'test.private_services_locator')
->setPublic(true);