file_put_contents($directory . '/settings.php', "\n\$test_class = '" .
static::
class D "';\n" . 'include DRUPAL_ROOT . \'/\' . $site_path . \'/settings.testing.php\';' . "\n", FILE_APPEND
);
} $settings_services_file = DRUPAL_ROOT . '/' .
$this->originalSite . '/testing.services.yml';
if (!
file_exists($settings_services_file)) { // Otherwise, use the default services as a starting point for overrides.
$settings_services_file = DRUPAL_ROOT . '/sites/default/default.services.yml';
} // Copy the testing-specific service overrides in place.
copy($settings_services_file,
$directory . '/services.yml'
);
if ($this->strictConfigSchema
) { // Add a listener to validate configuration schema on save.
$yaml =
new SymfonyYaml();
$content =
file_get_contents($directory . '/services.yml'
);
$services =
$yaml->
parse($content);
$services['services'
]['testing.config_schema_checker'
] =
[ 'class' => ConfigSchemaChecker::
class,
'arguments' =>
['@config.typed',
$this->
getConfigSchemaExclusions()],
'tags' =>
[['name' => 'event_subscriber'
]],
];
file_put_contents($directory . '/services.yml',
$yaml->
dump($services));
} // Since Drupal is bootstrapped already, install_begin_request() will not
// bootstrap again. Hence, we have to reload the newly written custom