}> */ public static function providePrependMaxPubdate(): array { return [ ['', '(e.date <= ?)', [1700000000]], ['intitle:sale', '(e.date <= ?) AND ((e.title LIKE ?))', [1700000000, '%sale%']], ['intitle:a OR intitle:b', '(e.date <= ?) AND ((e.title LIKE ?) OR (e.title LIKE ?))', [1700000000, '%a%', '%b%']], ]; } /** @param list $expectedValues */ #[DataProvider('providePrependMaxPubdate')] public function test_prepend_restrictsTheSearchInsteadOfWideningIt(string $input, string $expectedSql, array $expectedValues): void { $booleanSearch = new FreshRSS_BooleanSearch($input); $maxPubdate = new FreshRSS_Search(''); $maxPubdate->setMaxPubdate(1700000000); $booleanSearch->prepend($maxPubdate); [$values, $sql] = FreshRSS_EntryDAO::sqlBooleanSearch('e.', $booleanSearch); self::assertSame($expectedSql, trim($sql)); self::assertSame($expectedValues, $values); } }