class ThemeTestController in Drupal 9
Same name in this branch
- 9 core/modules/system/tests/modules/theme_legacy_test/src/ThemeTestController.php \Drupal\theme_legacy_test\ThemeTestController
- 9 core/modules/system/tests/modules/theme_test/src/ThemeTestController.php \Drupal\theme_test\ThemeTestController
Same name and namespace in other branches
- 8 core/modules/system/tests/modules/theme_test/src/ThemeTestController.php \Drupal\theme_test\ThemeTestController
Controller routines for theme test routes.
Hierarchy
- class \Drupal\Core\Controller\ControllerBase implements ContainerInjectionInterface uses LoggerChannelTrait, MessengerTrait, RedirectDestinationTrait, StringTranslationTrait
- class \Drupal\theme_test\ThemeTestController
Expanded class hierarchy of ThemeTestController
File
- core/
modules/ system/ tests/ modules/ theme_test/ src/ ThemeTestController.php, line 11
Namespace
Drupal\theme_testView source
class ThemeTestController extends ControllerBase {
/**
* Adds stylesheets to test theme .info.yml property processing.
*
* @return array
* A render array containing custom stylesheets.
*/
public function testInfoStylesheets() {
return [
'#attached' => [
'library' => [
'theme_test/theme_stylesheets_override_and_remove_test',
],
],
];
}
/**
* Tests template overriding based on filename.
*
* @return array
* A render array containing a theme override.
*/
public function testTemplate() {
return [
'#markup' => \Drupal::theme()
->render('theme_test_template_test', []),
];
}
/**
* Tests the inline template functionality.
*
* @return array
* A render array containing an inline template.
*/
public function testInlineTemplate() {
$element = [];
$element['test'] = [
'#type' => 'inline_template',
'#template' => 'test-with-context {{ llama }}',
'#context' => [
'llama' => 'muuh',
],
];
return $element;
}
/**
* Calls a theme hook suggestion.
*
* @return string
* An HTML string containing the themed output.
*/
public function testSuggestion() {
return [
'#markup' => \Drupal::theme()
->render([
'theme_test__suggestion',
'theme_test',
], []),
];
}
/**
* Tests themed output generated in a request listener.
*
* @return string
* Content in theme_test_output GLOBAL.
*/
public function testRequestListener() {
return [
'#markup' => $GLOBALS['theme_test_output'],
];
}
/**
* Menu callback for testing suggestion alter hooks with template files.
*/
public function suggestionProvided() {
return [
'#theme' => 'theme_test_suggestion_provided',
];
}
/**
* Menu callback for testing suggestion alter hooks with template files.
*/
public function suggestionAlter() {
return [
'#theme' => 'theme_test_suggestions',
];
}
/**
* Menu callback for testing hook_theme_suggestions_alter().
*/
public function generalSuggestionAlter() {
return [
'#theme' => 'theme_test_general_suggestions',
];
}
/**
* Menu callback for testing suggestion alter hooks with specific suggestions.
*/
public function specificSuggestionAlter() {
return [
'#theme' => 'theme_test_specific_suggestions__variant',
];
}
/**
* Controller to ensure that no theme is initialized.
*
* @return \Symfony\Component\HttpFoundation\JsonResponse
* The json response with the theme initialized information.
*/
public function nonHtml() {
$theme_initialized = \Drupal::theme()
->hasActiveTheme();
return new JsonResponse([
'theme_initialized' => $theme_initialized,
]);
}
/**
* Controller for testing preprocess functions with theme suggestions.
*/
public function preprocessSuggestions() {
return [
[
'#theme' => 'theme_test_preprocess_suggestions',
'#foo' => 'suggestion',
],
[
'#theme' => 'theme_test_preprocess_suggestions',
'#foo' => 'kitten',
],
[
'#theme' => 'theme_test_preprocess_suggestions',
'#foo' => 'monkey',
],
[
'#theme' => 'theme_test_preprocess_suggestions__kitten__flamingo',
],
];
}
/**
* Controller for testing a namespaced class in a theme.
*/
public function testThemeClass() {
return [
'#theme' => 'theme_test_theme_class',
'#title' => 'Testing loading a class from a .theme file',
];
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ControllerBase:: |
protected | property | The configuration factory. | |
ControllerBase:: |
protected | property | The current user service. | 1 |
ControllerBase:: |
protected | property | The entity form builder. | |
ControllerBase:: |
protected | property | The entity type manager. | |
ControllerBase:: |
protected | property | The form builder. | 2 |
ControllerBase:: |
protected | property | The key-value storage. | 1 |
ControllerBase:: |
protected | property | The language manager. | 1 |
ControllerBase:: |
protected | property | The module handler. | 2 |
ControllerBase:: |
protected | property | The state service. | |
ControllerBase:: |
protected | function | Returns the requested cache bin. | |
ControllerBase:: |
protected | function | Retrieves a configuration object. | |
ControllerBase:: |
private | function | Returns the service container. | |
ControllerBase:: |
public static | function |
Instantiates a new instance of this class. Overrides ContainerInjectionInterface:: |
46 |
ControllerBase:: |
protected | function | Returns the current user. | 1 |
ControllerBase:: |
protected | function | Retrieves the entity form builder. | |
ControllerBase:: |
protected | function | Retrieves the entity type manager. | |
ControllerBase:: |
protected | function | Returns the form builder service. | 2 |
ControllerBase:: |
protected | function | Returns a key/value storage collection. | 1 |
ControllerBase:: |
protected | function | Returns the language manager service. | 1 |
ControllerBase:: |
protected | function | Returns the module handler. | 2 |
ControllerBase:: |
protected | function | Returns a redirect response object for the specified route. | |
ControllerBase:: |
protected | function | Returns the state storage service. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 27 |
MessengerTrait:: |
public | function | Gets the messenger. | 27 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 4 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
ThemeTestController:: |
public | function | Menu callback for testing hook_theme_suggestions_alter(). | |
ThemeTestController:: |
public | function | Controller to ensure that no theme is initialized. | |
ThemeTestController:: |
public | function | Controller for testing preprocess functions with theme suggestions. | |
ThemeTestController:: |
public | function | Menu callback for testing suggestion alter hooks with specific suggestions. | |
ThemeTestController:: |
public | function | Menu callback for testing suggestion alter hooks with template files. | |
ThemeTestController:: |
public | function | Menu callback for testing suggestion alter hooks with template files. | |
ThemeTestController:: |
public | function | Adds stylesheets to test theme .info.yml property processing. | |
ThemeTestController:: |
public | function | Tests the inline template functionality. | |
ThemeTestController:: |
public | function | Tests themed output generated in a request listener. | |
ThemeTestController:: |
public | function | Calls a theme hook suggestion. | |
ThemeTestController:: |
public | function | Tests template overriding based on filename. | |
ThemeTestController:: |
public | function | Controller for testing a namespaced class in a theme. |