@@ -1052,6 +1052,42 @@ public function testIncrement()
1052
1052
$ this ->assertEquals (1 , $ user ->age );
1053
1053
}
1054
1054
1055
+ public function testMultiply ()
1056
+ {
1057
+ DB ::table ('users ' )->insert ([
1058
+ ['name ' => 'John Doe ' , 'salary ' => 3000 , 'note ' => 'adult ' ],
1059
+ ['name ' => 'Jane Doe ' , 'salary ' => 1000 , 'note ' => 'minor ' ],
1060
+ ['name ' => 'Robert Roe ' , 'salary ' => null ],
1061
+ ['name ' => 'Mark Moe ' ],
1062
+ ]);
1063
+
1064
+ $ user = DB ::table ('users ' )->where ('name ' , 'John Doe ' )->first ();
1065
+ $ this ->assertEquals (3000 , $ user ->salary );
1066
+
1067
+ DB ::table ('users ' )->where ('name ' , 'John Doe ' )->multiply ('salary ' );
1068
+ $ user = DB ::table ('users ' )->where ('name ' , 'John Doe ' )->first ();
1069
+ $ this ->assertEquals (3000 , $ user ->salary );
1070
+
1071
+ DB ::table ('users ' )->where ('name ' , 'John Doe ' )->multiply ('salary ' , 2 );
1072
+ $ user = DB ::table ('users ' )->where ('name ' , 'John Doe ' )->first ();
1073
+ $ this ->assertEquals (6000 , $ user ->salary );
1074
+
1075
+ DB ::table ('users ' )->where ('name ' , 'Jane Doe ' )->multiply ('salary ' , 10 , ['note ' => 'adult ' ]);
1076
+ $ user = DB ::table ('users ' )->where ('name ' , 'Jane Doe ' )->first ();
1077
+ $ this ->assertEquals (10000 , $ user ->salary );
1078
+ $ this ->assertEquals ('adult ' , $ user ->note );
1079
+
1080
+ DB ::table ('users ' )->multiply ('salary ' );
1081
+ $ user = DB ::table ('users ' )->where ('name ' , 'John Doe ' )->first ();
1082
+ $ this ->assertEquals (6000 , $ user ->salary );
1083
+ $ user = DB ::table ('users ' )->where ('name ' , 'Jane Doe ' )->first ();
1084
+ $ this ->assertEquals (10000 , $ user ->salary );
1085
+ $ user = DB ::table ('users ' )->where ('name ' , 'Robert Roe ' )->first ();
1086
+ $ this ->assertNull ($ user ->salary );
1087
+ $ user = DB ::table ('users ' )->where ('name ' , 'Mark Moe ' )->first ();
1088
+ $ this ->assertEquals (0 , $ user ->salary );
1089
+ }
1090
+
1055
1091
public function testProjections ()
1056
1092
{
1057
1093
DB ::table ('items ' )->insert ([
0 commit comments