Skip to content

Commit

Permalink
Fixed units
Browse files Browse the repository at this point in the history
  • Loading branch information
odiaseo committed Nov 18, 2017
1 parent 0eeebb1 commit 32539db
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 24 deletions.
2 changes: 1 addition & 1 deletion src/Client/ClientInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public function index(array $payload);

public function search(SearchBuilder $builder, array $options);

public function buildSearchQueryPayloadCollection(SearchBuilder $builder, array $options): Collection;
public function buildSearchQueryPayloadCollection(SearchBuilder $builder, array $options = []): Collection;

public function searchRaw(Model $model, $query);

Expand Down
2 changes: 1 addition & 1 deletion tests/DataCollector/ElasticsearchDataCollectorTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public function setUp()

public function testCollectorName()
{
$this->assertSame('elastic-search', $this->collector->getName());
$this->assertSame('Elastic Search', $this->collector->getName());
}

public function testCollectedDataContainsRequiredKeys()
Expand Down
34 changes: 18 additions & 16 deletions tests/ElasticEngineTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,13 @@
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Foundation\Console\Kernel;
use Mockery;
use Prophecy\Argument;
use stdClass;
use SynergyScoutElastic\Builders\SearchBuilder;
use SynergyScoutElastic\Client\ClientInterface;
use SynergyScoutElastic\Facades\ElasticClient;
use SynergyScoutElastic\Stubs\ModelStub;
use SynergyScoutElastic\Stubs\SearchBuilderStub;

class ElasticEngineTest extends TestCase
{
Expand Down Expand Up @@ -50,7 +52,7 @@ private function getEngine($method, $params, $builder = null, $options = [])
$kernel = $this->prophesize(Kernel::class);

if ($method == 'search') {
$client->$method($builder, $options)->shouldbeCalled();
$client->$method(Argument::cetera())->shouldbeCalled();
$client->buildSearchQueryPayloadCollection($builder, $options)->willReturn($params);
} elseif ($method) {
$client->$method($params)->shouldbeCalled();
Expand Down Expand Up @@ -118,7 +120,7 @@ public function testIfTheSearchMethodWithSpecifiedLimitBuildsCorrectPayload()
]
];

$builder = (new SearchBuilder($this->mockModel(), 'test query'))->take(10);
$builder = (new SearchBuilderStub($this->mockModel(), 'test query'))->take(10);
$engine = $this->getEngine('search', $params, $builder);
$engine->search($builder);

Expand Down Expand Up @@ -146,7 +148,7 @@ public function testIfTheSeachMethodWithSpecifieddOrderBuildsCorrectPayload()
]
];

$builder = (new SearchBuilder($this->mockModel(), 'test query'))
$builder = (new SearchBuilderStub($this->mockModel(), 'test query'))
->orderBy('name', 'asc');
$engine = $this->getEngine('search', $params, $builder);
$engine->search($builder);
Expand Down Expand Up @@ -225,7 +227,7 @@ public function testIfTheSearchMethodWithSpecifiedWhereClauseBuildsCorrectPayloa

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'phone'))
$builder = (new SearchBuilderStub($model, 'phone'))
->where('brand', 'apple')
->where('color', '=', 'red')
->where('memory', '>=', 32)
Expand Down Expand Up @@ -271,7 +273,7 @@ public function testIfTheSearchMethodWithSpecifiedWhereInClauseBuildsCorrectPayl
];

$model = $this->mockModel();
$builder = (new SearchBuilder($model, 'test query'))->whereIn('id', [1, 2, 3, 4, 5]);
$builder = (new SearchBuilderStub($model, 'test query'))->whereIn('id', [1, 2, 3, 4, 5]);

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -309,7 +311,7 @@ public function testIfTheSearchMethodWithSpecifiedWherenotinClauseBuildsCorrectP

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'test query'))->whereNotIn('id', [1, 2, 3, 4, 5]);
$builder = (new SearchBuilderStub($model, 'test query'))->whereNotIn('id', [1, 2, 3, 4, 5]);

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -350,7 +352,7 @@ public function testIfTheSearchMethodWithSpecifiedWherebetweenClauseBuildsCorrec

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'test query'))->whereBetween('price', [100, 300]);
$builder = (new SearchBuilderStub($model, 'test query'))->whereBetween('price', [100, 300]);

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -391,7 +393,7 @@ public function testIfTheSearchMethodWithSpecifiedWherenotbetweenClauseBuildsCor

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'test query'))->whereNotBetween('price', [100, 300]);
$builder = (new SearchBuilderStub($model, 'test query'))->whereNotBetween('price', [100, 300]);

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -429,7 +431,7 @@ public function testIfTheSearchMethodWithSpecifiedWhereexistsClauseBuildsCorrect

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'test query'))->whereExists('sale');
$builder = (new SearchBuilderStub($model, 'test query'))->whereExists('sale');

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -467,7 +469,7 @@ public function testIfTheSearchMethodWithSpecifiedWherenotexistsClauseBuildsCorr

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'test query'))->whereNotExists('sale');
$builder = (new SearchBuilderStub($model, 'test query'))->whereNotExists('sale');

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -508,7 +510,7 @@ public function testIfTheSearchMethodWithSpecifiedWhereregexpClauseBuildsCorrect

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'phone'))->whereRegexp('brand', 'a[a-z]+', 'ALL');
$builder = (new SearchBuilderStub($model, 'phone'))->whereRegexp('brand', 'a[a-z]+', 'ALL');

