Skip to content

Commit 842f7da

Browse files
committed
Syntax erreor detection
1 parent 6348a1b commit 842f7da

File tree

3 files changed

+22
-12
lines changed

3 files changed

+22
-12
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1010

1111
- Bad copy/paste in the [README](README.md) file
1212
- Allow `null` value in Aggregate result
13+
- Use correct namespace in the [README](README.md) file
14+
15+
### Added
16+
17+
- Detection of syntax error from Redis response
1318

1419
## [1.1.0]
1520

README.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ composer require macfja/redisearch
1616

1717
```php
1818
$client = new \Predis\Client(/* ... */);
19-
$builder = new \MacFJA\RedisSearch\Index\Builder($client);
19+
$builder = new \MacFJA\RediSearch\Index\Builder($client);
2020

2121
// Field can be create in advance
22-
$address = new \MacFJA\RedisSearch\Index\Builder\GeoField('address');
22+
$address = new \MacFJA\RediSearch\Index\Builder\GeoField('address');
2323

2424
$builder
2525
->withName('person')
@@ -35,7 +35,7 @@ $builder
3535

3636
```php
3737
$client = new \Predis\Client(/* ... */);
38-
$index = new \MacFJA\RedisSearch\Index('person', $client);
38+
$index = new \MacFJA\RediSearch\Index('person', $client);
3939
$index->addFromArray([
4040
'firstname' => 'Joe',
4141
'lastname' => 'Doe',
@@ -48,7 +48,7 @@ $index->addFromArray([
4848

4949
```php
5050
$client = new \Predis\Client(/* ... */);
51-
$search = new \MacFJA\RedisSearch\Search($client);
51+
$search = new \MacFJA\RediSearch\Search($client);
5252

5353
$results = $search
5454
->withIndex('person')
@@ -61,14 +61,14 @@ $results = $search
6161
#### Create a search query
6262

6363
```php
64-
use \MacFJA\RedisSearch\Search\QueryBuilder\NumericFacet;
65-
use \MacFJA\RedisSearch\Search\QueryBuilder\Negation;
66-
use \MacFJA\RedisSearch\Search\QueryBuilder\GeoFacet;
67-
use \MacFJA\RedisSearch\Search\QueryBuilder\Optional;
68-
use \MacFJA\RedisSearch\Search\QueryBuilder\Word;
69-
use \MacFJA\RedisSearch\Search\GeoFilter;
70-
71-
$queryBuilder = \MacFJA\RedisSearch\Search\QueryBuilder::create();
64+
use \MacFJA\RediSearch\Search\QueryBuilder\NumericFacet;
65+
use \MacFJA\RediSearch\Search\QueryBuilder\Negation;
66+
use \MacFJA\RediSearch\Search\QueryBuilder\GeoFacet;
67+
use \MacFJA\RediSearch\Search\QueryBuilder\Optional;
68+
use \MacFJA\RediSearch\Search\QueryBuilder\Word;
69+
use \MacFJA\RediSearch\Search\GeoFilter;
70+
71+
$queryBuilder = \MacFJA\RediSearch\Search\QueryBuilder::create();
7272
$query = $queryBuilder
7373
->addExpression(NumericFacet::greaterThan('age', 17))
7474
->addString('Doe')

src/Helper/DataHelper.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
use function is_scalar;
3232
use function is_string;
3333
use MacFJA\RediSearch\Index\Exception\IndexNotFoundException;
34+
use MacFJA\RediSearch\Search\Exception\SyntaxErrorException;
3435
use RuntimeException;
3536
use function settype;
3637
use function sprintf;
@@ -106,6 +107,7 @@ public static function assertArrayOf(array $array, string $type, $exception = nu
106107
* @param array<mixed>|mixed $result
107108
*
108109
* @throws IndexNotFoundException
110+
* @throws SyntaxErrorException
109111
*/
110112
public static function handleRawResult($result): void
111113
{
@@ -117,6 +119,9 @@ public static function handleRawResult($result): void
117119
if (is_string($result) && 'unknown index name' === strtolower($result)) {
118120
throw new IndexNotFoundException();
119121
}
122+
if (is_string($result) && 0 === strpos($result, 'Syntax error')) {
123+
throw new SyntaxErrorException($result);
124+
}
120125
}
121126

122127
/**

0 commit comments

Comments
 (0)