mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-21 23:36:14 +01:00
Commit graph

75 commits

Author SHA1 Message Date
Oliver Klee
9446d14b77
[TASK] Move a repository test from unit to functional (#1484)
Unit tests for repositories are quite a hassle as we then need to
set up all dependencies in `setUp()` ourselves.

So convert the test to a functional tests where we can rely on the
container to create and initialize the subject for us.
2024-10-06 20:50:24 +02:00
Oliver Klee
b2d2f2a705
[TASK] Ensure a type in a test (#1268) 2024-05-06 11:18:22 +00:00
Oliver Klee
248c759206
[TASK][!!!] Require a storage PID for the tea list (#1223)
Fixes #1024
Supersedes #1024
2024-04-15 11:13:57 +02:00
Oliver Klee
a014ea7efb
[BUGFIX] Load realistic, full TypoScript in the controller tests (#1224)
To be closer to a real-world scenario, we also should load the constants
of fluid_styled_content and the constants and setup of our own
extension.
2024-04-15 09:24:22 +02:00
Oliver Klee
188ca41922
[TASK] Reduce the DB fixtures some more (#1226)
Do not provide the PID where the PID is not relevant to the test.

This allows the reader to see more easily what is relevant for the
test.

Also reduce unnecessary quoting of integers in the DB fixtures.
2024-04-15 07:57:18 +02:00
Oliver Klee
e9019ddae8
[TASK] Test that TeaRepository.findByOwnerUid ignores the storage PID (#1227) 2024-04-15 07:21:27 +02:00
Oliver Klee
781c6f6521
[TASK] Separate the fixture TypoScript into setup and constants (#1225)
To prepare for more extended functional controller tests, we now
have a dedicated folder for fixture TypoScript setup, allowing us to have
a clear separation between setup and constants.
2024-04-15 07:19:53 +02:00
Oliver Klee
532c30a1ff
[TASK] Consistently quote string values in fixture CSV files (#1137) 2024-01-24 13:21:58 +01:00
Oliver Klee
94a494240e
[TASK] Prefer string casts over explictly calling __toString (#1136) 2024-01-24 13:21:49 +01:00
Oliver Klee
fe79124c0e
[TASK] Rework a test communicate its purpose more clearly (#1133)
When the ordering of items (by title) is verified, checking the
title instead of the UID makes this more clear.

Fixes #1132
2024-01-24 07:38:51 +01:00
Oliver Klee
eeda862e77
[!!!][TASK] Drop additional namespace segment for the Tea model (#1025)
The `Product` namespace segment in the domain model namespace
`TTN\Tea\Domain\Model` currently serves no purpose and only adds
confusion. So let's simplify the extension structure accordingly.

(I intended to use this to demonstrate DDD contexts, but never
built enough models in the Tea extension for this to actually
make sense.)

Fixes #1008
2024-01-16 15:21:21 +01:00
Oliver Klee
4335df7305
[TASK] Migrate the deprecated executeFrontendRequest in tests (#1116)
This method is deprecated. Starting with TYPO3 11LTS,
`executeFrontendSubRequest` should be used.

Co-authored-by: Daniel Siepmann <coding@daniel-siepmann.de>
2024-01-15 13:43:38 +01:00
Oliver Klee
7fe2758291
[TASK] Move the PHPUnit configuration files to Configuration/ (#1108)
The `Tests/` directory should only include test code, but not the
configuration files.

Fixes #1082
2024-01-08 00:41:08 +01:00
Oliver Klee
0ff0f83edd
[TASK] Add coverage configuration for functional tests (#1092)
We already had this for unit tests, but it was missing for
functional tests.

Also, we do not need to provide a path in this configuration - it
suffices to have this node present in the configuration files.

Closes #1078
2024-01-02 22:34:49 +01:00
Oliver Klee
8e3cc5b6a1
[CLEANUP] Sort the PHPUnit configuration options (#1091) 2023-12-19 12:29:19 +01:00
Oliver Klee
2c972eb11a
[CLEANUP] Autoformat the PHPUnit configuration files (#1084)
This avoids unrelated formatting changes in functional changes.
2023-12-19 12:17:04 +01:00
555c43e18b
[FEATURE] Add first functional test using a request (#1021)
That way the extension serves as an example on how to use the TYPO3
internal requests provided by the TYPO3 testing framework.
Those can be used as integration tests.
They are also often easier to set up on existing projects and allow to
refactor the code base, compared to functional and unit tests.

Resolves: #859
2023-11-27 14:18:04 +01:00
58971754c4
[TASK] Add missing test case for fetching none existing tea (#1017)
Dedicated test cases were added in the past.
This test case was not added yet.

Resolves: #858
2023-11-27 12:36:42 +00:00
d56d58ed04
[CLEANUP] Migrate typo3conf path to composer package name (#1012)
The tests now respect the TYPO3 extension key as well as the composer
package name.
There is no more need to use the old (no longer used) typo3conf/ext
path.

Resolves: #739
2023-11-27 12:10:13 +01:00
Oliver Klee
d9718fd054
[TASK] Split up the DB fixtures for the functional tests (#993)
This makes the fixture more minimal and reduces cross-dependencies
between tests.

Also consistently avoid quotes for integer data in CSV DB fixtures.

Fixes #988
2023-11-19 22:36:32 +01:00
Oliver Klee
d15bd079d6
[TASK] Migrate DB queries to CSV assertions in the functional tests (#998)
This makes the corresponding test a lot more concise and easier to
read.
2023-11-19 22:34:02 +01:00
Oliver Klee
3cdf8df7a0
[CLEANUP] Inline some variables in the tests (#997)
This makes the tests more concise while still keeping them readable.
2023-11-18 06:44:40 +01:00
Oliver Klee
3d92e0cc98
[CLEANUP] Use power of the DI container in the functional tests (#961) 2023-11-01 20:24:26 +01:00
Łukasz Uznański
bc64aedb38
[TASK] Use own configuration files for tests (#952)
Resolves: #902
2023-10-25 19:08:36 +02:00
Oliver Klee
bbe469169b
[FEATURE] Add Tea.ownerUid (#860)
This is a pre-patch for adding a CRUD plugin for tea records.

This property contains only the UID of the owner FE user, but not
a relation to a FE user model. This is because we neither have nor
need a FE user model for the purposes of the CRUD plugin.
2023-06-21 09:16:13 +02:00
Oliver Klee
77057e06a8
[TASK] Make the repository tests more fine-grained (#855)
Tests should only test one thing (if possible).
2023-06-20 09:10:31 +02:00
68372cc850
[TASK] Make all test cases final (#801)
Resolves: #797
2023-04-06 14:34:15 +00:00
Łukasz Uznański
7cd09a3b52
Upgrade to TYPO3 v12.2 (#746) 2023-02-08 17:26:08 +01:00
Oliver Klee
a6c4a86273
[BUGFIX] Get the functional tests to work with TYPO3 >= 12.1 (#704)
Starting with TYPO3 12.1, a request is required for the
`BackendConfigurationManager` to not crash:
https://review.typo3.org/c/Packages/TYPO3.CMS/+/76447

Also, a fix in that area has been merged (after the release of TYPO3 12.1)
that might allow us to remove our workaround again once we've updated to
TYPO3 12.2 or 12.1.3:
https://review.typo3.org/c/Packages/TYPO3.CMS/+/77028
2022-12-22 09:47:55 +01:00
Oliver Klee
1e157e6958
[TASK] Upgrade to the testing framework V7 (#629)
* [TASK] Upgrade to the testing framework V7

This is required to also run the tests on TYPO3 12LTS.

* Update CHANGELOG.md

Co-authored-by: Lina Wolf <48202465+linawolf@users.noreply.github.com>
Co-authored-by: Chris Müller <2566282+brotkrueml@users.noreply.github.com>
2022-10-13 13:52:25 +02:00
Oliver Klee
0a1a00dd22
[CLEANUP] Drop usages of ObjectManager whereever possible (#616)
Fixes #596
2022-10-10 02:15:33 +02:00
Oliver Klee
4537d5fca9
[CLEANUP] Drop some redundant PHPDoc type annotations (#611) 2022-10-06 17:51:04 +02:00
Lina Wolf
8be6d02315
[TASK] Convert functional test fixtures to CSV (#601)
Fixes #600

Co-authored-by: lina.wolf <lwolf@w-commerce.de>
2022-10-03 19:10:08 +02:00
Lina Wolf
e469041db7
[CLEANUP] Use typed properties instead of @var annotations (#599)
The `@var` annotations where left where it is not possible yet to replace them in PHP 7.4.

Fixes #550

Co-authored-by: lina.wolf <lwolf@w-commerce.de>
2022-10-03 19:00:55 +02:00
Oliver Klee
dc6c0eedeb
[TASK] Change misleading variable names in some tests (#470)
We are not using any "container" class here, and hence the results from
repository find methods should be named `$result` instead of `$container`.
2022-06-28 23:52:02 +02:00
Oliver Klee
569fad3626
[CLEANUP] Remove type annotations for fields from the testing framework (#453)
As in these cases the type annotations from the base class are used,
we can avoid PHPStan warnings about discrepancies between our annotations
and the annotations from the testing framework for the corresponding
fields in the superclass.
2022-06-01 15:26:47 +02:00
Oliver Klee
71a08a1c20
[BUGFIX] Mark the repository test as also covering the model (#436)
We currently can only test the lazy loading of the model image
with a functional test that retrieves a model from the database
via the repository.

So the functional test for the repository also needs to be marked as
covering the model class to make our code coverage correct.
2022-04-29 14:54:41 +02:00
Oliver Klee
f1a0fbef04
[CLEANUP] Use prepared statements for SQL queries in the tests (#443)
Also add another type check to help with debugging failed queries.
2022-04-29 14:27:47 +02:00
Mathias Bolt Lesniak
3ca00b78e4
[BUGFIX] Use executeQuery() in functional test example (#422)
This avoids potential false results in the tests because it doesn't add additional restrictions for starttime, endtime, deleted, and hidden.

Fixes #421
2022-04-11 14:15:43 +02:00
Oliver Klee
869f348ce8
[CLEANUP] Make a type annotation more specific (#415) 2022-03-30 12:14:04 +02:00
Oliver Klee
a1a84a511f
[BUGFIX] Configure DI and avoid using ObjectManager in TYPO3 11LTS (#399)
`ObjectManager` is deprecated in V11.

Fixes #387
2022-03-02 02:07:25 +01:00
Oliver Klee
4f2c813d7f
[TASK] Switch to the core testing framework (#361)
The TYPO3 core testing framework has more person-power for maintenance
behind it compared to the nimut testing framework. So we should use that.
2022-02-20 15:18:46 +01:00
Łukasz Uznański
822bc5561e
[TASK] Drop TeaController functional test (#379)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.pl>
2022-02-11 21:11:30 +01:00
Oliver Klee
8520b55898
[CLEANUP] Remove code specific to TYPO3 9LTS (#367) 2022-01-13 03:26:30 +01:00
Łukasz Uznański
f0127b3b64
[TASK] Fix php cs related to official configuration (#341)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.com>
2021-11-17 13:14:43 +01:00
Oliver Klee
6616f79634
[TASK] Upgrade to PHPUnit 8.5 (#328)
Also upgrade to nimut/testing-framework 6.0.

This removes another blocker for running the tests with TYPO3 11LTS.

Fixes #326
2021-11-03 01:15:21 +01:00
Oliver Klee
ca9a8e4e15
[TASK] Always use @covers annotations in the tests (#298) 2021-09-15 02:11:15 +02:00
Łukasz Uznański
4bde411dd8
[TASK] Remove author annotations (#294)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.com>
2021-09-07 08:51:11 +02:00
Łukasz Uznański
46e598e7e1
[TASK] Enable tests in t3 v10 (#77)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.pl>
2020-07-23 12:41:27 +02:00
Andreas Wolf
3f3c9285d9 [CLEANUP] Fix PHP_Codesniffer issues
Resolves: #21
2019-12-07 12:13:32 +01:00