你知道Laravel Scout阵列驱动程序吗?

2022-05-15 0 431

下面由Laravel教程栏目给大家介绍用于测试的 Laravel Scout 阵列驱动程序,希望对需要的朋友有所帮助!

你知道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上 查看源代码。

原文地址:https://laravel-news.com/laravel-scout-a…

译文地址:https://learnku.com/laravel/t/33376

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 你知道Laravel Scout阵列驱动程序吗? https://www.jike1995.com/35974.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务