Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit de8a2f0

Browse files
committed
Change UpdateCommandFilter to use an extension method
1 parent 1d22996 commit de8a2f0

File tree

6 files changed

+78
-27
lines changed

6 files changed

+78
-27
lines changed

tests/ServiceStack.OrmLite.Tests/Async/OrmLiteUpdateTestsAsync.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public async Task Can_filter_update_method1_to_insert_date()
7878
await CreateAndInitializeAsync(db, 2);
7979

8080
ResetUpdateDateAsync(db);
81-
await db.UpdateAsync(cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)),
81+
await db.UpdateAsync(cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)),
8282
new DefaultValues { Id = 1, DefaultInt = 45 }, new DefaultValues { Id = 2, DefaultInt = 72 });
8383
VerifyUpdateDateAsync(db);
8484
VerifyUpdateDateAsync(db, id: 2);
@@ -134,7 +134,7 @@ public async Task Can_filter_update_method2_to_insert_date()
134134

135135
ResetUpdateDateAsync(db);
136136
await db.UpdateAsync(new DefaultValues { Id = 1, DefaultInt = 2342 }, p => p.Id == 1,
137-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
137+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
138138
VerifyUpdateDateAsync(db);
139139
}
140140
}
@@ -150,7 +150,7 @@ public async Task Can_filter_update_method3_to_insert_date()
150150
var row = await db.SingleByIdAsync<DefaultValues>(1);
151151
row.DefaultInt = 3245;
152152
row.DefaultDouble = 978.423;
153-
await db.UpdateAsync(row, cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
153+
await db.UpdateAsync(row, cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
154154
VerifyUpdateDateAsync(db);
155155
}
156156
}
@@ -164,7 +164,7 @@ public async Task Can_filter_update_method4_to_insert_date()
164164

165165
ResetUpdateDateAsync(db);
166166
await db.UpdateAsync<DefaultValues>(new { DefaultInt = 765 }, p => p.Id == 1,
167-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
167+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
168168
VerifyUpdateDateAsync(db);
169169
}
170170
}
@@ -178,7 +178,7 @@ public async Task Can_filter_updateAll_to_insert_date()
178178

179179
ResetUpdateDateAsync(db);
180180
db.UpdateAll(new[] { new DefaultValues { Id = 1, DefaultInt = 45 }, new DefaultValues { Id = 2, DefaultInt = 72 } },
181-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
181+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
182182
VerifyUpdateDateAsync(db);
183183
VerifyUpdateDateAsync(db, id: 2);
184184
}
@@ -193,7 +193,7 @@ public async Task Can_filter_updateOnly_method1_to_insert_date()
193193

194194
ResetUpdateDateAsync(db);
195195
db.UpdateOnly(() => new DefaultValues { DefaultInt = 345 }, p => p.Id == 1,
196-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
196+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
197197
VerifyUpdateDateAsync(db);
198198
}
199199
}
@@ -207,7 +207,7 @@ public async Task Can_filter_updateOnly_method2_to_insert_date()
207207

208208
ResetUpdateDateAsync(db);
209209
await db.UpdateOnlyAsync(() => new DefaultValues { DefaultInt = 345 }, db.From<DefaultValues>().Where(p => p.Id == 1),
210-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
210+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
211211
VerifyUpdateDateAsync(db);
212212
}
213213
}
@@ -223,7 +223,7 @@ public async Task Can_filter_updateOnly_method3_to_insert_date()
223223
var row = await db.SingleByIdAsync<DefaultValues>(1);
224224
row.DefaultDouble = 978.423;
225225
await db.UpdateOnlyAsync(row, db.From<DefaultValues>().Update(p => p.DefaultDouble),
226-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
226+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
227227
VerifyUpdateDateAsync(db);
228228
}
229229
}
@@ -239,7 +239,7 @@ public async Task Can_filter_updateOnly_method4_to_insert_date()
239239
var row = await db.SingleByIdAsync<DefaultValues>(1);
240240
row.DefaultDouble = 978.423;
241241
await db.UpdateOnlyAsync(row, p => p.DefaultDouble, p => p.Id == 1,
242-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
242+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
243243
VerifyUpdateDateAsync(db);
244244
}
245245
}
@@ -255,7 +255,7 @@ public async Task Can_filter_updateOnly_method5_to_insert_date()
255255
var row = await db.SingleByIdAsync<DefaultValues>(1);
256256
row.DefaultDouble = 978.423;
257257
await db.UpdateOnlyAsync(row, new[] { nameof(DefaultValues.DefaultDouble) }, p => p.Id == 1,
258-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
258+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
259259
VerifyUpdateDateAsync(db);
260260
}
261261
}
@@ -270,7 +270,7 @@ public async Task Can_filter_updateAdd_expression_to_insert_date()
270270
ResetUpdateDateAsync(db);
271271

