如何断言(在PHPUnit测试中)Eloquent集合包含一个项目?
这样的事情:
$expected = factory::create(Item::class)->create();
$eloquentCollection = someData(); // Item::orderBy(...)->...->get();
$this->assertContains($expected, $eloquentCollection);
答案 0 :(得分:18)
您可以使用contains
方法将assertTrue
测试用作:
$this->assertTrue($eloquentCollection->contains($expected));
您还可以将键/值对传递给contains方法,该方法将确定集合中是否存在给定的对:
$this->assertTrue($eloquentCollection->contains('id', $expected->id));