diff --git a/tests/ModelTest.php b/tests/ModelTest.php index 75723c1cb..f85c418aa 100644 --- a/tests/ModelTest.php +++ b/tests/ModelTest.php @@ -750,4 +750,23 @@ public function testGuardedModel() $model->fill(['level1' => $dataValues]); $this->assertEquals($dataValues, $model->getAttribute('level1')); } + + public function testFirstOrCreate(): void + { + $name = 'Jane Poe'; + + /** @var User $user */ + $user = User::where('name', $name)->first(); + $this->assertNull($user); + + /** @var User $user */ + $user = User::firstOrCreate(compact('name')); + $this->assertInstanceOf(Model::class, $user); + $this->assertTrue($user->exists); + $this->assertEquals($name, $user->name); + + /** @var User $check */ + $check = User::where('name', $name)->first(); + $this->assertEquals($user->_id, $check->_id); + } }