272272
var count = await db.UpdateAddAsync(() => new DefaultValues { DefaultInt = 5, DefaultDouble = 7.2 }, p => p.Id == 1,
273-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
273+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
274274

275275
Assert.That(count, Is.EqualTo(1));
276276
var row = await db.SingleByIdAsync<DefaultValues>(1);
@@ -291,7 +291,7 @@ public async Task Can_filter_updateAdd_sqlexpression_to_insert_date()
291291

292292
var where = db.From<DefaultValues>().Where(p => p.Id == 1);
293293
var count = await db.UpdateAddAsync(() => new DefaultValues { DefaultInt = 5, DefaultDouble = 7.2 }, where,
294-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
294+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
295295

296296
Assert.That(count, Is.EqualTo(1));
297297
var row = await db.SingleByIdAsync<DefaultValues>(1);

tests/ServiceStack.OrmLite.Tests/DefaultValueTests.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public void Can_filter_update_method1_to_insert_date()
109109
CreateAndInitialize(db, 2);
110110

111111
ResetUpdateDate(db);
112-
db.Update(cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)),
112+
db.Update(cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)),
113113
new DefaultValues { Id = 1, DefaultInt = 45 }, new DefaultValues { Id = 2, DefaultInt = 72 });
114114
VerifyUpdateDate(db);
115115
VerifyUpdateDate(db, id: 2);
@@ -138,7 +138,7 @@ public void Can_filter_update_method2_to_insert_date()
138138

139139
ResetUpdateDate(db);
140140
db.Update(new DefaultValues { Id = 1, DefaultInt = 2342 }, p => p.Id == 1,
141-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
141+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
142142
VerifyUpdateDate(db);
143143
}
144144
}
@@ -154,7 +154,7 @@ public void Can_filter_update_method3_to_insert_date()
154154
var row = db.SingleById<DefaultValues>(1);
155155
row.DefaultInt = 3245;
156156
row.DefaultDouble = 978.423;
157-
db.Update(row, cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
157+
db.Update(row, cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
158158
VerifyUpdateDate(db);
159159
}
160160
}
@@ -168,7 +168,7 @@ public void Can_filter_update_method4_to_insert_date()
168168

169169
ResetUpdateDate(db);
170170
db.Update<DefaultValues>(new { DefaultInt = 765 }, p => p.Id == 1,
171-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
171+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
172172
VerifyUpdateDate(db);
173173
}
174174
}
@@ -182,7 +182,7 @@ public void Can_filter_updateAll_to_insert_date()
182182

183183
ResetUpdateDate(db);
184184
db.UpdateAll(new [] { new DefaultValues { Id = 1, DefaultInt = 45 }, new DefaultValues { Id = 2, DefaultInt = 72 } },
185-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
185+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
186186
VerifyUpdateDate(db);
187187
VerifyUpdateDate(db, id: 2);
188188
}
@@ -197,7 +197,7 @@ public void Can_filter_updateOnly_method1_to_insert_date()
197197

198198
ResetUpdateDate(db);
199199
db.UpdateOnly(() => new DefaultValues {DefaultInt = 345}, p => p.Id == 1,
200-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
200+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
201201
VerifyUpdateDate(db);
202202
}
203203
}
@@ -211,7 +211,7 @@ public void Can_filter_updateOnly_method2_to_insert_date()
211211

212212
ResetUpdateDate(db);
213213
db.UpdateOnly(() => new DefaultValues { DefaultInt = 345 }, db.From<DefaultValues>().Where(p => p.Id == 1),
214-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
214+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
215215
VerifyUpdateDate(db);
216216
}
217217
}
@@ -227,7 +227,7 @@ public void Can_filter_updateOnly_method3_to_insert_date()
227227
var row = db.SingleById<DefaultValues>(1);
228228
row.DefaultDouble = 978.423;
229229
db.UpdateOnly(row, db.From<DefaultValues>().Update(p => p.DefaultDouble),
230-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
230+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
231231
VerifyUpdateDate(db);
232232
}
233233
}
@@ -243,7 +243,7 @@ public void Can_filter_updateOnly_method4_to_insert_date()
243243
var row = db.SingleById<DefaultValues>(1);
244244
row.DefaultDouble = 978.423;
245245
db.UpdateOnly(row, p => p.DefaultDouble, p => p.Id == 1,
246-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
246+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
247247
VerifyUpdateDate(db);
248248
}
249249
}
@@ -259,7 +259,7 @@ public void Can_filter_updateOnly_method5_to_insert_date()
259259
var row = db.SingleById<DefaultValues>(1);
260260
row.DefaultDouble = 978.423;
261261
db.UpdateOnly(row, new[] { nameof(DefaultValues.DefaultDouble) }, p => p.Id == 1,
262-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
262+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
263263
VerifyUpdateDate(db);
264264
}
265265
}
@@ -274,7 +274,7 @@ public void Can_filter_updateAdd_expression_to_insert_date()
274274
ResetUpdateDate(db);
275275

