1
0
Fork 0
mirror of https://github.com/archtechx/virtualcolumn.git synced 2025-12-12 12:34:03 +00:00

Throw exception if a user is trying to overwrite the data without first loading it

This commit is contained in:
Nick Potts 2024-04-09 07:18:43 +08:00
parent 9cda7d498c
commit 5426e41a5c
2 changed files with 25 additions and 2 deletions

View file

@ -128,6 +128,20 @@ class VirtualColumnTest extends TestCase
$this->assertSame($encodedBar->bar, 'bar');
}
/** @test */
public function model_doesnt_overwrite_when_selectively_fetching() {
$this->expectExceptionMessage('Data column was not loaded from the database. Make sure the data column is selected in the query.');
FooModel::create([
'id' => 1,
'foo' => 'bar'
]);
$foo = FooModel::query()->first(['id']);
$foo->bar = 'baz';
$foo->save();
}
/** @test */
public function decoding_works_with_strict_mode_enabled() {
FooModel::shouldBeStrict();