mirror of
https://github.com/FriendsOfTYPO3/tea.git
synced 2024-11-26 04:56:13 +01:00
Compare commits
No commits in common. "c5d9e1d08e3cec86520b387b2e49b86afb05e008" and "22598ef7892a70cd17b759b53b81f53536d4cb31" have entirely different histories.
c5d9e1d08e
...
22598ef789
4 changed files with 175 additions and 6 deletions
1
.gitattributes
vendored
1
.gitattributes
vendored
|
@ -8,6 +8,7 @@
|
||||||
/.npmrc export-ignore
|
/.npmrc export-ignore
|
||||||
/.nvmrc export-ignore
|
/.nvmrc export-ignore
|
||||||
/.php-cs-fixer.php export-ignore
|
/.php-cs-fixer.php export-ignore
|
||||||
|
/.phpstorm.meta.php export-ignore
|
||||||
/.prettierrc.js export-ignore
|
/.prettierrc.js export-ignore
|
||||||
/Build/ export-ignore
|
/Build/ export-ignore
|
||||||
/Configuration/FunctionalTests.xml export-ignore
|
/Configuration/FunctionalTests.xml export-ignore
|
||||||
|
|
4
.github/workflows/codecoverage.yml
vendored
4
.github/workflows/codecoverage.yml
vendored
|
@ -63,7 +63,7 @@ jobs:
|
||||||
- name: "Run unit tests with coverage"
|
- name: "Run unit tests with coverage"
|
||||||
run: composer ci:coverage:unit
|
run: composer ci:coverage:unit
|
||||||
- name: "Show generated coverage files"
|
- name: "Show generated coverage files"
|
||||||
run: "ls -lahR build/coverage/"
|
run: "ls -lahR .Build/coverage/"
|
||||||
- name: "Run functional tests with coverage"
|
- name: "Run functional tests with coverage"
|
||||||
run: |
|
run: |
|
||||||
export typo3DatabaseName="$DB_DATABASE";
|
export typo3DatabaseName="$DB_DATABASE";
|
||||||
|
@ -72,7 +72,7 @@ jobs:
|
||||||
export typo3DatabasePassword="$DB_PASSWORD";
|
export typo3DatabasePassword="$DB_PASSWORD";
|
||||||
composer ci:coverage:functional
|
composer ci:coverage:functional
|
||||||
- name: "Show generated coverage files"
|
- name: "Show generated coverage files"
|
||||||
run: "ls -lahR build/coverage/"
|
run: "ls -lahR .Build/coverage/"
|
||||||
- name: "Merge coverage results"
|
- name: "Merge coverage results"
|
||||||
run: composer ci:coverage:merge
|
run: composer ci:coverage:merge
|
||||||
- name: "Show combined coverage files"
|
- name: "Show combined coverage files"
|
||||||
|
|
168
.phpstorm.meta.php
Normal file
168
.phpstorm.meta.php
Normal file
|
@ -0,0 +1,168 @@
|
||||||
|
<?php
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see https://www.jetbrains.com/help/phpstorm/ide-advanced-metadata.html
|
||||||
|
*/
|
||||||
|
namespace PHPSTORM_META {
|
||||||
|
|
||||||
|
override(\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(0), type(0));
|
||||||
|
|
||||||
|
// TYPO3 testing framework
|
||||||
|
// The accesible mock will be of type `self` as well as `MockObject` and `AccessibleObjectInterface`.
|
||||||
|
override(
|
||||||
|
\TYPO3\TestingFramework\Core\BaseTestCase::getAccessibleMock(0),
|
||||||
|
map(
|
||||||
|
[
|
||||||
|
'' => '@|\\PHPUnit\\Framework\\MockObject\\MockObject'
|
||||||
|
. '|\\TYPO3\\TestingFramework\\Core\\AccessibleObjectInterface',
|
||||||
|
]
|
||||||
|
)
|
||||||
|
);
|
||||||
|
override(
|
||||||
|
\TYPO3\TestingFramework\Core\BaseTestCase::getAccessibleMockForAbstractClass(0),
|
||||||
|
map(
|
||||||
|
[
|
||||||
|
'' => '@|\\PHPUnit\\Framework\\MockObject\\MockObject'
|
||||||
|
. '|\\TYPO3\TestingFramework\\Core\\AccessibleObjectInterface',
|
||||||
|
]
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Contexts
|
||||||
|
// @see https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/9.4/Feature-85389-ContextAPIForConsistentDataHandling.html
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\Context::getAspect(),
|
||||||
|
0,
|
||||||
|
'date',
|
||||||
|
'visibility',
|
||||||
|
'backend.user',
|
||||||
|
'frontend.user',
|
||||||
|
'workspace',
|
||||||
|
'language',
|
||||||
|
'typoscript'
|
||||||
|
);
|
||||||
|
|
||||||
|
override(\TYPO3\CMS\Core\Context\Context::getAspect(), map([
|
||||||
|
'date' => \TYPO3\CMS\Core\Context\DateTimeAspect::class,
|
||||||
|
'visibility' => \TYPO3\CMS\Core\Context\VisibilityAspect::class,
|
||||||
|
'backend.user' => \TYPO3\CMS\Core\Context\UserAspect::class,
|
||||||
|
'frontend.user' => \TYPO3\CMS\Core\Context\UserAspect::class,
|
||||||
|
'workspace' => \TYPO3\CMS\Core\Context\WorkspaceAspect::class,
|
||||||
|
'language' => \TYPO3\CMS\Core\Context\LanguageAspect::class,
|
||||||
|
'typoscript' => \TYPO3\CMS\Core\Context\TypoScriptAspect::class,
|
||||||
|
]));
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\DateTimeAspect::get(),
|
||||||
|
0,
|
||||||
|
'timestamp',
|
||||||
|
'iso',
|
||||||
|
'timezone',
|
||||||
|
'full',
|
||||||
|
'accessTime'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\VisibilityAspect::get(),
|
||||||
|
0,
|
||||||
|
'includeHiddenPages',
|
||||||
|
'includeHiddenContent',
|
||||||
|
'includeDeletedRecords'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\UserAspect::get(),
|
||||||
|
0,
|
||||||
|
'id',
|
||||||
|
'username',
|
||||||
|
'isLoggedIn',
|
||||||
|
'isAdmin',
|
||||||
|
'groupIds',
|
||||||
|
'groupNames'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\WorkspaceAspect::get(),
|
||||||
|
0,
|
||||||
|
'id',
|
||||||
|
'isLive',
|
||||||
|
'isOffline'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\LanguageAspect::get(),
|
||||||
|
0,
|
||||||
|
'id',
|
||||||
|
'contentId',
|
||||||
|
'fallbackChain',
|
||||||
|
'overlayType',
|
||||||
|
'legacyLanguageMode',
|
||||||
|
'legacyOverlayType'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Context\TypoScriptAspect::get(),
|
||||||
|
0,
|
||||||
|
'forcedTemplateParsing'
|
||||||
|
);
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\Psr\Http\Message\ServerRequestInterface::getAttribute(),
|
||||||
|
0,
|
||||||
|
'backend.user',
|
||||||
|
'frontend.user',
|
||||||
|
'normalizedParams',
|
||||||
|
'site',
|
||||||
|
'language',
|
||||||
|
'routing',
|
||||||
|
'module',
|
||||||
|
'moduleData'
|
||||||
|
);
|
||||||
|
|
||||||
|
override(\Psr\Http\Message\ServerRequestInterface::getAttribute(), map([
|
||||||
|
'backend.user' => \TYPO3\CMS\Backend\FrontendBackendUserAuthentication::class,
|
||||||
|
'frontend.user' => \TYPO3\CMS\Frontend\Authentication\FrontendUserAuthentication::class,
|
||||||
|
'normalizedParams' => \TYPO3\CMS\Core\Http\NormalizedParams::class,
|
||||||
|
'site' => \TYPO3\CMS\Core\Site\Entity\SiteInterface::class,
|
||||||
|
'language' => \TYPO3\CMS\Core\Site\Entity\SiteLanguage::class,
|
||||||
|
'routing' => '\TYPO3\CMS\Core\Routing\SiteRouteResult|\TYPO3\CMS\Core\Routing\PageArguments',
|
||||||
|
'module' => \TYPO3\CMS\Backend\Module\ModuleInterface::class,
|
||||||
|
'moduleData' => \TYPO3\CMS\Backend\Module\ModuleData::class,
|
||||||
|
]));
|
||||||
|
|
||||||
|
expectedArguments(
|
||||||
|
\TYPO3\CMS\Core\Http\ServerRequest::getAttribute(),
|
||||||
|
0,
|
||||||
|
'backend.user',
|
||||||
|
'frontend.user',
|
||||||
|
'normalizedParams',
|
||||||
|
'site',
|
||||||
|
'language',
|
||||||
|
'routing',
|
||||||
|
'module',
|
||||||
|
'moduleData'
|
||||||
|
);
|
||||||
|
|
||||||
|
override(\TYPO3\CMS\Core\Http\ServerRequest::getAttribute(), map([
|
||||||
|
'backend.user' => \TYPO3\CMS\Backend\FrontendBackendUserAuthentication::class,
|
||||||
|
'frontend.user' => \TYPO3\CMS\Frontend\Authentication\FrontendUserAuthentication::class,
|
||||||
|
'normalizedParams' => \TYPO3\CMS\Core\Http\NormalizedParams::class,
|
||||||
|
'site' => \TYPO3\CMS\Core\Site\Entity\SiteInterface::class,
|
||||||
|
'language' => \TYPO3\CMS\Core\Site\Entity\SiteLanguage::class,
|
||||||
|
'routing' => '\TYPO3\CMS\Core\Routing\SiteRouteResult|\TYPO3\CMS\Core\Routing\PageArguments',
|
||||||
|
'module' => \TYPO3\CMS\Backend\Module\ModuleInterface::class,
|
||||||
|
'moduleData' => \TYPO3\CMS\Backend\Module\ModuleData::class,
|
||||||
|
]));
|
||||||
|
|
||||||
|
override(\TYPO3\CMS\Core\Routing\SiteMatcher::matchRequest(), type(
|
||||||
|
\TYPO3\CMS\Core\Routing\SiteRouteResult::class,
|
||||||
|
\TYPO3\CMS\Core\Routing\RouteResultInterface::class
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
override(\TYPO3\CMS\Core\Routing\PageRouter::matchRequest(), type(
|
||||||
|
\TYPO3\CMS\Core\Routing\PageArguments::class,
|
||||||
|
\TYPO3\CMS\Core\Routing\RouteResultInterface::class
|
||||||
|
));
|
||||||
|
}
|
|
@ -127,15 +127,15 @@
|
||||||
"ci:coverage:functional": [
|
"ci:coverage:functional": [
|
||||||
"@ci:tests:create-directories",
|
"@ci:tests:create-directories",
|
||||||
"@coverage:create-directories",
|
"@coverage:create-directories",
|
||||||
"phpunit -c Build/phpunit/FunctionalTests.xml --whitelist Classes --coverage-php=build/coverage/functional.cov Tests/Functional"
|
"phpunit -c Build/phpunit/FunctionalTests.xml --whitelist Classes --coverage-php=.Build/coverage/functional.cov Tests/Functional"
|
||||||
],
|
],
|
||||||
"ci:coverage:merge": [
|
"ci:coverage:merge": [
|
||||||
"@coverage:create-directories",
|
"@coverage:create-directories",
|
||||||
"@php tools/phpcov merge --clover=build/logs/clover.xml build/coverage/"
|
"@php tools/phpcov merge --clover=build/logs/clover.xml .Build/coverage/"
|
||||||
],
|
],
|
||||||
"ci:coverage:unit": [
|
"ci:coverage:unit": [
|
||||||
"@coverage:create-directories",
|
"@coverage:create-directories",
|
||||||
"phpunit -c Build/phpunit/UnitTests.xml --whitelist Classes --coverage-php=build/coverage/unit.cov Tests/Unit"
|
"phpunit -c Build/phpunit/UnitTests.xml --whitelist Classes --coverage-php=.Build/coverage/unit.cov Tests/Unit"
|
||||||
],
|
],
|
||||||
"ci:json:lint": "find . ! -path '*/.cache/*' ! -path '*/.Build/*' ! -path '*/node_modules/*' -name '*.json' | xargs -r php .Build/bin/jsonlint -q",
|
"ci:json:lint": "find . ! -path '*/.cache/*' ! -path '*/.Build/*' ! -path '*/node_modules/*' -name '*.json' | xargs -r php .Build/bin/jsonlint -q",
|
||||||
"ci:php": [
|
"ci:php": [
|
||||||
|
@ -170,7 +170,7 @@
|
||||||
"ci:typoscript:lint": "typoscript-lint -c Configuration/TsLint.yml --ansi -n --fail-on-warnings -vvv Configuration/TypoScript",
|
"ci:typoscript:lint": "typoscript-lint -c Configuration/TsLint.yml --ansi -n --fail-on-warnings -vvv Configuration/TypoScript",
|
||||||
"ci:xliff:lint": "php Build/xliff/xliff-lint lint:xliff Resources/Private/Language",
|
"ci:xliff:lint": "php Build/xliff/xliff-lint lint:xliff Resources/Private/Language",
|
||||||
"ci:yaml:lint": "find . ! -path '*.Build/*' ! -path '*node_modules/*' \\( -name '*.yaml' -o -name '*.yml' \\) | xargs -r php ./.Build/bin/yaml-lint",
|
"ci:yaml:lint": "find . ! -path '*.Build/*' ! -path '*node_modules/*' \\( -name '*.yaml' -o -name '*.yml' \\) | xargs -r php ./.Build/bin/yaml-lint",
|
||||||
"coverage:create-directories": "mkdir -p build/coverage build/logs",
|
"coverage:create-directories": "mkdir -p .Build/coverage build/logs",
|
||||||
"docs:generate": "docker run --rm --pull always -v $(pwd):/project -it ghcr.io/typo3-documentation/render-guides:latest --config=Documentation",
|
"docs:generate": "docker run --rm --pull always -v $(pwd):/project -it ghcr.io/typo3-documentation/render-guides:latest --config=Documentation",
|
||||||
"fix:composer:normalize": "@composer normalize --no-check-lock",
|
"fix:composer:normalize": "@composer normalize --no-check-lock",
|
||||||
"fix:php": [
|
"fix:php": [
|
||||||
|
|
Loading…
Reference in a new issue