$this->getEngine('search', $params, $builder)->search($builder);

Expand All @@ -535,7 +537,7 @@ public function testIfTheSearchMethodWithSpecifiedRuleBuildsCorrectPayload()

$model = $this->mockModel();

$builder = (new SearchBuilder($model, 'John'))->strategy(function ($builder) {
$builder = (new SearchBuilderStub($model, 'John'))->strategy(function ($builder) {
return [
'must' => [
'match' => [
Expand Down Expand Up @@ -568,7 +570,7 @@ public function testIfTheSearchMethodWithAnAsteriskBuildsCorrectPayload()

$model = $this->mockModel();

$builder = new SearchBuilder($model, '');
$builder = new SearchBuilderStub($model, '');

$this->getEngine('search', $params, $builder)->search($builder);

Expand Down Expand Up @@ -640,7 +642,7 @@ public function testIfThePaginateMethodBuildsCorrectPayload()
];

$model = $this->mockModel();
$builder = new SearchBuilder($model, 'test query');
$builder = new SearchBuilderStub($model, 'test query');
$engine = $this->getEngine('search', $params, $builder, ['limit' => $size, 'page' => 2]);

$engine->paginate($builder, $size, 2);
Expand Down Expand Up @@ -734,7 +736,7 @@ public function testIfTheExplainMethodBuildsCorrectPayload()
{
$model = $this->mockModel();

$builder = new SearchBuilder($model, 'test query');
$builder = new SearchBuilderStub($model, 'test query');

$this->getEngine('debug', true, $builder)->explain();

Expand All @@ -744,7 +746,7 @@ public function testIfTheExplainMethodBuildsCorrectPayload()
public function testIfTheProfileMethodBuildsCorrectPayload()
{
$model = $this->mockModel();
$builder = new SearchBuilder($model, 'test query');
$builder = new SearchBuilderStub($model, 'test query');

$this->getEngine('profile', true, $builder)->profile();

Expand Down
17 changes: 11 additions & 6 deletions tests/Models/SearchableModelTest.php
Original file line number Diff line number Diff line change
@@ -1,16 +1,21 @@
<?php
namespace SynergyScoutElastic\Models;

namespace SynergyScoutElastic\Models;

use Laravel\Scout\Events\ModelsImported;
use SynergyScoutElastic\Builders\SearchBuilder;
use SynergyScoutElastic\Stubs\ModelStub;
use SynergyScoutElastic\TestCase;

class SearchableModelTest extends TestCase {
class SearchableModelTest extends TestCase
{

public function testSearchableModelGeneratesQueries()
{

public function testSearchableModelGeneratesQueries(){
$model = new ModelStub();
$result = $model->search('shoe', function () {
});

$model = new ModelStub();
$model->search('shoe', function(){});
$this->assertInstanceOf(SearchBuilder::class, $result);
}
}
20 changes: 20 additions & 0 deletions tests/Stubs/SearchBuilderStub.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?php

namespace SynergyScoutElastic\Stubs;

use Prophecy\Argument;
use Prophecy\Prophet;
use SynergyScoutElastic\Builders\SearchBuilder;
use SynergyScoutElastic\ElasticEngine;

class SearchBuilderStub extends SearchBuilder
{
public function engine()
{
$engine = (new Prophet())->prophesize(ElasticEngine::class);

$engine->search(Argument::class)->willReturn([]);

return $engine;
}
}

0 comments on commit 32539db

Please sign in to comment.