Commit eb1f4b8
committed
[TASK] Reset
It could be possible that unit tests sets dependency injection
container calling `GeneralUtility::setContainer()` to provide
service instances or mocked service instances specific bound
to that test, keeping a dirty state for following unit tests.
Executing unit tests in other orders, only as a subset or for
example randomized can reveal these pullation and eventualy
wrong expectation for other tests. [1]
This change adds a automatic cleanup to the tearDown for
unit tests ensuring a clean state, because there isn't a
easy way to reset that within tests without using native
php reflection API. So do it in a general place.
It may be possible to let the specific test setting such
a container intance to fail with the recommendation to
refactor the test into a functional test, but is left out
for now.
[1] https://review.typo3.org/c/Packages/TYPO3.CMS/+/88839
Releases: main, 8, 7GeneraulUtility::$container in UnitTestCase::tearDown()
1 parent 05fe9bb commit eb1f4b8
1 file changed
+12
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
139 | 151 | | |
140 | 152 | | |
141 | 153 | | |
| |||
0 commit comments