@@ -32,6 +32,7 @@ public static function setUpBeforeClass(): void {
32
32
$ table->
string (
'email ' )->
default (
'[email protected] ' );
33
33
$ table ->string ( 'password ' )->nullable ();
34
34
$ table ->string ( 'state ' )->nullable ();
35
+ $ table ->string ( 'null_value ' )->nullable ();
35
36
$ table ->integer ( 'user_test_id ' )->unsigned ()->nullable ();
36
37
$ table ->foreign ( 'user_test_id ' )->references ( 'id ' )->on ( 'user_tests ' );
37
38
$ table ->timestamps ();
@@ -113,6 +114,21 @@ public function testFluentMeta() {
113
114
$ this ->assertTrue ( $ user ->isMetaDirty ( 'foo ' , 'bar ' ), 'isMetaDirty should return true even if one of metas has changed ' );
114
115
$ this ->assertTrue ( $ user ->isMetaDirty ( 'foo,bar ' ), 'isMetaDirty should return true even if one of metas has changed ' );
115
116
117
+ //re retrieve user from database
118
+ /** @var UserTest $user */
119
+ $ user = UserTest::find ( $ user ->id );
120
+
121
+ $ this ->assertNull ( $ user ->null_value , 'null_value property should be null ' );
122
+ $ this ->assertNull ( $ user ->null_cast , 'null_cast property should be null ' );
123
+
124
+ $ user ->setMeta ( 'null_value ' , true );
125
+ $ user ->setMeta ( 'null_cast ' , true );
126
+
127
+ $ this ->assertTrue ( $ user ->getMeta ( 'null_value ' ), 'Meta should be set ' );
128
+ $ this ->assertTrue ( $ user ->getMeta ( 'null_cast ' ), 'Meta should be set ' );
129
+ $ this ->assertNull ( $ user ->null_value , 'null_value property should be null ' );
130
+ $ this ->assertNull ( $ user ->null_cast , 'null_cast property should be null ' );
131
+
116
132
$ user ->delete ();
117
133
118
134
$ this ->assertEquals ( 0 , $ metaData ->count (), 'Meta should be deleted from database after deleting user. ' );
0 commit comments