Commit Graph

4 Commits

Author SHA1 Message Date
Steve Boyd
360fbcd878 API phpunit9 support 2021-10-28 10:40:52 +13:00
Ingo Schommer
e51bd421a6 FIX InnoDB FULLTEXT compat in tests
> InnoDB FULLTEXT indexes have special transaction handling characteristics due its caching and batch processing behavior. Specifically, updates and insertions on a FULLTEXT index are processed at transaction commit time, which means that a FULLTEXT search can only see committed data. The following example demonstrates this behavior. The FULLTEXT search only returns a result after the inserted lines are committed.

https://dev.mysql.com/doc/refman/5.6/en/innodb-fulltext-index.html#innodb-fulltext-index-transaction
2020-04-09 11:05:19 +12:00
Ingo Schommer
dd839ca2d9 FIX Remove searchEngine() test that's using API wrong
Required to allow InnoDB usage, see https://github.com/silverstripe/silverstripe-framework/pull/9454.

This came up in https://github.com/silverstripe/silverstripe-cms/issues/1452, and wasn't fully addressed.
Either we allow boolean mode and all the constraints this brings around special character usage,
or we filter out those special characters, which makes boolean mode pointless.
You can't just pass arbitrary user input in a power-user function like this.
See https://dev.mysql.com/doc/refman/5.6/en/fulltext-boolean.html

Context: This used to work for some examples like "foo>*" under MyISAM,
presumably because it had a more lenient parser. InnoDB rightfully complains about this now.
2020-04-09 09:59:53 +12:00
Sam Minnee
5e3068ba13 MINOR: Add tests for some search-form fixes
These 2 tests validate that the following bugs have been fixed.

https://github.com/silverstripe/silverstripe-framework/issues/3212
https://github.com/silverstripe/silverstripe-cms/issues/1452
2018-11-10 12:07:49 +13:00