您好,登錄后才能下訂單哦!
這篇文章主要介紹Laravel Scout陣列驅動程序是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Laravel Scout 陣列驅動是由 @Sti3bas 提供的一個包,它讓 Laravel Scout 搜索測試變得更加方便:
這個包為 Laravel Scout 增加了一個
array
驅動,并提供了自定義的 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
方法,該方法允許你偽造模型的搜索索引記錄。
$user = factory(User::class)->create([ 'id' => 123, 'name' => 'Peter', 'email' => 'peter@example.com', ]); Search::fakeRecord($user, [ 'id' => 123, 'name' => 'John', ], false); $record = User::search()->where('id', 123)->raw()['hits'][0]; $this->assertEquals('Peter', $record['name']); // fails $this->assertEquals('John', $record['name']); // passes $this->assertTrue(!isset($record['email'])); // passes
您可以在Sti3bas / laravel-scout-array-driver
上了解有關此軟件包的更多信息,獲取完整的安裝說明以及在GitHub上 查看源代碼。
以上是“Laravel Scout陣列驅動程序是什么”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。