Laravel Scout アレイドライバーについてご存知ですか?

藏色散人
リリース: 2020-07-23 14:59:02
転載
2713 人が閲覧しました

次のチュートリアルコラムでは、テスト用のLaravel Scout配列ドライバーについて紹介します。

Laravel Scout 配列ドライバーは @Sti3bas によって提供されるパッケージで、Laravel Scout の検索テストをより便利にします:

Laravel Scout アレイドライバーについてご存知ですか?

This package
array

ドライバーを Laravel Scout に追加し、検索に関連する機能のテストを容易にするカスタム PHPUnit アサーションを提供します。

パッケージには、検索をより便利にするためのメソッドを提供する Search

ファサードが付属しています。
$user = factory(User::class)->create([
    'name' => 'Oliver',
]);

$user2 = User::withoutSyncingToSearch(function () {
    return factory(User::class)->create([
        'name' => 'John',
    ]);
});

Search::assertContains($user) // passes
    ->assertContains($user2) // fails
    ->assertContains($user, function ($record) { // passes
        return $record['name'] === 'Oliver';
    })
    ->assertContains($user, function ($record) { // fails
        return $record['name'] === 'John';
    })
    ->assertContains($user2, function ($record) { // fails
        return $record['name'] === 'John';
    });
ログイン後にコピー

Search ファサードはたくさんあります。メソッドは Readme に記載されています。私の意見では、最も優れているのは、モデルの検索インデックス レコードを偽装できる

fakeRecord

メソッドです。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$user = factory(User::class)-&gt;create([ &amp;#39;id&amp;#39; =&gt; 123, &amp;#39;name&amp;#39; =&gt; &amp;#39;Peter&amp;#39;, &amp;#39;email&amp;#39; =&gt; &amp;#39;peter@example.com&amp;#39;, ]); Search::fakeRecord($user, [ &amp;#39;id&amp;#39; =&gt; 123, &amp;#39;name&amp;#39; =&gt; &amp;#39;John&amp;#39;, ], false); $record = User::search()-&gt;where(&amp;#39;id&amp;#39;, 123)-&gt;raw()[&amp;#39;hits&amp;#39;][0]; $this-&gt;assertEquals(&amp;#39;Peter&amp;#39;, $record[&amp;#39;name&amp;#39;]); // fails $this-&gt;assertEquals(&amp;#39;John&amp;#39;, $record[&amp;#39;name&amp;#39;]); // passes $this-&gt;assertTrue(!isset($record[&amp;#39;email&amp;#39;])); // passes</pre><div class="contentsignin">ログイン後にコピー</div></div> このパッケージの詳細については、<code>Sti3bas/laravel-scout-array-driver で確認でき、完全なインストール手順を入手し、GitHub でソース コードを参照できます。

元のアドレス: https://laravel-news.com/laravel-scout-a...

翻訳アドレス: https://learnku.com/laravel/t /33376

以上がLaravel Scout アレイドライバーについてご存知ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:learnku.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!