@@ -48,7 +48,43 @@ public void TestUpdateWithDynamicObject()
4848 Parameter ( 0 ) . Is ( "Steve" ) ;
4949 Parameter ( 1 ) . Is ( 50 ) ;
5050 Parameter ( 2 ) . Is ( 1 ) ;
51- }
51+ }
52+
53+ [ Test ]
54+ public void TestUpdateWithDynamicObjectAndOriginalValues ( )
55+ {
56+ dynamic newRecord = new SimpleRecord ( ) ;
57+ newRecord . Id = 1 ;
58+ newRecord . Name = "Steve" ;
59+ newRecord . Age = 50 ;
60+ dynamic originalRecord = new SimpleRecord ( ) ;
61+ originalRecord . Id = 2 ;
62+ originalRecord . Name = "Steve" ;
63+ originalRecord . Age = 50 ;
64+
65+ _db . Users . Update ( newRecord , originalRecord ) ;
66+ GeneratedSqlIs ( "update [dbo].[Users] set [Id] = @p1 where [dbo].[Users].[Id] = @p2" ) ;
67+ Parameter ( 0 ) . Is ( 1 ) ;
68+ Parameter ( 1 ) . Is ( 2 ) ;
69+ }
70+
71+ [ Test ]
72+ public void TestUpdateWithDynamicObjectsAndOriginalValues ( )
73+ {
74+ dynamic newRecord = new SimpleRecord ( ) ;
75+ newRecord . Id = 1 ;
76+ newRecord . Name = "Steve" ;
77+ newRecord . Age = 50 ;
78+ dynamic originalRecord = new SimpleRecord ( ) ;
79+ originalRecord . Id = 2 ;
80+ originalRecord . Name = "Steve" ;
81+ originalRecord . Age = 50 ;
82+
83+ _db . Users . Update ( new [ ] { newRecord } , new [ ] { originalRecord } ) ;
84+ GeneratedSqlIs ( "update [dbo].[Users] set [Id] = @p1 where [dbo].[Users].[Id] = @p2" ) ;
85+ Parameter ( 0 ) . Is ( 1 ) ;
86+ Parameter ( 1 ) . Is ( 2 ) ;
87+ }
5288
5389 [ Test ]
5490 public void TestUpdateWithDynamicObjectList ( )
@@ -118,6 +154,40 @@ public void TestUpdateWithStaticObject()
118154 Parameter ( 3 ) . Is ( 1 ) ;
119155 }
120156
157+ [ Test ]
158+ public void TestUpdateWithStaticObjectAndOriginalObject ( )
159+ {
160+ var newUser = new User
161+ {
162+ Id = 1 ,
163+ Name = "Steve" ,
164+ Age = 50
165+ } ;
166+ var originalUser = new User ( ) { Id = 2 , Name = "Steve" , Age = 50 } ;
167+ _db . Users . Update ( newUser , originalUser ) ;
168+ GeneratedSqlIs (
169+ "update [dbo].[Users] set [Id] = @p1 where [dbo].[Users].[Id] = @p2" ) ;
170+ Parameter ( 0 ) . Is ( 1 ) ;
171+ Parameter ( 1 ) . Is ( 2 ) ;
172+ }
173+
174+ [ Test ]
175+ public void TestUpdateWithStaticObjectsAndOriginalObject ( )
176+ {
177+ var newUser = new User
178+ {
179+ Id = 1 ,
180+ Name = "Steve" ,
181+ Age = 50
182+ } ;
183+ var originalUser = new User ( ) { Id = 2 , Name = "Steve" , Age = 50 } ;
184+ _db . Users . Update ( new [ ] { newUser } , new [ ] { originalUser } ) ;
185+ GeneratedSqlIs (
186+ "update [dbo].[Users] set [Id] = @p1 where [dbo].[Users].[Id] = @p2" ) ;
187+ Parameter ( 0 ) . Is ( 1 ) ;
188+ Parameter ( 1 ) . Is ( 2 ) ;
189+ }
190+
121191 [ Test ]
122192 public void TestUpdateWithStaticObjectWithShoutyCase ( )
123193 {
0 commit comments