276276
var count = db.UpdateAdd(() => new DefaultValues { DefaultInt = 5, DefaultDouble = 7.2 }, p => p.Id == 1,
277-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
277+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
278278

279279
Assert.That(count, Is.EqualTo(1));
280280
var row = db.SingleById<DefaultValues>(1);
@@ -295,7 +295,7 @@ public void Can_filter_updateAdd_sqlexpression_to_insert_date()
295295

296296
var where = db.From<DefaultValues>().Where(p => p.Id == 1);
297297
var count = db.UpdateAdd(() => new DefaultValues { DefaultInt = 5, DefaultDouble = 7.2 }, where,
298-
cmd => UpdateCommandFilter.SetUpdateDate<DefaultValues>(cmd, nameof(DefaultValues.UpdatedDateUtc)));
298+
cmd => cmd.SetUpdateDate<DefaultValues>(nameof(DefaultValues.UpdatedDateUtc)));
299299

300300
Assert.That(count, Is.EqualTo(1));
301301
var row = db.SingleById<DefaultValues>(1);
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
using System.Linq;
2+
using NUnit.Framework;
3+
using ServiceStack.DataAnnotations;
4+
using ServiceStack.Model;
5+
using ServiceStack.Text;
6+
7+
namespace ServiceStack.OrmLite.Tests.Issues
8+
{
9+
public class LRDCategoria : IHasId<int>
10+
{
11+
[Alias("IDDCATEGORIA")]
12+
[AutoIncrement]
13+
[PrimaryKey]
14+
public int Id { get; set; }
15+
16+
[Alias("CODICE")]
17+
[Required]
18+
[Index(Unique = true)]
19+
[StringLength(50)]
20+
public string Codice { get; set; }
21+
}
22+
23+
public class NoUpdateIssue : OrmLiteTestBase
24+
{
25+
public NoUpdateIssue() : base(Dialect.SqlServer) {}
26+
27+
[Test]
28+
public void Does_update_record()
29+
{
30+
using (var db = OpenDbConnection())
31+
{
32+
db.DropAndCreateTable<LRDCategoria>();
33+
34+
db.Insert(new LRDCategoria { Codice = "A" });
35+
36+
var row = db.Select<LRDCategoria>().FirstOrDefault();
37+
38+
row.Codice = "";
39+
40+
db.Update(row);
41+
42+
row = db.Select<LRDCategoria>().FirstOrDefault();
43+
44+
row.PrintDump();
45+
46+
Assert.That(row.Codice, Is.EqualTo(""));
47+
}
48+
}
49+
}
50+
}

tests/ServiceStack.OrmLite.Tests/OrmLiteTestBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public class Config
2424
public static string PostgreSqlDb = "Server=localhost;Port=5432;User Id=test;Password=test;Database=test;Pooling=true;MinPoolSize=0;MaxPoolSize=200";
2525
public static string FirebirdDb = @"User=SYSDBA;Password=masterkey;Database=C:\src\ServiceStack.OrmLite\tests\ServiceStack.OrmLite.Tests\App_Data\TEST.FDB;DataSource=localhost;Dialect=3;charset=ISO8859_1;";
2626

27-
public static Dialect DefaultDialect = Dialect.Sqlite;
27+
public static Dialect DefaultDialect = Dialect.SqlServer;
2828

2929
public static IOrmLiteDialectProvider DefaultProvider = SqlServerDialect.Provider;
3030
public static string DefaultConnection = SqlServerBuildDb;

tests/ServiceStack.OrmLite.Tests/ServiceStack.OrmLite.Tests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@
149149
<Compile Include="Issues\MergeParamsIssue.cs" />
150150
<Compile Include="Issues\MultiThreadedUpdateTransactionIssue.cs" />
151151
<Compile Include="Issues\NoSqlLoggingIssue.cs" />
152+
<Compile Include="Issues\NoUpdateIssue.cs" />
152153
<Compile Include="Issues\ParamNameIssues.cs" />
153154
<Compile Include="MultipleConnectionIdTests.cs" />
154155
<Compile Include="Shared\DefaultValues.cs" />

tests/ServiceStack.OrmLite.Tests/Shared/UpdateCommandFilter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55

66
namespace ServiceStack.OrmLite.Tests.Shared
77
{
8-
public class UpdateCommandFilter
8+
public static class UpdateCommandFilter
99
{
10-
public static void SetUpdateDate<T>(IDbCommand cmd, string fieldName) where T : new()
10+
public static void SetUpdateDate<T>(this IDbCommand cmd, string fieldName) where T : new()
1111
{
1212
var dialectProvider = OrmLiteConfig.DialectProvider;
1313
var field = typeof(T).GetProperty(fieldName);

0 commit comments

Comments
 (0)