diff --git a/src/Query/Filters/Operators.php b/src/Query/Filters/Operators.php index cfc728c..77e9401 100644 --- a/src/Query/Filters/Operators.php +++ b/src/Query/Filters/Operators.php @@ -30,8 +30,8 @@ class Operators const NEXT_MONTH = 'next_month'; const NEXT_YEAR = 'next_year'; - CONST AND = 'and'; - CONST OR = 'or'; + const AND = 'and'; + const OR = 'or'; // TODO: Formula filter condition diff --git a/tests/FilterBagTest.php b/tests/FilterBagTest.php index ed3d54a..7fc6d57 100644 --- a/tests/FilterBagTest.php +++ b/tests/FilterBagTest.php @@ -55,22 +55,21 @@ $filterBag->addFilterBag($nameFilterBag); }); - it('creates a filter bag with the AND operator and two conditions', function () { $filterBag = new FilterBag(Operators::AND); - # Filter for all entries that are - # (Known for == UNIVAC && Known for == ENIAC) + // Filter for all entries that are + // (Known for == UNIVAC && Known for == ENIAC) $filterBag->addFilter( - Filter::rawFilter("Known for", [ - "multi_select" => ["contains" => "UNIVAC"], + Filter::rawFilter('Known for', [ + 'multi_select' => ['contains' => 'UNIVAC'], ]) ); $filterBag->addFilter( - Filter::rawFilter("Known for", [ - "multi_select" => ["contains" => "ENIAC"], + Filter::rawFilter('Known for', [ + 'multi_select' => ['contains' => 'ENIAC'], ]) ); @@ -98,15 +97,13 @@ it('creates a filter bag with the OR operator and three conditions', function () { $filterBag = new FilterBag(Operators::OR); - - # Filter for all entries that have - # (Name == Grace || Name == Jean || Name == Ada) + // Filter for all entries that have + // (Name == Grace || Name == Jean || Name == Ada) $filterBag - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Grace")) - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Jean")) - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Ada")); - + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Grace')) + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Jean')) + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Ada')); $filterBagQuery = $filterBag->toQuery(); @@ -121,7 +118,6 @@ $this->assertArrayHasKey('contains', $filterQuery['text']); $this->assertEquals('Grace', $filterQuery['text']['contains']); - // check value of second filter compound $filterQuery = $filterBagQuery[Operators::OR][1]; $this->assertEquals('Jean', $filterQuery['text']['contains']); @@ -129,26 +125,25 @@ // check value of third filter compound $filterQuery = $filterBagQuery[Operators::OR][2]; $this->assertEquals('Ada', $filterQuery['text']['contains']); - }); -it('creates a filter bag with with the AND operator and a nested OR condition', function() { +it('creates a filter bag with with the AND operator and a nested OR condition', function () { - # Filter for all entries that are - # (KnownFor == Univac && (Name == Grace || Name == Jean)) + // Filter for all entries that are + // (KnownFor == Univac && (Name == Grace || Name == Jean)) $filterBag = new FilterBag(Operators::AND); $filterBag->addFilter( - Filter::rawFilter("Known for", [ - "multi_select" => ["contains" => "UNIVAC"], + Filter::rawFilter('Known for', [ + 'multi_select' => ['contains' => 'UNIVAC'], ]) ); $nameFilterBag = new FilterBag(Operators::OR); $nameFilterBag - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Grace")) - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Jean")); + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Grace')) + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Jean')); $filterBag->addFilterBag($nameFilterBag); @@ -190,23 +185,22 @@ $this->assertEquals('Jean', $filterQuery['text']['contains']); }); -it('throws an exception for nesting too many filter bags', function() { - +it('throws an exception for nesting too many filter bags', function () { $this->expectException(HandlingException::class); $this->expectExceptionMessage('The maximum nesting level of compound filters must not exceed 2.'); $filterBag = new FilterBag(Operators::AND); $filterBag->addFilter( - Filter::rawFilter("Known for", [ - "multi_select" => ["contains" => "UNIVAC"], + Filter::rawFilter('Known for', [ + 'multi_select' => ['contains' => 'UNIVAC'], ]) ); $nameFilterBag = new FilterBag(Operators::OR); $nameFilterBag - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Grace")) - ->addFilter(Filter::textFilter("Name", Operators::CONTAINS, "Jean")); + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Grace')) + ->addFilter(Filter::textFilter('Name', Operators::CONTAINS, 'Jean')); $anotherBag = new FilterBag(); $nameFilterBag->addFilterBag($anotherBag); diff --git a/tests/FilterTest.php b/tests/FilterTest.php index bd47f5c..f040114 100644 --- a/tests/FilterTest.php +++ b/tests/FilterTest.php @@ -2,7 +2,6 @@ use FiveamCode\LaravelNotionApi\Exceptions\HandlingException; use FiveamCode\LaravelNotionApi\Query\Filters\Filter; -use FiveamCode\LaravelNotionApi\Query\Filters\FilterBag; use FiveamCode\LaravelNotionApi\Query\Filters\Operators; it('creates a text filter with the given data', function () { @@ -39,4 +38,4 @@ $this->expectException(HandlingException::class); $this->expectExceptionMessage('Invalid filter definition.'); $filter->toArray(); -}); \ No newline at end of file +});