Skip to content

Commit af17176

Browse files
committed
Codecov
Signed-off-by: Sascha Greuel <[email protected]>
1 parent 7eb2365 commit af17176

File tree

3 files changed

+46
-17
lines changed

3 files changed

+46
-17
lines changed

.github/workflows/Test.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,6 @@ jobs:
6969
fi
7070
7171
- name: Run codecov
72-
uses: codecov/codecov-action@v4
72+
uses: codecov/codecov-action@v5
73+
with:
74+
token: ${{ secrets.CODECOV_TOKEN }}

phpstan.neon.dist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
parameters:
2+
treatPhpDocTypesAsCertain: false
23
level: 6
34
paths:
45
- src

src/Filters/QueryMatchFilter.php

Lines changed: 42 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -152,22 +152,48 @@ public function filter(array|object $collection): array
152152
$comparisonResult = null;
153153

154154
if ($notNothing) {
155-
$comparisonResult = match ($operator) {
156-
null => AccessHelper::keyExists($node, $key, $this->magicIsAllowed) || (!$key),
157-
"=", "==" => $this->compareEquals($selectedNode, $comparisonValue),
158-
"!=", "!==", "<>" => !$this->compareEquals($selectedNode, $comparisonValue),
159-
'=~' => @\preg_match($comparisonValue, $selectedNode),
160-
'<' => $this->compareLessThan($selectedNode, $comparisonValue),
161-
'<=' => $this->compareLessThan($selectedNode, $comparisonValue)
162-
|| $this->compareEquals($selectedNode, $comparisonValue),
163-
'>' => $this->compareLessThan($comparisonValue, $selectedNode), //rfc semantics
164-
'>=' => $this->compareLessThan($comparisonValue, $selectedNode) //rfc semantics
165-
|| $this->compareEquals($selectedNode, $comparisonValue),
166-
"in" => \is_array($comparisonValue) && \in_array($selectedNode, $comparisonValue, true),
167-
'nin', "!in" => \is_array($comparisonValue)
168-
&& !\in_array($selectedNode, $comparisonValue, true),
169-
default => false,
170-
};
155+
$comparisonResult = false;
156+
157+
switch ($operator) {
158+
case null:
159+
$comparisonResult = AccessHelper::keyExists($node, $key, $this->magicIsAllowed) || (!$key);
160+
break;
161+
case "=":
162+
case "==":
163+
$comparisonResult = $this->compareEquals($selectedNode, $comparisonValue);
164+
break;
165+
case "!=":
166+
case "!==":
167+
case "<>":
168+
$comparisonResult = !$this->compareEquals($selectedNode, $comparisonValue);
169+
break;
170+
case '=~':
171+
$comparisonResult = @\preg_match($comparisonValue, $selectedNode);
172+
break;
173+
case '<':
174+
$comparisonResult = $this->compareLessThan($selectedNode, $comparisonValue);
175+
break;
176+
case '<=':
177+
$comparisonResult = $this->compareLessThan($selectedNode, $comparisonValue)
178+
|| $this->compareEquals($selectedNode, $comparisonValue);
179+
break;
180+
case '>':
181+
$comparisonResult = $this->compareLessThan($comparisonValue, $selectedNode); //rfc semantics
182+
break;
183+
case '>=':
184+
$comparisonResult = $this->compareLessThan($comparisonValue, $selectedNode) //rfc semantics
185+
|| $this->compareEquals($selectedNode, $comparisonValue);
186+
break;
187+
case "in":
188+
$comparisonResult = \is_array($comparisonValue)
189+
&& \in_array($selectedNode, $comparisonValue, true);
190+
break;
191+
case 'nin':
192+
case "!in":
193+
$comparisonResult = \is_array($comparisonValue)
194+
&& !\in_array($selectedNode, $comparisonValue, true);
195+
break;
196+
}
171197
}
172198

173199
if ($negateFilter) {

0 commit comments

Comments
 (0)