Datei: UnitTestGenerator/UnitTests/UnitTests.cs
Last Commit (0bec001)
1 | // |
2 | // Copyright (c) 2002-2016 Mirko Matytschak |
3 | // (www.netdataobjects.de) |
4 | // |
5 | // Author: Mirko Matytschak |
6 | // |
7 | // Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated |
8 | // documentation files (the "Software"), to deal in the Software without restriction, including without limitation |
9 | // the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the |
10 | // Software, and to permit persons to whom the Software is furnished to do so, subject to the following |
11 | // conditions: |
12 | |
13 | // The above copyright notice and this permission notice shall be included in all copies or substantial portions |
14 | // of the Software. |
15 | // |
16 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED |
17 | // TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
18 | // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF |
19 | // CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. |
21 | |
22 | |
23 | using System; |
24 | using System.Linq; |
25 | using System.Reflection; |
26 | using System.Diagnostics; |
27 | using System.Collections; |
28 | using System.Collections.Generic; |
29 | using NDO; |
30 | using NDO.Mapping; |
31 | using NDO.Query; |
32 | using NUnit.Framework; |
33 | using RelationTestClasses; |
34 | |
35 | namespace RelationUnitTests |
36 | { |
37 | |
38 | public class PmFactory |
39 | { |
40 | ····static PersistenceManager pm; |
41 | ····public static PersistenceManager NewPersistenceManager() |
42 | ····{ |
43 | ········if (pm == null) |
44 | ········{ |
45 | pm = new PersistenceManager( @"C:\Projekte\NDO\UnitTestGenerator\UnitTests\bin\Debug\NDOMapping. xml") ; |
46 | ············pm.LogPath = @"C:\Projekte\NDO\UnitTestGenerator"; |
47 | ········} |
48 | ········else |
49 | ········{ |
50 | ············pm.UnloadCache(); |
51 | ········} |
52 | ········return pm; |
53 | ····} |
54 | } |
55 | |
56 | |
57 | [TestFixture] |
58 | public class TestAgrDir1NoTblAuto |
59 | { |
60 | ····AgrDir1NoTblAutoLeft ownVar; |
61 | ····AgrDir1NoTblAutoRight otherVar; |
62 | ····PersistenceManager pm; |
63 | ····[SetUp] |
64 | ····public void Setup() |
65 | ····{ |
66 | ········pm = PmFactory.NewPersistenceManager(); |
67 | ········ownVar = new AgrDir1NoTblAutoLeft(); |
68 | ········otherVar = new AgrDir1NoTblAutoRight(); |
69 | ····} |
70 | ····[TearDown] |
71 | ····public void TearDown() |
72 | ····{ |
73 | ········try |
74 | ········{ |
75 | ············pm.UnloadCache(); |
76 | ············var l = pm.Objects<AgrDir1NoTblAutoLeft>().ResultTable; |
77 | ············pm.Delete(l); |
78 | ············pm.Save(); |
79 | ············pm.UnloadCache(); |
80 | ············var m = pm.Objects<AgrDir1NoTblAutoRight>().ResultTable; |
81 | ············pm.Delete(m); |
82 | ············pm.Save(); |
83 | ············pm.UnloadCache(); |
84 | ············decimal count; |
85 | ············count = (decimal) new NDOQuery<AgrDir1NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
86 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
87 | ············count = (decimal) new NDOQuery<AgrDir1NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
88 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
89 | ········} |
90 | ········catch (Exception) |
91 | ········{ |
92 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
93 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
94 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
95 | ········} |
96 | ····} |
97 | ····[Test] |
98 | ····public void TestSaveReload() |
99 | ····{ |
100 | ········CreateObjects(); |
101 | ········QueryOwn(); |
102 | Assert. NotNull( ownVar, "No Query Result") ; |
103 | Assert. NotNull( ownVar. RelField, "No related object") ; |
104 | ····} |
105 | ····[Test] |
106 | ····public void TestSaveReloadNull() |
107 | ····{ |
108 | ········CreateObjects(); |
109 | ········QueryOwn(); |
110 | Assert. NotNull( ownVar, "No Query Result") ; |
111 | Assert. NotNull( ownVar. RelField, "No related object") ; |
112 | ········ownVar.RelField = null; |
113 | ········pm.Save(); |
114 | ········pm.UnloadCache(); |
115 | ········QueryOwn(); |
116 | Assert. NotNull( ownVar, "No Query Result") ; |
117 | Assert. Null( ownVar. RelField, "There should be no object") ; |
118 | ····} |
119 | ····[Test] |
120 | ····public void TestChangeKeyHolderLeft() |
121 | ····{ |
122 | ········CreateObjects(); |
123 | ········QueryOwn(); |
124 | Assert. NotNull( ownVar, "No Query Result") ; |
125 | Assert. NotNull( ownVar. RelField, "No related object") ; |
126 | ········int x = ownVar.RelField.Dummy; |
127 | ········ownVar.Dummy = 4711; |
128 | ········pm.Save(); |
129 | ········pm.UnloadCache(); |
130 | ········QueryOwn(); |
131 | Assert. NotNull( ownVar, "No Query Result") ; |
132 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
133 | Assert. NotNull( ownVar. RelField, "No related object") ; |
134 | ····} |
135 | ····[Test] |
136 | ····public void TestChangeKeyHolderLeftNoTouch() |
137 | ····{ |
138 | ········CreateObjects(); |
139 | ········QueryOwn(); |
140 | Assert. NotNull( ownVar, "No Query Result") ; |
141 | Assert. NotNull( ownVar. RelField, "No related object") ; |
142 | ········ownVar.Dummy = 4711; |
143 | ········pm.Save(); |
144 | ········pm.UnloadCache(); |
145 | ········QueryOwn(); |
146 | Assert. NotNull( ownVar, "No Query Result") ; |
147 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
148 | Assert. NotNull( ownVar. RelField, "No related object") ; |
149 | ····} |
150 | ····[Test] |
151 | ····public void TestUpdateOrder() |
152 | ····{ |
153 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
154 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
155 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1NoTblAutoLeft)})) |
156 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1NoTblAutoRight)})), "Wrong order #1"); |
157 | ········Debug.WriteLine("AgrDir1NoTblAutoLeft"); |
158 | ····} |
159 | ····void CreateObjects() |
160 | ····{ |
161 | ········pm.MakePersistent(ownVar); |
162 | ········pm.MakePersistent(otherVar); |
163 | ········ownVar.AssignRelation(otherVar); |
164 | ········pm.Save(); |
165 | ········pm.UnloadCache(); |
166 | ····} |
167 | ····void QueryOwn() |
168 | ····{ |
169 | ········var q = new NDOQuery<AgrDir1NoTblAutoLeft>(pm); |
170 | ········ownVar = q.ExecuteSingle(); |
171 | ····} |
172 | ····void QueryOther() |
173 | ····{ |
174 | ········var q = new NDOQuery<AgrDir1NoTblAutoRight>(pm); |
175 | ········otherVar = q.ExecuteSingle(); |
176 | ····} |
177 | } |
178 | |
179 | |
180 | [TestFixture] |
181 | public class TestAgrDir1TblAuto |
182 | { |
183 | ····AgrDir1TblAutoLeft ownVar; |
184 | ····AgrDir1TblAutoRight otherVar; |
185 | ····PersistenceManager pm; |
186 | ····[SetUp] |
187 | ····public void Setup() |
188 | ····{ |
189 | ········pm = PmFactory.NewPersistenceManager(); |
190 | ········ownVar = new AgrDir1TblAutoLeft(); |
191 | ········otherVar = new AgrDir1TblAutoRight(); |
192 | ····} |
193 | ····[TearDown] |
194 | ····public void TearDown() |
195 | ····{ |
196 | ········try |
197 | ········{ |
198 | ············pm.UnloadCache(); |
199 | ············var l = pm.Objects<AgrDir1TblAutoLeft>().ResultTable; |
200 | ············pm.Delete(l); |
201 | ············pm.Save(); |
202 | ············pm.UnloadCache(); |
203 | ············var m = pm.Objects<AgrDir1TblAutoRight>().ResultTable; |
204 | ············pm.Delete(m); |
205 | ············pm.Save(); |
206 | ············pm.UnloadCache(); |
207 | ············decimal count; |
208 | ············count = (decimal) new NDOQuery<AgrDir1TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
209 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
210 | ············count = (decimal) new NDOQuery<AgrDir1TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
211 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
212 | ········} |
213 | ········catch (Exception) |
214 | ········{ |
215 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
216 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
217 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
218 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
219 | ········} |
220 | ····} |
221 | ····[Test] |
222 | ····public void TestSaveReload() |
223 | ····{ |
224 | ········CreateObjects(); |
225 | ········QueryOwn(); |
226 | Assert. NotNull( ownVar, "No Query Result") ; |
227 | Assert. NotNull( ownVar. RelField, "No related object") ; |
228 | ····} |
229 | ····[Test] |
230 | ····public void TestSaveReloadNull() |
231 | ····{ |
232 | ········CreateObjects(); |
233 | ········QueryOwn(); |
234 | Assert. NotNull( ownVar, "No Query Result") ; |
235 | Assert. NotNull( ownVar. RelField, "No related object") ; |
236 | ········ownVar.RelField = null; |
237 | ········pm.Save(); |
238 | ········pm.UnloadCache(); |
239 | ········QueryOwn(); |
240 | Assert. NotNull( ownVar, "No Query Result") ; |
241 | Assert. Null( ownVar. RelField, "There should be no object") ; |
242 | ····} |
243 | ····[Test] |
244 | ····public void TestChangeKeyHolderLeft() |
245 | ····{ |
246 | ········CreateObjects(); |
247 | ········QueryOwn(); |
248 | Assert. NotNull( ownVar, "No Query Result") ; |
249 | Assert. NotNull( ownVar. RelField, "No related object") ; |
250 | ········int x = ownVar.RelField.Dummy; |
251 | ········ownVar.Dummy = 4711; |
252 | ········pm.Save(); |
253 | ········pm.UnloadCache(); |
254 | ········QueryOwn(); |
255 | Assert. NotNull( ownVar, "No Query Result") ; |
256 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
257 | Assert. NotNull( ownVar. RelField, "No related object") ; |
258 | ····} |
259 | ····[Test] |
260 | ····public void TestChangeKeyHolderLeftNoTouch() |
261 | ····{ |
262 | ········CreateObjects(); |
263 | ········QueryOwn(); |
264 | Assert. NotNull( ownVar, "No Query Result") ; |
265 | Assert. NotNull( ownVar. RelField, "No related object") ; |
266 | ········ownVar.Dummy = 4711; |
267 | ········pm.Save(); |
268 | ········pm.UnloadCache(); |
269 | ········QueryOwn(); |
270 | Assert. NotNull( ownVar, "No Query Result") ; |
271 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
272 | Assert. NotNull( ownVar. RelField, "No related object") ; |
273 | ····} |
274 | ····void CreateObjects() |
275 | ····{ |
276 | ········pm.MakePersistent(ownVar); |
277 | ········pm.MakePersistent(otherVar); |
278 | ········ownVar.AssignRelation(otherVar); |
279 | ········pm.Save(); |
280 | ········pm.UnloadCache(); |
281 | ····} |
282 | ····void QueryOwn() |
283 | ····{ |
284 | ········var q = new NDOQuery<AgrDir1TblAutoLeft>(pm); |
285 | ········ownVar = q.ExecuteSingle(); |
286 | ····} |
287 | ····void QueryOther() |
288 | ····{ |
289 | ········var q = new NDOQuery<AgrDir1TblAutoRight>(pm); |
290 | ········otherVar = q.ExecuteSingle(); |
291 | ····} |
292 | } |
293 | |
294 | |
295 | [TestFixture] |
296 | public class TestAgrBi11NoTblAuto |
297 | { |
298 | ····AgrBi11NoTblAutoLeft ownVar; |
299 | ····AgrBi11NoTblAutoRight otherVar; |
300 | ····PersistenceManager pm; |
301 | ····[SetUp] |
302 | ····public void Setup() |
303 | ····{ |
304 | ········pm = PmFactory.NewPersistenceManager(); |
305 | ········ownVar = new AgrBi11NoTblAutoLeft(); |
306 | ········otherVar = new AgrBi11NoTblAutoRight(); |
307 | ····} |
308 | ····[TearDown] |
309 | ····public void TearDown() |
310 | ····{ |
311 | ········try |
312 | ········{ |
313 | ············pm.UnloadCache(); |
314 | ············var l = pm.Objects<AgrBi11NoTblAutoLeft>().ResultTable; |
315 | ············pm.Delete(l); |
316 | ············pm.Save(); |
317 | ············pm.UnloadCache(); |
318 | ············var m = pm.Objects<AgrBi11NoTblAutoRight>().ResultTable; |
319 | ············pm.Delete(m); |
320 | ············pm.Save(); |
321 | ············pm.UnloadCache(); |
322 | ············decimal count; |
323 | ············count = (decimal) new NDOQuery<AgrBi11NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
324 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
325 | ············count = (decimal) new NDOQuery<AgrBi11NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
326 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
327 | ········} |
328 | ········catch (Exception) |
329 | ········{ |
330 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
331 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
332 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
333 | ········} |
334 | ····} |
335 | ····[Test] |
336 | ····public void TestSaveReload() |
337 | ····{ |
338 | ········CreateObjects(); |
339 | ········QueryOwn(); |
340 | Assert. NotNull( ownVar, "No Query Result") ; |
341 | Assert. NotNull( ownVar. RelField, "No related object") ; |
342 | ····} |
343 | ····[Test] |
344 | ····public void TestSaveReloadNull() |
345 | ····{ |
346 | ········CreateObjects(); |
347 | ········QueryOwn(); |
348 | Assert. NotNull( ownVar, "No Query Result") ; |
349 | Assert. NotNull( ownVar. RelField, "No related object") ; |
350 | ········ownVar.RelField = null; |
351 | ········pm.Save(); |
352 | ········pm.UnloadCache(); |
353 | ········QueryOwn(); |
354 | Assert. NotNull( ownVar, "No Query Result") ; |
355 | Assert. Null( ownVar. RelField, "There should be no object") ; |
356 | ····} |
357 | ····[Test] |
358 | ····public void TestChangeKeyHolderLeft() |
359 | ····{ |
360 | ········CreateObjects(); |
361 | ········QueryOwn(); |
362 | Assert. NotNull( ownVar, "No Query Result") ; |
363 | Assert. NotNull( ownVar. RelField, "No related object") ; |
364 | ········int x = ownVar.RelField.Dummy; |
365 | ········ownVar.Dummy = 4711; |
366 | ········pm.Save(); |
367 | ········pm.UnloadCache(); |
368 | ········QueryOwn(); |
369 | Assert. NotNull( ownVar, "No Query Result") ; |
370 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
371 | Assert. NotNull( ownVar. RelField, "No related object") ; |
372 | ····} |
373 | ····[Test] |
374 | ····public void TestChangeKeyHolderRight() |
375 | ····{ |
376 | ········CreateObjects(); |
377 | ········QueryOther(); |
378 | Assert. NotNull( otherVar, "No Query Result") ; |
379 | Assert. NotNull( otherVar. RelField, "No related object") ; |
380 | ········int x = otherVar.RelField.Dummy; |
381 | ········otherVar.Dummy = 4711; |
382 | ········pm.Save(); |
383 | ········pm.UnloadCache(); |
384 | ········QueryOther(); |
385 | Assert. NotNull( otherVar, "No Query Result") ; |
386 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
387 | Assert. NotNull( otherVar. RelField, "No related object") ; |
388 | ····} |
389 | ····[Test] |
390 | ····public void TestChangeKeyHolderLeftNoTouch() |
391 | ····{ |
392 | ········CreateObjects(); |
393 | ········QueryOwn(); |
394 | Assert. NotNull( ownVar, "No Query Result") ; |
395 | Assert. NotNull( ownVar. RelField, "No related object") ; |
396 | ········ownVar.Dummy = 4711; |
397 | ········pm.Save(); |
398 | ········pm.UnloadCache(); |
399 | ········QueryOwn(); |
400 | Assert. NotNull( ownVar, "No Query Result") ; |
401 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
402 | Assert. NotNull( ownVar. RelField, "No related object") ; |
403 | ····} |
404 | ····[Test] |
405 | ····public void TestChangeKeyHolderRightNoTouch() |
406 | ····{ |
407 | ········CreateObjects(); |
408 | ········QueryOther(); |
409 | Assert. NotNull( otherVar, "No Query Result") ; |
410 | Assert. NotNull( otherVar. RelField, "No related object") ; |
411 | ········otherVar.Dummy = 4711; |
412 | ········pm.Save(); |
413 | ········pm.UnloadCache(); |
414 | ········QueryOther(); |
415 | Assert. NotNull( otherVar, "No Query Result") ; |
416 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
417 | Assert. NotNull( otherVar. RelField, "No related object") ; |
418 | ····} |
419 | ····[Test] |
420 | ····public void TestRelationHash() |
421 | ····{ |
422 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11NoTblAutoLeft)); |
423 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
424 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11NoTblAutoRight)); |
425 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
426 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
427 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
428 | ····} |
429 | ····void CreateObjects() |
430 | ····{ |
431 | ········pm.MakePersistent(ownVar); |
432 | ········pm.MakePersistent(otherVar); |
433 | ········ownVar.AssignRelation(otherVar); |
434 | ········pm.Save(); |
435 | ········pm.UnloadCache(); |
436 | ····} |
437 | ····void QueryOwn() |
438 | ····{ |
439 | ········var q = new NDOQuery<AgrBi11NoTblAutoLeft>(pm); |
440 | ········ownVar = q.ExecuteSingle(); |
441 | ····} |
442 | ····void QueryOther() |
443 | ····{ |
444 | ········var q = new NDOQuery<AgrBi11NoTblAutoRight>(pm); |
445 | ········otherVar = q.ExecuteSingle(); |
446 | ····} |
447 | } |
448 | |
449 | |
450 | [TestFixture] |
451 | public class TestAgrBi11TblAuto |
452 | { |
453 | ····AgrBi11TblAutoLeft ownVar; |
454 | ····AgrBi11TblAutoRight otherVar; |
455 | ····PersistenceManager pm; |
456 | ····[SetUp] |
457 | ····public void Setup() |
458 | ····{ |
459 | ········pm = PmFactory.NewPersistenceManager(); |
460 | ········ownVar = new AgrBi11TblAutoLeft(); |
461 | ········otherVar = new AgrBi11TblAutoRight(); |
462 | ····} |
463 | ····[TearDown] |
464 | ····public void TearDown() |
465 | ····{ |
466 | ········try |
467 | ········{ |
468 | ············pm.UnloadCache(); |
469 | ············var l = pm.Objects<AgrBi11TblAutoLeft>().ResultTable; |
470 | ············pm.Delete(l); |
471 | ············pm.Save(); |
472 | ············pm.UnloadCache(); |
473 | ············var m = pm.Objects<AgrBi11TblAutoRight>().ResultTable; |
474 | ············pm.Delete(m); |
475 | ············pm.Save(); |
476 | ············pm.UnloadCache(); |
477 | ············decimal count; |
478 | ············count = (decimal) new NDOQuery<AgrBi11TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
479 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
480 | ············count = (decimal) new NDOQuery<AgrBi11TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
481 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
482 | ········} |
483 | ········catch (Exception) |
484 | ········{ |
485 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
486 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
487 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
488 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
489 | ········} |
490 | ····} |
491 | ····[Test] |
492 | ····public void TestSaveReload() |
493 | ····{ |
494 | ········CreateObjects(); |
495 | ········QueryOwn(); |
496 | Assert. NotNull( ownVar, "No Query Result") ; |
497 | Assert. NotNull( ownVar. RelField, "No related object") ; |
498 | ····} |
499 | ····[Test] |
500 | ····public void TestSaveReloadNull() |
501 | ····{ |
502 | ········CreateObjects(); |
503 | ········QueryOwn(); |
504 | Assert. NotNull( ownVar, "No Query Result") ; |
505 | Assert. NotNull( ownVar. RelField, "No related object") ; |
506 | ········ownVar.RelField = null; |
507 | ········pm.Save(); |
508 | ········pm.UnloadCache(); |
509 | ········QueryOwn(); |
510 | Assert. NotNull( ownVar, "No Query Result") ; |
511 | Assert. Null( ownVar. RelField, "There should be no object") ; |
512 | ····} |
513 | ····[Test] |
514 | ····public void TestChangeKeyHolderLeft() |
515 | ····{ |
516 | ········CreateObjects(); |
517 | ········QueryOwn(); |
518 | Assert. NotNull( ownVar, "No Query Result") ; |
519 | Assert. NotNull( ownVar. RelField, "No related object") ; |
520 | ········int x = ownVar.RelField.Dummy; |
521 | ········ownVar.Dummy = 4711; |
522 | ········pm.Save(); |
523 | ········pm.UnloadCache(); |
524 | ········QueryOwn(); |
525 | Assert. NotNull( ownVar, "No Query Result") ; |
526 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
527 | Assert. NotNull( ownVar. RelField, "No related object") ; |
528 | ····} |
529 | ····[Test] |
530 | ····public void TestChangeKeyHolderRight() |
531 | ····{ |
532 | ········CreateObjects(); |
533 | ········QueryOther(); |
534 | Assert. NotNull( otherVar, "No Query Result") ; |
535 | Assert. NotNull( otherVar. RelField, "No related object") ; |
536 | ········int x = otherVar.RelField.Dummy; |
537 | ········otherVar.Dummy = 4711; |
538 | ········pm.Save(); |
539 | ········pm.UnloadCache(); |
540 | ········QueryOther(); |
541 | Assert. NotNull( otherVar, "No Query Result") ; |
542 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
543 | Assert. NotNull( otherVar. RelField, "No related object") ; |
544 | ····} |
545 | ····[Test] |
546 | ····public void TestChangeKeyHolderLeftNoTouch() |
547 | ····{ |
548 | ········CreateObjects(); |
549 | ········QueryOwn(); |
550 | Assert. NotNull( ownVar, "No Query Result") ; |
551 | Assert. NotNull( ownVar. RelField, "No related object") ; |
552 | ········ownVar.Dummy = 4711; |
553 | ········pm.Save(); |
554 | ········pm.UnloadCache(); |
555 | ········QueryOwn(); |
556 | Assert. NotNull( ownVar, "No Query Result") ; |
557 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
558 | Assert. NotNull( ownVar. RelField, "No related object") ; |
559 | ····} |
560 | ····[Test] |
561 | ····public void TestChangeKeyHolderRightNoTouch() |
562 | ····{ |
563 | ········CreateObjects(); |
564 | ········QueryOther(); |
565 | Assert. NotNull( otherVar, "No Query Result") ; |
566 | Assert. NotNull( otherVar. RelField, "No related object") ; |
567 | ········otherVar.Dummy = 4711; |
568 | ········pm.Save(); |
569 | ········pm.UnloadCache(); |
570 | ········QueryOther(); |
571 | Assert. NotNull( otherVar, "No Query Result") ; |
572 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
573 | Assert. NotNull( otherVar. RelField, "No related object") ; |
574 | ····} |
575 | ····[Test] |
576 | ····public void TestRelationHash() |
577 | ····{ |
578 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11TblAutoLeft)); |
579 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
580 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11TblAutoRight)); |
581 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
582 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
583 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
584 | ····} |
585 | ····void CreateObjects() |
586 | ····{ |
587 | ········pm.MakePersistent(ownVar); |
588 | ········pm.MakePersistent(otherVar); |
589 | ········ownVar.AssignRelation(otherVar); |
590 | ········pm.Save(); |
591 | ········pm.UnloadCache(); |
592 | ····} |
593 | ····void QueryOwn() |
594 | ····{ |
595 | ········var q = new NDOQuery<AgrBi11TblAutoLeft>(pm); |
596 | ········ownVar = q.ExecuteSingle(); |
597 | ····} |
598 | ····void QueryOther() |
599 | ····{ |
600 | ········var q = new NDOQuery<AgrBi11TblAutoRight>(pm); |
601 | ········otherVar = q.ExecuteSingle(); |
602 | ····} |
603 | } |
604 | |
605 | |
606 | [TestFixture] |
607 | public class TestAgrDirnNoTblAuto |
608 | { |
609 | ····AgrDirnNoTblAutoLeft ownVar; |
610 | ····AgrDirnNoTblAutoRight otherVar; |
611 | ····PersistenceManager pm; |
612 | ····[SetUp] |
613 | ····public void Setup() |
614 | ····{ |
615 | ········pm = PmFactory.NewPersistenceManager(); |
616 | ········ownVar = new AgrDirnNoTblAutoLeft(); |
617 | ········otherVar = new AgrDirnNoTblAutoRight(); |
618 | ····} |
619 | ····[TearDown] |
620 | ····public void TearDown() |
621 | ····{ |
622 | ········try |
623 | ········{ |
624 | ············pm.UnloadCache(); |
625 | ············var l = pm.Objects<AgrDirnNoTblAutoLeft>().ResultTable; |
626 | ············pm.Delete(l); |
627 | ············pm.Save(); |
628 | ············pm.UnloadCache(); |
629 | ············var m = pm.Objects<AgrDirnNoTblAutoRight>().ResultTable; |
630 | ············pm.Delete(m); |
631 | ············pm.Save(); |
632 | ············pm.UnloadCache(); |
633 | ············decimal count; |
634 | ············count = (decimal) new NDOQuery<AgrDirnNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
635 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
636 | ············count = (decimal) new NDOQuery<AgrDirnNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
637 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
638 | ········} |
639 | ········catch (Exception) |
640 | ········{ |
641 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
642 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
643 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
644 | ········} |
645 | ····} |
646 | ····[Test] |
647 | ····public void TestSaveReload() |
648 | ····{ |
649 | ········CreateObjects(); |
650 | ········QueryOwn(); |
651 | Assert. NotNull( ownVar, "No Query Result") ; |
652 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
653 | ····} |
654 | ····[Test] |
655 | ····public void TestSaveReloadNull() |
656 | ····{ |
657 | ········CreateObjects(); |
658 | ········QueryOwn(); |
659 | Assert. NotNull( ownVar, "No Query Result") ; |
660 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
661 | ········ownVar.RelField = new List<AgrDirnNoTblAutoRight>(); |
662 | ········pm.Save(); |
663 | ········pm.UnloadCache(); |
664 | ········QueryOwn(); |
665 | Assert. NotNull( ownVar, "No Query Result") ; |
666 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
667 | ····} |
668 | ····[Test] |
669 | ····public void TestSaveReloadRemove() |
670 | ····{ |
671 | ········CreateObjects(); |
672 | ········QueryOwn(); |
673 | Assert. NotNull( ownVar, "No Query Result") ; |
674 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
675 | ········ownVar.RemoveRelatedObject(); |
676 | ········pm.Save(); |
677 | ········pm.UnloadCache(); |
678 | ········QueryOwn(); |
679 | Assert. NotNull( ownVar, "No Query Result") ; |
680 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
681 | ····} |
682 | ····[Test] |
683 | ····public void TestUpdateOrder() |
684 | ····{ |
685 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
686 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
687 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnNoTblAutoLeft)})) |
688 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnNoTblAutoRight)})), "Wrong order #1"); |
689 | ········Debug.WriteLine("AgrDirnNoTblAutoLeft"); |
690 | ····} |
691 | ····void CreateObjects() |
692 | ····{ |
693 | ········pm.MakePersistent(ownVar); |
694 | ········pm.MakePersistent(otherVar); |
695 | ········ownVar.AssignRelation(otherVar); |
696 | ········pm.Save(); |
697 | ········pm.UnloadCache(); |
698 | ····} |
699 | ····void QueryOwn() |
700 | ····{ |
701 | ········var q = new NDOQuery<AgrDirnNoTblAutoLeft>(pm); |
702 | ········ownVar = q.ExecuteSingle(); |
703 | ····} |
704 | ····void QueryOther() |
705 | ····{ |
706 | ········var q = new NDOQuery<AgrDirnNoTblAutoRight>(pm); |
707 | ········otherVar = q.ExecuteSingle(); |
708 | ····} |
709 | } |
710 | |
711 | |
712 | [TestFixture] |
713 | public class TestAgrDirnTblAuto |
714 | { |
715 | ····AgrDirnTblAutoLeft ownVar; |
716 | ····AgrDirnTblAutoRight otherVar; |
717 | ····PersistenceManager pm; |
718 | ····[SetUp] |
719 | ····public void Setup() |
720 | ····{ |
721 | ········pm = PmFactory.NewPersistenceManager(); |
722 | ········ownVar = new AgrDirnTblAutoLeft(); |
723 | ········otherVar = new AgrDirnTblAutoRight(); |
724 | ····} |
725 | ····[TearDown] |
726 | ····public void TearDown() |
727 | ····{ |
728 | ········try |
729 | ········{ |
730 | ············pm.UnloadCache(); |
731 | ············var l = pm.Objects<AgrDirnTblAutoLeft>().ResultTable; |
732 | ············pm.Delete(l); |
733 | ············pm.Save(); |
734 | ············pm.UnloadCache(); |
735 | ············var m = pm.Objects<AgrDirnTblAutoRight>().ResultTable; |
736 | ············pm.Delete(m); |
737 | ············pm.Save(); |
738 | ············pm.UnloadCache(); |
739 | ············decimal count; |
740 | ············count = (decimal) new NDOQuery<AgrDirnTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
741 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
742 | ············count = (decimal) new NDOQuery<AgrDirnTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
743 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
744 | ········} |
745 | ········catch (Exception) |
746 | ········{ |
747 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
748 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
749 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
750 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
751 | ········} |
752 | ····} |
753 | ····[Test] |
754 | ····public void TestSaveReload() |
755 | ····{ |
756 | ········CreateObjects(); |
757 | ········QueryOwn(); |
758 | Assert. NotNull( ownVar, "No Query Result") ; |
759 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
760 | ····} |
761 | ····[Test] |
762 | ····public void TestSaveReloadNull() |
763 | ····{ |
764 | ········CreateObjects(); |
765 | ········QueryOwn(); |
766 | Assert. NotNull( ownVar, "No Query Result") ; |
767 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
768 | ········ownVar.RelField = new List<AgrDirnTblAutoRight>(); |
769 | ········pm.Save(); |
770 | ········pm.UnloadCache(); |
771 | ········QueryOwn(); |
772 | Assert. NotNull( ownVar, "No Query Result") ; |
773 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
774 | ····} |
775 | ····[Test] |
776 | ····public void TestSaveReloadRemove() |
777 | ····{ |
778 | ········CreateObjects(); |
779 | ········QueryOwn(); |
780 | Assert. NotNull( ownVar, "No Query Result") ; |
781 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
782 | ········ownVar.RemoveRelatedObject(); |
783 | ········pm.Save(); |
784 | ········pm.UnloadCache(); |
785 | ········QueryOwn(); |
786 | Assert. NotNull( ownVar, "No Query Result") ; |
787 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
788 | ····} |
789 | ····void CreateObjects() |
790 | ····{ |
791 | ········pm.MakePersistent(ownVar); |
792 | ········pm.MakePersistent(otherVar); |
793 | ········ownVar.AssignRelation(otherVar); |
794 | ········pm.Save(); |
795 | ········pm.UnloadCache(); |
796 | ····} |
797 | ····void QueryOwn() |
798 | ····{ |
799 | ········var q = new NDOQuery<AgrDirnTblAutoLeft>(pm); |
800 | ········ownVar = q.ExecuteSingle(); |
801 | ····} |
802 | ····void QueryOther() |
803 | ····{ |
804 | ········var q = new NDOQuery<AgrDirnTblAutoRight>(pm); |
805 | ········otherVar = q.ExecuteSingle(); |
806 | ····} |
807 | } |
808 | |
809 | |
810 | [TestFixture] |
811 | public class TestAgrBin1NoTblAuto |
812 | { |
813 | ····AgrBin1NoTblAutoLeft ownVar; |
814 | ····AgrBin1NoTblAutoRight otherVar; |
815 | ····PersistenceManager pm; |
816 | ····[SetUp] |
817 | ····public void Setup() |
818 | ····{ |
819 | ········pm = PmFactory.NewPersistenceManager(); |
820 | ········ownVar = new AgrBin1NoTblAutoLeft(); |
821 | ········otherVar = new AgrBin1NoTblAutoRight(); |
822 | ····} |
823 | ····[TearDown] |
824 | ····public void TearDown() |
825 | ····{ |
826 | ········try |
827 | ········{ |
828 | ············pm.UnloadCache(); |
829 | ············var l = pm.Objects<AgrBin1NoTblAutoLeft>().ResultTable; |
830 | ············pm.Delete(l); |
831 | ············pm.Save(); |
832 | ············pm.UnloadCache(); |
833 | ············var m = pm.Objects<AgrBin1NoTblAutoRight>().ResultTable; |
834 | ············pm.Delete(m); |
835 | ············pm.Save(); |
836 | ············pm.UnloadCache(); |
837 | ············decimal count; |
838 | ············count = (decimal) new NDOQuery<AgrBin1NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
839 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
840 | ············count = (decimal) new NDOQuery<AgrBin1NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
841 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
842 | ········} |
843 | ········catch (Exception) |
844 | ········{ |
845 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
846 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
847 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
848 | ········} |
849 | ····} |
850 | ····[Test] |
851 | ····public void TestSaveReload() |
852 | ····{ |
853 | ········CreateObjects(); |
854 | ········QueryOwn(); |
855 | Assert. NotNull( ownVar, "No Query Result") ; |
856 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
857 | ····} |
858 | ····[Test] |
859 | ····public void TestSaveReloadNull() |
860 | ····{ |
861 | ········CreateObjects(); |
862 | ········QueryOwn(); |
863 | Assert. NotNull( ownVar, "No Query Result") ; |
864 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
865 | ········ownVar.RelField = new List<AgrBin1NoTblAutoRight>(); |
866 | ········pm.Save(); |
867 | ········pm.UnloadCache(); |
868 | ········QueryOwn(); |
869 | Assert. NotNull( ownVar, "No Query Result") ; |
870 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
871 | ····} |
872 | ····[Test] |
873 | ····public void TestSaveReloadRemove() |
874 | ····{ |
875 | ········CreateObjects(); |
876 | ········QueryOwn(); |
877 | Assert. NotNull( ownVar, "No Query Result") ; |
878 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
879 | ········ownVar.RemoveRelatedObject(); |
880 | ········pm.Save(); |
881 | ········pm.UnloadCache(); |
882 | ········QueryOwn(); |
883 | Assert. NotNull( ownVar, "No Query Result") ; |
884 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
885 | ····} |
886 | ····[Test] |
887 | ····public void TestChangeKeyHolderRight() |
888 | ····{ |
889 | ········CreateObjects(); |
890 | ········QueryOther(); |
891 | Assert. NotNull( otherVar, "No Query Result") ; |
892 | Assert. NotNull( otherVar. RelField, "No related object") ; |
893 | ········int x = otherVar.RelField.Dummy; |
894 | ········otherVar.Dummy = 4711; |
895 | ········pm.Save(); |
896 | ········pm.UnloadCache(); |
897 | ········QueryOther(); |
898 | Assert. NotNull( otherVar, "No Query Result") ; |
899 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
900 | Assert. NotNull( otherVar. RelField, "No related object") ; |
901 | ····} |
902 | ····[Test] |
903 | ····public void TestChangeKeyHolderRightNoTouch() |
904 | ····{ |
905 | ········CreateObjects(); |
906 | ········QueryOther(); |
907 | Assert. NotNull( otherVar, "No Query Result") ; |
908 | Assert. NotNull( otherVar. RelField, "No related object") ; |
909 | ········otherVar.Dummy = 4711; |
910 | ········pm.Save(); |
911 | ········pm.UnloadCache(); |
912 | ········QueryOther(); |
913 | Assert. NotNull( otherVar, "No Query Result") ; |
914 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
915 | Assert. NotNull( otherVar. RelField, "No related object") ; |
916 | ····} |
917 | ····[Test] |
918 | ····public void TestUpdateOrder() |
919 | ····{ |
920 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
921 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
922 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1NoTblAutoLeft)})) |
923 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1NoTblAutoRight)})), "Wrong order #1"); |
924 | ········Debug.WriteLine("AgrBin1NoTblAutoLeft"); |
925 | ····} |
926 | ····[Test] |
927 | ····public void TestRelationHash() |
928 | ····{ |
929 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1NoTblAutoLeft)); |
930 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
931 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1NoTblAutoRight)); |
932 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
933 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
934 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
935 | ····} |
936 | ····void CreateObjects() |
937 | ····{ |
938 | ········pm.MakePersistent(ownVar); |
939 | ········pm.MakePersistent(otherVar); |
940 | ········ownVar.AssignRelation(otherVar); |
941 | ········pm.Save(); |
942 | ········pm.UnloadCache(); |
943 | ····} |
944 | ····void QueryOwn() |
945 | ····{ |
946 | ········var q = new NDOQuery<AgrBin1NoTblAutoLeft>(pm); |
947 | ········ownVar = q.ExecuteSingle(); |
948 | ····} |
949 | ····void QueryOther() |
950 | ····{ |
951 | ········var q = new NDOQuery<AgrBin1NoTblAutoRight>(pm); |
952 | ········otherVar = q.ExecuteSingle(); |
953 | ····} |
954 | } |
955 | |
956 | |
957 | [TestFixture] |
958 | public class TestAgrBin1TblAuto |
959 | { |
960 | ····AgrBin1TblAutoLeft ownVar; |
961 | ····AgrBin1TblAutoRight otherVar; |
962 | ····PersistenceManager pm; |
963 | ····[SetUp] |
964 | ····public void Setup() |
965 | ····{ |
966 | ········pm = PmFactory.NewPersistenceManager(); |
967 | ········ownVar = new AgrBin1TblAutoLeft(); |
968 | ········otherVar = new AgrBin1TblAutoRight(); |
969 | ····} |
970 | ····[TearDown] |
971 | ····public void TearDown() |
972 | ····{ |
973 | ········try |
974 | ········{ |
975 | ············pm.UnloadCache(); |
976 | ············var l = pm.Objects<AgrBin1TblAutoLeft>().ResultTable; |
977 | ············pm.Delete(l); |
978 | ············pm.Save(); |
979 | ············pm.UnloadCache(); |
980 | ············var m = pm.Objects<AgrBin1TblAutoRight>().ResultTable; |
981 | ············pm.Delete(m); |
982 | ············pm.Save(); |
983 | ············pm.UnloadCache(); |
984 | ············decimal count; |
985 | ············count = (decimal) new NDOQuery<AgrBin1TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
986 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
987 | ············count = (decimal) new NDOQuery<AgrBin1TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
988 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
989 | ········} |
990 | ········catch (Exception) |
991 | ········{ |
992 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
993 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
994 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
995 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
996 | ········} |
997 | ····} |
998 | ····[Test] |
999 | ····public void TestSaveReload() |
1000 | ····{ |
1001 | ········CreateObjects(); |
1002 | ········QueryOwn(); |
1003 | Assert. NotNull( ownVar, "No Query Result") ; |
1004 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1005 | ····} |
1006 | ····[Test] |
1007 | ····public void TestSaveReloadNull() |
1008 | ····{ |
1009 | ········CreateObjects(); |
1010 | ········QueryOwn(); |
1011 | Assert. NotNull( ownVar, "No Query Result") ; |
1012 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1013 | ········ownVar.RelField = new List<AgrBin1TblAutoRight>(); |
1014 | ········pm.Save(); |
1015 | ········pm.UnloadCache(); |
1016 | ········QueryOwn(); |
1017 | Assert. NotNull( ownVar, "No Query Result") ; |
1018 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
1019 | ····} |
1020 | ····[Test] |
1021 | ····public void TestSaveReloadRemove() |
1022 | ····{ |
1023 | ········CreateObjects(); |
1024 | ········QueryOwn(); |
1025 | Assert. NotNull( ownVar, "No Query Result") ; |
1026 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1027 | ········ownVar.RemoveRelatedObject(); |
1028 | ········pm.Save(); |
1029 | ········pm.UnloadCache(); |
1030 | ········QueryOwn(); |
1031 | Assert. NotNull( ownVar, "No Query Result") ; |
1032 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
1033 | ····} |
1034 | ····[Test] |
1035 | ····public void TestChangeKeyHolderRight() |
1036 | ····{ |
1037 | ········CreateObjects(); |
1038 | ········QueryOther(); |
1039 | Assert. NotNull( otherVar, "No Query Result") ; |
1040 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1041 | ········int x = otherVar.RelField.Dummy; |
1042 | ········otherVar.Dummy = 4711; |
1043 | ········pm.Save(); |
1044 | ········pm.UnloadCache(); |
1045 | ········QueryOther(); |
1046 | Assert. NotNull( otherVar, "No Query Result") ; |
1047 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1048 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1049 | ····} |
1050 | ····[Test] |
1051 | ····public void TestChangeKeyHolderRightNoTouch() |
1052 | ····{ |
1053 | ········CreateObjects(); |
1054 | ········QueryOther(); |
1055 | Assert. NotNull( otherVar, "No Query Result") ; |
1056 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1057 | ········otherVar.Dummy = 4711; |
1058 | ········pm.Save(); |
1059 | ········pm.UnloadCache(); |
1060 | ········QueryOther(); |
1061 | Assert. NotNull( otherVar, "No Query Result") ; |
1062 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1063 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1064 | ····} |
1065 | ····[Test] |
1066 | ····public void TestRelationHash() |
1067 | ····{ |
1068 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1TblAutoLeft)); |
1069 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1070 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1TblAutoRight)); |
1071 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1072 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1073 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1074 | ····} |
1075 | ····void CreateObjects() |
1076 | ····{ |
1077 | ········pm.MakePersistent(ownVar); |
1078 | ········pm.MakePersistent(otherVar); |
1079 | ········ownVar.AssignRelation(otherVar); |
1080 | ········pm.Save(); |
1081 | ········pm.UnloadCache(); |
1082 | ····} |
1083 | ····void QueryOwn() |
1084 | ····{ |
1085 | ········var q = new NDOQuery<AgrBin1TblAutoLeft>(pm); |
1086 | ········ownVar = q.ExecuteSingle(); |
1087 | ····} |
1088 | ····void QueryOther() |
1089 | ····{ |
1090 | ········var q = new NDOQuery<AgrBin1TblAutoRight>(pm); |
1091 | ········otherVar = q.ExecuteSingle(); |
1092 | ····} |
1093 | } |
1094 | |
1095 | |
1096 | [TestFixture] |
1097 | public class TestAgrBi1nNoTblAuto |
1098 | { |
1099 | ····AgrBi1nNoTblAutoLeft ownVar; |
1100 | ····AgrBi1nNoTblAutoRight otherVar; |
1101 | ····PersistenceManager pm; |
1102 | ····[SetUp] |
1103 | ····public void Setup() |
1104 | ····{ |
1105 | ········pm = PmFactory.NewPersistenceManager(); |
1106 | ········ownVar = new AgrBi1nNoTblAutoLeft(); |
1107 | ········otherVar = new AgrBi1nNoTblAutoRight(); |
1108 | ····} |
1109 | ····[TearDown] |
1110 | ····public void TearDown() |
1111 | ····{ |
1112 | ········try |
1113 | ········{ |
1114 | ············pm.UnloadCache(); |
1115 | ············var l = pm.Objects<AgrBi1nNoTblAutoLeft>().ResultTable; |
1116 | ············pm.Delete(l); |
1117 | ············pm.Save(); |
1118 | ············pm.UnloadCache(); |
1119 | ············var m = pm.Objects<AgrBi1nNoTblAutoRight>().ResultTable; |
1120 | ············pm.Delete(m); |
1121 | ············pm.Save(); |
1122 | ············pm.UnloadCache(); |
1123 | ············decimal count; |
1124 | ············count = (decimal) new NDOQuery<AgrBi1nNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1125 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1126 | ············count = (decimal) new NDOQuery<AgrBi1nNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1127 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1128 | ········} |
1129 | ········catch (Exception) |
1130 | ········{ |
1131 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1132 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1133 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1134 | ········} |
1135 | ····} |
1136 | ····[Test] |
1137 | ····public void TestSaveReload() |
1138 | ····{ |
1139 | ········CreateObjects(); |
1140 | ········QueryOwn(); |
1141 | Assert. NotNull( ownVar, "No Query Result") ; |
1142 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1143 | ····} |
1144 | ····[Test] |
1145 | ····public void TestSaveReloadNull() |
1146 | ····{ |
1147 | ········CreateObjects(); |
1148 | ········QueryOwn(); |
1149 | Assert. NotNull( ownVar, "No Query Result") ; |
1150 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1151 | ········ownVar.RelField = null; |
1152 | ········pm.Save(); |
1153 | ········pm.UnloadCache(); |
1154 | ········QueryOwn(); |
1155 | Assert. NotNull( ownVar, "No Query Result") ; |
1156 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1157 | ····} |
1158 | ····[Test] |
1159 | ····public void TestChangeKeyHolderLeft() |
1160 | ····{ |
1161 | ········CreateObjects(); |
1162 | ········QueryOwn(); |
1163 | Assert. NotNull( ownVar, "No Query Result") ; |
1164 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1165 | ········int x = ownVar.RelField.Dummy; |
1166 | ········ownVar.Dummy = 4711; |
1167 | ········pm.Save(); |
1168 | ········pm.UnloadCache(); |
1169 | ········QueryOwn(); |
1170 | Assert. NotNull( ownVar, "No Query Result") ; |
1171 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1172 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1173 | ····} |
1174 | ····[Test] |
1175 | ····public void TestChangeKeyHolderLeftNoTouch() |
1176 | ····{ |
1177 | ········CreateObjects(); |
1178 | ········QueryOwn(); |
1179 | Assert. NotNull( ownVar, "No Query Result") ; |
1180 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1181 | ········ownVar.Dummy = 4711; |
1182 | ········pm.Save(); |
1183 | ········pm.UnloadCache(); |
1184 | ········QueryOwn(); |
1185 | Assert. NotNull( ownVar, "No Query Result") ; |
1186 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1187 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1188 | ····} |
1189 | ····[Test] |
1190 | ····public void TestUpdateOrder() |
1191 | ····{ |
1192 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
1193 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
1194 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nNoTblAutoLeft)})) |
1195 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nNoTblAutoRight)})), "Wrong order #1"); |
1196 | ········Debug.WriteLine("AgrBi1nNoTblAutoLeft"); |
1197 | ····} |
1198 | ····[Test] |
1199 | ····public void TestRelationHash() |
1200 | ····{ |
1201 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nNoTblAutoLeft)); |
1202 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1203 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nNoTblAutoRight)); |
1204 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1205 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1206 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1207 | ····} |
1208 | ····void CreateObjects() |
1209 | ····{ |
1210 | ········pm.MakePersistent(ownVar); |
1211 | ········pm.MakePersistent(otherVar); |
1212 | ········ownVar.AssignRelation(otherVar); |
1213 | ········pm.Save(); |
1214 | ········pm.UnloadCache(); |
1215 | ····} |
1216 | ····void QueryOwn() |
1217 | ····{ |
1218 | ········var q = new NDOQuery<AgrBi1nNoTblAutoLeft>(pm); |
1219 | ········ownVar = q.ExecuteSingle(); |
1220 | ····} |
1221 | ····void QueryOther() |
1222 | ····{ |
1223 | ········var q = new NDOQuery<AgrBi1nNoTblAutoRight>(pm); |
1224 | ········otherVar = q.ExecuteSingle(); |
1225 | ····} |
1226 | } |
1227 | |
1228 | |
1229 | [TestFixture] |
1230 | public class TestAgrBi1nTblAuto |
1231 | { |
1232 | ····AgrBi1nTblAutoLeft ownVar; |
1233 | ····AgrBi1nTblAutoRight otherVar; |
1234 | ····PersistenceManager pm; |
1235 | ····[SetUp] |
1236 | ····public void Setup() |
1237 | ····{ |
1238 | ········pm = PmFactory.NewPersistenceManager(); |
1239 | ········ownVar = new AgrBi1nTblAutoLeft(); |
1240 | ········otherVar = new AgrBi1nTblAutoRight(); |
1241 | ····} |
1242 | ····[TearDown] |
1243 | ····public void TearDown() |
1244 | ····{ |
1245 | ········try |
1246 | ········{ |
1247 | ············pm.UnloadCache(); |
1248 | ············var l = pm.Objects<AgrBi1nTblAutoLeft>().ResultTable; |
1249 | ············pm.Delete(l); |
1250 | ············pm.Save(); |
1251 | ············pm.UnloadCache(); |
1252 | ············var m = pm.Objects<AgrBi1nTblAutoRight>().ResultTable; |
1253 | ············pm.Delete(m); |
1254 | ············pm.Save(); |
1255 | ············pm.UnloadCache(); |
1256 | ············decimal count; |
1257 | ············count = (decimal) new NDOQuery<AgrBi1nTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1258 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1259 | ············count = (decimal) new NDOQuery<AgrBi1nTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1260 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1261 | ········} |
1262 | ········catch (Exception) |
1263 | ········{ |
1264 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1265 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1266 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1267 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
1268 | ········} |
1269 | ····} |
1270 | ····[Test] |
1271 | ····public void TestSaveReload() |
1272 | ····{ |
1273 | ········CreateObjects(); |
1274 | ········QueryOwn(); |
1275 | Assert. NotNull( ownVar, "No Query Result") ; |
1276 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1277 | ····} |
1278 | ····[Test] |
1279 | ····public void TestSaveReloadNull() |
1280 | ····{ |
1281 | ········CreateObjects(); |
1282 | ········QueryOwn(); |
1283 | Assert. NotNull( ownVar, "No Query Result") ; |
1284 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1285 | ········ownVar.RelField = null; |
1286 | ········pm.Save(); |
1287 | ········pm.UnloadCache(); |
1288 | ········QueryOwn(); |
1289 | Assert. NotNull( ownVar, "No Query Result") ; |
1290 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1291 | ····} |
1292 | ····[Test] |
1293 | ····public void TestChangeKeyHolderLeft() |
1294 | ····{ |
1295 | ········CreateObjects(); |
1296 | ········QueryOwn(); |
1297 | Assert. NotNull( ownVar, "No Query Result") ; |
1298 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1299 | ········int x = ownVar.RelField.Dummy; |
1300 | ········ownVar.Dummy = 4711; |
1301 | ········pm.Save(); |
1302 | ········pm.UnloadCache(); |
1303 | ········QueryOwn(); |
1304 | Assert. NotNull( ownVar, "No Query Result") ; |
1305 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1306 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1307 | ····} |
1308 | ····[Test] |
1309 | ····public void TestChangeKeyHolderLeftNoTouch() |
1310 | ····{ |
1311 | ········CreateObjects(); |
1312 | ········QueryOwn(); |
1313 | Assert. NotNull( ownVar, "No Query Result") ; |
1314 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1315 | ········ownVar.Dummy = 4711; |
1316 | ········pm.Save(); |
1317 | ········pm.UnloadCache(); |
1318 | ········QueryOwn(); |
1319 | Assert. NotNull( ownVar, "No Query Result") ; |
1320 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1321 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1322 | ····} |
1323 | ····[Test] |
1324 | ····public void TestRelationHash() |
1325 | ····{ |
1326 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nTblAutoLeft)); |
1327 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1328 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nTblAutoRight)); |
1329 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1330 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1331 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1332 | ····} |
1333 | ····void CreateObjects() |
1334 | ····{ |
1335 | ········pm.MakePersistent(ownVar); |
1336 | ········pm.MakePersistent(otherVar); |
1337 | ········ownVar.AssignRelation(otherVar); |
1338 | ········pm.Save(); |
1339 | ········pm.UnloadCache(); |
1340 | ····} |
1341 | ····void QueryOwn() |
1342 | ····{ |
1343 | ········var q = new NDOQuery<AgrBi1nTblAutoLeft>(pm); |
1344 | ········ownVar = q.ExecuteSingle(); |
1345 | ····} |
1346 | ····void QueryOther() |
1347 | ····{ |
1348 | ········var q = new NDOQuery<AgrBi1nTblAutoRight>(pm); |
1349 | ········otherVar = q.ExecuteSingle(); |
1350 | ····} |
1351 | } |
1352 | |
1353 | |
1354 | [TestFixture] |
1355 | public class TestAgrBinnTblAuto |
1356 | { |
1357 | ····AgrBinnTblAutoLeft ownVar; |
1358 | ····AgrBinnTblAutoRight otherVar; |
1359 | ····PersistenceManager pm; |
1360 | ····[SetUp] |
1361 | ····public void Setup() |
1362 | ····{ |
1363 | ········pm = PmFactory.NewPersistenceManager(); |
1364 | ········ownVar = new AgrBinnTblAutoLeft(); |
1365 | ········otherVar = new AgrBinnTblAutoRight(); |
1366 | ····} |
1367 | ····[TearDown] |
1368 | ····public void TearDown() |
1369 | ····{ |
1370 | ········try |
1371 | ········{ |
1372 | ············pm.UnloadCache(); |
1373 | ············var l = pm.Objects<AgrBinnTblAutoLeft>().ResultTable; |
1374 | ············pm.Delete(l); |
1375 | ············pm.Save(); |
1376 | ············pm.UnloadCache(); |
1377 | ············var m = pm.Objects<AgrBinnTblAutoRight>().ResultTable; |
1378 | ············pm.Delete(m); |
1379 | ············pm.Save(); |
1380 | ············pm.UnloadCache(); |
1381 | ············decimal count; |
1382 | ············count = (decimal) new NDOQuery<AgrBinnTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1383 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1384 | ············count = (decimal) new NDOQuery<AgrBinnTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1385 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1386 | ········} |
1387 | ········catch (Exception) |
1388 | ········{ |
1389 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1390 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1391 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1392 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
1393 | ········} |
1394 | ····} |
1395 | ····[Test] |
1396 | ····public void TestSaveReload() |
1397 | ····{ |
1398 | ········CreateObjects(); |
1399 | ········QueryOwn(); |
1400 | Assert. NotNull( ownVar, "No Query Result") ; |
1401 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1402 | ····} |
1403 | ····[Test] |
1404 | ····public void TestSaveReloadNull() |
1405 | ····{ |
1406 | ········CreateObjects(); |
1407 | ········QueryOwn(); |
1408 | Assert. NotNull( ownVar, "No Query Result") ; |
1409 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1410 | ········ownVar.RelField = new List<AgrBinnTblAutoRight>(); |
1411 | ········pm.Save(); |
1412 | ········pm.UnloadCache(); |
1413 | ········QueryOwn(); |
1414 | Assert. NotNull( ownVar, "No Query Result") ; |
1415 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
1416 | ····} |
1417 | ····[Test] |
1418 | ····public void TestSaveReloadRemove() |
1419 | ····{ |
1420 | ········CreateObjects(); |
1421 | ········QueryOwn(); |
1422 | Assert. NotNull( ownVar, "No Query Result") ; |
1423 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
1424 | ········ownVar.RemoveRelatedObject(); |
1425 | ········pm.Save(); |
1426 | ········pm.UnloadCache(); |
1427 | ········QueryOwn(); |
1428 | Assert. NotNull( ownVar, "No Query Result") ; |
1429 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
1430 | ····} |
1431 | ····[Test] |
1432 | ····public void TestRelationHash() |
1433 | ····{ |
1434 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBinnTblAutoLeft)); |
1435 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1436 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBinnTblAutoRight)); |
1437 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1438 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1439 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1440 | ····} |
1441 | ····void CreateObjects() |
1442 | ····{ |
1443 | ········pm.MakePersistent(ownVar); |
1444 | ········pm.MakePersistent(otherVar); |
1445 | ········ownVar.AssignRelation(otherVar); |
1446 | ········pm.Save(); |
1447 | ········pm.UnloadCache(); |
1448 | ····} |
1449 | ····void QueryOwn() |
1450 | ····{ |
1451 | ········var q = new NDOQuery<AgrBinnTblAutoLeft>(pm); |
1452 | ········ownVar = q.ExecuteSingle(); |
1453 | ····} |
1454 | ····void QueryOther() |
1455 | ····{ |
1456 | ········var q = new NDOQuery<AgrBinnTblAutoRight>(pm); |
1457 | ········otherVar = q.ExecuteSingle(); |
1458 | ····} |
1459 | } |
1460 | |
1461 | |
1462 | [TestFixture] |
1463 | public class TestCmpDir1NoTblAuto |
1464 | { |
1465 | ····CmpDir1NoTblAutoLeft ownVar; |
1466 | ····CmpDir1NoTblAutoRight otherVar; |
1467 | ····PersistenceManager pm; |
1468 | ····[SetUp] |
1469 | ····public void Setup() |
1470 | ····{ |
1471 | ········pm = PmFactory.NewPersistenceManager(); |
1472 | ········ownVar = new CmpDir1NoTblAutoLeft(); |
1473 | ········otherVar = new CmpDir1NoTblAutoRight(); |
1474 | ····} |
1475 | ····[TearDown] |
1476 | ····public void TearDown() |
1477 | ····{ |
1478 | ········try |
1479 | ········{ |
1480 | ············pm.UnloadCache(); |
1481 | ············var l = pm.Objects<CmpDir1NoTblAutoLeft>().ResultTable; |
1482 | ············pm.Delete(l); |
1483 | ············pm.Save(); |
1484 | ············pm.UnloadCache(); |
1485 | ············decimal count; |
1486 | ············count = (decimal) new NDOQuery<CmpDir1NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1487 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1488 | ············count = (decimal) new NDOQuery<CmpDir1NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1489 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1490 | ········} |
1491 | ········catch (Exception) |
1492 | ········{ |
1493 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1494 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1495 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1496 | ········} |
1497 | ····} |
1498 | ····[Test] |
1499 | ····public void TestSaveReload() |
1500 | ····{ |
1501 | ········CreateObjects(); |
1502 | ········QueryOwn(); |
1503 | Assert. NotNull( ownVar, "No Query Result") ; |
1504 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1505 | ····} |
1506 | ····[Test] |
1507 | ····public void TestSaveReloadNull() |
1508 | ····{ |
1509 | ········CreateObjects(); |
1510 | ········QueryOwn(); |
1511 | Assert. NotNull( ownVar, "No Query Result") ; |
1512 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1513 | ········ownVar.RelField = null; |
1514 | ········pm.Save(); |
1515 | ········pm.UnloadCache(); |
1516 | ········QueryOwn(); |
1517 | Assert. NotNull( ownVar, "No Query Result") ; |
1518 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1519 | ····} |
1520 | ····[Test] |
1521 | ····public void TestChangeKeyHolderLeft() |
1522 | ····{ |
1523 | ········CreateObjects(); |
1524 | ········QueryOwn(); |
1525 | Assert. NotNull( ownVar, "No Query Result") ; |
1526 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1527 | ········int x = ownVar.RelField.Dummy; |
1528 | ········ownVar.Dummy = 4711; |
1529 | ········pm.Save(); |
1530 | ········pm.UnloadCache(); |
1531 | ········QueryOwn(); |
1532 | Assert. NotNull( ownVar, "No Query Result") ; |
1533 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1534 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1535 | ····} |
1536 | ····[Test] |
1537 | ····public void TestChangeKeyHolderLeftNoTouch() |
1538 | ····{ |
1539 | ········CreateObjects(); |
1540 | ········QueryOwn(); |
1541 | Assert. NotNull( ownVar, "No Query Result") ; |
1542 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1543 | ········ownVar.Dummy = 4711; |
1544 | ········pm.Save(); |
1545 | ········pm.UnloadCache(); |
1546 | ········QueryOwn(); |
1547 | Assert. NotNull( ownVar, "No Query Result") ; |
1548 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1549 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1550 | ····} |
1551 | ····[Test] |
1552 | ····public void TestUpdateOrder() |
1553 | ····{ |
1554 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
1555 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
1556 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1NoTblAutoLeft)})) |
1557 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1NoTblAutoRight)})), "Wrong order #1"); |
1558 | ········Debug.WriteLine("CmpDir1NoTblAutoLeft"); |
1559 | ····} |
1560 | ····void CreateObjects() |
1561 | ····{ |
1562 | ········pm.MakePersistent(ownVar); |
1563 | ········ownVar.AssignRelation(otherVar); |
1564 | ········pm.Save(); |
1565 | ········pm.UnloadCache(); |
1566 | ····} |
1567 | ····void QueryOwn() |
1568 | ····{ |
1569 | ········var q = new NDOQuery<CmpDir1NoTblAutoLeft>(pm); |
1570 | ········ownVar = q.ExecuteSingle(); |
1571 | ····} |
1572 | ····void QueryOther() |
1573 | ····{ |
1574 | ········var q = new NDOQuery<CmpDir1NoTblAutoRight>(pm); |
1575 | ········otherVar = q.ExecuteSingle(); |
1576 | ····} |
1577 | } |
1578 | |
1579 | |
1580 | [TestFixture] |
1581 | public class TestCmpDir1TblAuto |
1582 | { |
1583 | ····CmpDir1TblAutoLeft ownVar; |
1584 | ····CmpDir1TblAutoRight otherVar; |
1585 | ····PersistenceManager pm; |
1586 | ····[SetUp] |
1587 | ····public void Setup() |
1588 | ····{ |
1589 | ········pm = PmFactory.NewPersistenceManager(); |
1590 | ········ownVar = new CmpDir1TblAutoLeft(); |
1591 | ········otherVar = new CmpDir1TblAutoRight(); |
1592 | ····} |
1593 | ····[TearDown] |
1594 | ····public void TearDown() |
1595 | ····{ |
1596 | ········try |
1597 | ········{ |
1598 | ············pm.UnloadCache(); |
1599 | ············var l = pm.Objects<CmpDir1TblAutoLeft>().ResultTable; |
1600 | ············pm.Delete(l); |
1601 | ············pm.Save(); |
1602 | ············pm.UnloadCache(); |
1603 | ············decimal count; |
1604 | ············count = (decimal) new NDOQuery<CmpDir1TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1605 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1606 | ············count = (decimal) new NDOQuery<CmpDir1TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1607 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1608 | ········} |
1609 | ········catch (Exception) |
1610 | ········{ |
1611 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1612 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1613 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1614 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
1615 | ········} |
1616 | ····} |
1617 | ····[Test] |
1618 | ····public void TestSaveReload() |
1619 | ····{ |
1620 | ········CreateObjects(); |
1621 | ········QueryOwn(); |
1622 | Assert. NotNull( ownVar, "No Query Result") ; |
1623 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1624 | ····} |
1625 | ····[Test] |
1626 | ····public void TestSaveReloadNull() |
1627 | ····{ |
1628 | ········CreateObjects(); |
1629 | ········QueryOwn(); |
1630 | Assert. NotNull( ownVar, "No Query Result") ; |
1631 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1632 | ········ownVar.RelField = null; |
1633 | ········pm.Save(); |
1634 | ········pm.UnloadCache(); |
1635 | ········QueryOwn(); |
1636 | Assert. NotNull( ownVar, "No Query Result") ; |
1637 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1638 | ····} |
1639 | ····[Test] |
1640 | ····public void TestChangeKeyHolderLeft() |
1641 | ····{ |
1642 | ········CreateObjects(); |
1643 | ········QueryOwn(); |
1644 | Assert. NotNull( ownVar, "No Query Result") ; |
1645 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1646 | ········int x = ownVar.RelField.Dummy; |
1647 | ········ownVar.Dummy = 4711; |
1648 | ········pm.Save(); |
1649 | ········pm.UnloadCache(); |
1650 | ········QueryOwn(); |
1651 | Assert. NotNull( ownVar, "No Query Result") ; |
1652 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1653 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1654 | ····} |
1655 | ····[Test] |
1656 | ····public void TestChangeKeyHolderLeftNoTouch() |
1657 | ····{ |
1658 | ········CreateObjects(); |
1659 | ········QueryOwn(); |
1660 | Assert. NotNull( ownVar, "No Query Result") ; |
1661 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1662 | ········ownVar.Dummy = 4711; |
1663 | ········pm.Save(); |
1664 | ········pm.UnloadCache(); |
1665 | ········QueryOwn(); |
1666 | Assert. NotNull( ownVar, "No Query Result") ; |
1667 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1668 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1669 | ····} |
1670 | ····void CreateObjects() |
1671 | ····{ |
1672 | ········pm.MakePersistent(ownVar); |
1673 | ········ownVar.AssignRelation(otherVar); |
1674 | ········pm.Save(); |
1675 | ········pm.UnloadCache(); |
1676 | ····} |
1677 | ····void QueryOwn() |
1678 | ····{ |
1679 | ········var q = new NDOQuery<CmpDir1TblAutoLeft>(pm); |
1680 | ········ownVar = q.ExecuteSingle(); |
1681 | ····} |
1682 | ····void QueryOther() |
1683 | ····{ |
1684 | ········var q = new NDOQuery<CmpDir1TblAutoRight>(pm); |
1685 | ········otherVar = q.ExecuteSingle(); |
1686 | ····} |
1687 | } |
1688 | |
1689 | |
1690 | [TestFixture] |
1691 | public class TestCmpBi11NoTblAuto |
1692 | { |
1693 | ····CmpBi11NoTblAutoLeft ownVar; |
1694 | ····CmpBi11NoTblAutoRight otherVar; |
1695 | ····PersistenceManager pm; |
1696 | ····[SetUp] |
1697 | ····public void Setup() |
1698 | ····{ |
1699 | ········pm = PmFactory.NewPersistenceManager(); |
1700 | ········ownVar = new CmpBi11NoTblAutoLeft(); |
1701 | ········otherVar = new CmpBi11NoTblAutoRight(); |
1702 | ····} |
1703 | ····[TearDown] |
1704 | ····public void TearDown() |
1705 | ····{ |
1706 | ········try |
1707 | ········{ |
1708 | ············pm.UnloadCache(); |
1709 | ············var l = pm.Objects<CmpBi11NoTblAutoLeft>().ResultTable; |
1710 | ············pm.Delete(l); |
1711 | ············pm.Save(); |
1712 | ············pm.UnloadCache(); |
1713 | ············decimal count; |
1714 | ············count = (decimal) new NDOQuery<CmpBi11NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1715 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1716 | ············count = (decimal) new NDOQuery<CmpBi11NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1717 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1718 | ········} |
1719 | ········catch (Exception) |
1720 | ········{ |
1721 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1722 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1723 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1724 | ········} |
1725 | ····} |
1726 | ····[Test] |
1727 | ····public void TestSaveReload() |
1728 | ····{ |
1729 | ········CreateObjects(); |
1730 | ········QueryOwn(); |
1731 | Assert. NotNull( ownVar, "No Query Result") ; |
1732 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1733 | ····} |
1734 | ····[Test] |
1735 | ····public void TestSaveReloadNull() |
1736 | ····{ |
1737 | ········CreateObjects(); |
1738 | ········QueryOwn(); |
1739 | Assert. NotNull( ownVar, "No Query Result") ; |
1740 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1741 | ········ownVar.RelField = null; |
1742 | ········pm.Save(); |
1743 | ········pm.UnloadCache(); |
1744 | ········QueryOwn(); |
1745 | Assert. NotNull( ownVar, "No Query Result") ; |
1746 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1747 | ····} |
1748 | ····[Test] |
1749 | ····public void TestChangeKeyHolderLeft() |
1750 | ····{ |
1751 | ········CreateObjects(); |
1752 | ········QueryOwn(); |
1753 | Assert. NotNull( ownVar, "No Query Result") ; |
1754 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1755 | ········int x = ownVar.RelField.Dummy; |
1756 | ········ownVar.Dummy = 4711; |
1757 | ········pm.Save(); |
1758 | ········pm.UnloadCache(); |
1759 | ········QueryOwn(); |
1760 | Assert. NotNull( ownVar, "No Query Result") ; |
1761 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1762 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1763 | ····} |
1764 | ····[Test] |
1765 | ····public void TestChangeKeyHolderRight() |
1766 | ····{ |
1767 | ········CreateObjects(); |
1768 | ········QueryOther(); |
1769 | Assert. NotNull( otherVar, "No Query Result") ; |
1770 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1771 | ········int x = otherVar.RelField.Dummy; |
1772 | ········otherVar.Dummy = 4711; |
1773 | ········pm.Save(); |
1774 | ········pm.UnloadCache(); |
1775 | ········QueryOther(); |
1776 | Assert. NotNull( otherVar, "No Query Result") ; |
1777 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1778 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1779 | ····} |
1780 | ····[Test] |
1781 | ····public void TestChangeKeyHolderLeftNoTouch() |
1782 | ····{ |
1783 | ········CreateObjects(); |
1784 | ········QueryOwn(); |
1785 | Assert. NotNull( ownVar, "No Query Result") ; |
1786 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1787 | ········ownVar.Dummy = 4711; |
1788 | ········pm.Save(); |
1789 | ········pm.UnloadCache(); |
1790 | ········QueryOwn(); |
1791 | Assert. NotNull( ownVar, "No Query Result") ; |
1792 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1793 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1794 | ····} |
1795 | ····[Test] |
1796 | ····public void TestChangeKeyHolderRightNoTouch() |
1797 | ····{ |
1798 | ········CreateObjects(); |
1799 | ········QueryOther(); |
1800 | Assert. NotNull( otherVar, "No Query Result") ; |
1801 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1802 | ········otherVar.Dummy = 4711; |
1803 | ········pm.Save(); |
1804 | ········pm.UnloadCache(); |
1805 | ········QueryOther(); |
1806 | Assert. NotNull( otherVar, "No Query Result") ; |
1807 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1808 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1809 | ····} |
1810 | ····[Test] |
1811 | ····public void TestRelationHash() |
1812 | ····{ |
1813 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11NoTblAutoLeft)); |
1814 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1815 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11NoTblAutoRight)); |
1816 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1817 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1818 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1819 | ····} |
1820 | ····void CreateObjects() |
1821 | ····{ |
1822 | ········pm.MakePersistent(ownVar); |
1823 | ········ownVar.AssignRelation(otherVar); |
1824 | ········pm.Save(); |
1825 | ········pm.UnloadCache(); |
1826 | ····} |
1827 | ····void QueryOwn() |
1828 | ····{ |
1829 | ········var q = new NDOQuery<CmpBi11NoTblAutoLeft>(pm); |
1830 | ········ownVar = q.ExecuteSingle(); |
1831 | ····} |
1832 | ····void QueryOther() |
1833 | ····{ |
1834 | ········var q = new NDOQuery<CmpBi11NoTblAutoRight>(pm); |
1835 | ········otherVar = q.ExecuteSingle(); |
1836 | ····} |
1837 | } |
1838 | |
1839 | |
1840 | [TestFixture] |
1841 | public class TestCmpBi11TblAuto |
1842 | { |
1843 | ····CmpBi11TblAutoLeft ownVar; |
1844 | ····CmpBi11TblAutoRight otherVar; |
1845 | ····PersistenceManager pm; |
1846 | ····[SetUp] |
1847 | ····public void Setup() |
1848 | ····{ |
1849 | ········pm = PmFactory.NewPersistenceManager(); |
1850 | ········ownVar = new CmpBi11TblAutoLeft(); |
1851 | ········otherVar = new CmpBi11TblAutoRight(); |
1852 | ····} |
1853 | ····[TearDown] |
1854 | ····public void TearDown() |
1855 | ····{ |
1856 | ········try |
1857 | ········{ |
1858 | ············pm.UnloadCache(); |
1859 | ············var l = pm.Objects<CmpBi11TblAutoLeft>().ResultTable; |
1860 | ············pm.Delete(l); |
1861 | ············pm.Save(); |
1862 | ············pm.UnloadCache(); |
1863 | ············decimal count; |
1864 | ············count = (decimal) new NDOQuery<CmpBi11TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1865 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
1866 | ············count = (decimal) new NDOQuery<CmpBi11TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
1867 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
1868 | ········} |
1869 | ········catch (Exception) |
1870 | ········{ |
1871 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
1872 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
1873 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
1874 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
1875 | ········} |
1876 | ····} |
1877 | ····[Test] |
1878 | ····public void TestSaveReload() |
1879 | ····{ |
1880 | ········CreateObjects(); |
1881 | ········QueryOwn(); |
1882 | Assert. NotNull( ownVar, "No Query Result") ; |
1883 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1884 | ····} |
1885 | ····[Test] |
1886 | ····public void TestSaveReloadNull() |
1887 | ····{ |
1888 | ········CreateObjects(); |
1889 | ········QueryOwn(); |
1890 | Assert. NotNull( ownVar, "No Query Result") ; |
1891 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1892 | ········ownVar.RelField = null; |
1893 | ········pm.Save(); |
1894 | ········pm.UnloadCache(); |
1895 | ········QueryOwn(); |
1896 | Assert. NotNull( ownVar, "No Query Result") ; |
1897 | Assert. Null( ownVar. RelField, "There should be no object") ; |
1898 | ····} |
1899 | ····[Test] |
1900 | ····public void TestChangeKeyHolderLeft() |
1901 | ····{ |
1902 | ········CreateObjects(); |
1903 | ········QueryOwn(); |
1904 | Assert. NotNull( ownVar, "No Query Result") ; |
1905 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1906 | ········int x = ownVar.RelField.Dummy; |
1907 | ········ownVar.Dummy = 4711; |
1908 | ········pm.Save(); |
1909 | ········pm.UnloadCache(); |
1910 | ········QueryOwn(); |
1911 | Assert. NotNull( ownVar, "No Query Result") ; |
1912 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1913 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1914 | ····} |
1915 | ····[Test] |
1916 | ····public void TestChangeKeyHolderRight() |
1917 | ····{ |
1918 | ········CreateObjects(); |
1919 | ········QueryOther(); |
1920 | Assert. NotNull( otherVar, "No Query Result") ; |
1921 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1922 | ········int x = otherVar.RelField.Dummy; |
1923 | ········otherVar.Dummy = 4711; |
1924 | ········pm.Save(); |
1925 | ········pm.UnloadCache(); |
1926 | ········QueryOther(); |
1927 | Assert. NotNull( otherVar, "No Query Result") ; |
1928 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1929 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1930 | ····} |
1931 | ····[Test] |
1932 | ····public void TestChangeKeyHolderLeftNoTouch() |
1933 | ····{ |
1934 | ········CreateObjects(); |
1935 | ········QueryOwn(); |
1936 | Assert. NotNull( ownVar, "No Query Result") ; |
1937 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1938 | ········ownVar.Dummy = 4711; |
1939 | ········pm.Save(); |
1940 | ········pm.UnloadCache(); |
1941 | ········QueryOwn(); |
1942 | Assert. NotNull( ownVar, "No Query Result") ; |
1943 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
1944 | Assert. NotNull( ownVar. RelField, "No related object") ; |
1945 | ····} |
1946 | ····[Test] |
1947 | ····public void TestChangeKeyHolderRightNoTouch() |
1948 | ····{ |
1949 | ········CreateObjects(); |
1950 | ········QueryOther(); |
1951 | Assert. NotNull( otherVar, "No Query Result") ; |
1952 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1953 | ········otherVar.Dummy = 4711; |
1954 | ········pm.Save(); |
1955 | ········pm.UnloadCache(); |
1956 | ········QueryOther(); |
1957 | Assert. NotNull( otherVar, "No Query Result") ; |
1958 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
1959 | Assert. NotNull( otherVar. RelField, "No related object") ; |
1960 | ····} |
1961 | ····[Test] |
1962 | ····public void TestRelationHash() |
1963 | ····{ |
1964 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11TblAutoLeft)); |
1965 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
1966 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11TblAutoRight)); |
1967 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
1968 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
1969 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
1970 | ····} |
1971 | ····void CreateObjects() |
1972 | ····{ |
1973 | ········pm.MakePersistent(ownVar); |
1974 | ········ownVar.AssignRelation(otherVar); |
1975 | ········pm.Save(); |
1976 | ········pm.UnloadCache(); |
1977 | ····} |
1978 | ····void QueryOwn() |
1979 | ····{ |
1980 | ········var q = new NDOQuery<CmpBi11TblAutoLeft>(pm); |
1981 | ········ownVar = q.ExecuteSingle(); |
1982 | ····} |
1983 | ····void QueryOther() |
1984 | ····{ |
1985 | ········var q = new NDOQuery<CmpBi11TblAutoRight>(pm); |
1986 | ········otherVar = q.ExecuteSingle(); |
1987 | ····} |
1988 | } |
1989 | |
1990 | |
1991 | [TestFixture] |
1992 | public class TestCmpDirnNoTblAuto |
1993 | { |
1994 | ····CmpDirnNoTblAutoLeft ownVar; |
1995 | ····CmpDirnNoTblAutoRight otherVar; |
1996 | ····PersistenceManager pm; |
1997 | ····[SetUp] |
1998 | ····public void Setup() |
1999 | ····{ |
2000 | ········pm = PmFactory.NewPersistenceManager(); |
2001 | ········ownVar = new CmpDirnNoTblAutoLeft(); |
2002 | ········otherVar = new CmpDirnNoTblAutoRight(); |
2003 | ····} |
2004 | ····[TearDown] |
2005 | ····public void TearDown() |
2006 | ····{ |
2007 | ········try |
2008 | ········{ |
2009 | ············pm.UnloadCache(); |
2010 | ············var l = pm.Objects<CmpDirnNoTblAutoLeft>().ResultTable; |
2011 | ············pm.Delete(l); |
2012 | ············pm.Save(); |
2013 | ············pm.UnloadCache(); |
2014 | ············decimal count; |
2015 | ············count = (decimal) new NDOQuery<CmpDirnNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2016 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2017 | ············count = (decimal) new NDOQuery<CmpDirnNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2018 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2019 | ········} |
2020 | ········catch (Exception) |
2021 | ········{ |
2022 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2023 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2024 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2025 | ········} |
2026 | ····} |
2027 | ····[Test] |
2028 | ····public void TestSaveReload() |
2029 | ····{ |
2030 | ········CreateObjects(); |
2031 | ········QueryOwn(); |
2032 | Assert. NotNull( ownVar, "No Query Result") ; |
2033 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2034 | ····} |
2035 | ····[Test] |
2036 | ····public void TestSaveReloadNull() |
2037 | ····{ |
2038 | ········CreateObjects(); |
2039 | ········QueryOwn(); |
2040 | Assert. NotNull( ownVar, "No Query Result") ; |
2041 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2042 | ········ownVar.RelField = new List<CmpDirnNoTblAutoRight>(); |
2043 | ········pm.Save(); |
2044 | ········pm.UnloadCache(); |
2045 | ········QueryOwn(); |
2046 | Assert. NotNull( ownVar, "No Query Result") ; |
2047 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2048 | ····} |
2049 | ····[Test] |
2050 | ····public void TestSaveReloadRemove() |
2051 | ····{ |
2052 | ········CreateObjects(); |
2053 | ········QueryOwn(); |
2054 | Assert. NotNull( ownVar, "No Query Result") ; |
2055 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2056 | ········ownVar.RemoveRelatedObject(); |
2057 | ········pm.Save(); |
2058 | ········pm.UnloadCache(); |
2059 | ········QueryOwn(); |
2060 | Assert. NotNull( ownVar, "No Query Result") ; |
2061 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2062 | ····} |
2063 | ····[Test] |
2064 | ····public void TestUpdateOrder() |
2065 | ····{ |
2066 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
2067 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
2068 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnNoTblAutoLeft)})) |
2069 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnNoTblAutoRight)})), "Wrong order #1"); |
2070 | ········Debug.WriteLine("CmpDirnNoTblAutoLeft"); |
2071 | ····} |
2072 | ····void CreateObjects() |
2073 | ····{ |
2074 | ········pm.MakePersistent(ownVar); |
2075 | ········ownVar.AssignRelation(otherVar); |
2076 | ········pm.Save(); |
2077 | ········pm.UnloadCache(); |
2078 | ····} |
2079 | ····void QueryOwn() |
2080 | ····{ |
2081 | ········var q = new NDOQuery<CmpDirnNoTblAutoLeft>(pm); |
2082 | ········ownVar = q.ExecuteSingle(); |
2083 | ····} |
2084 | ····void QueryOther() |
2085 | ····{ |
2086 | ········var q = new NDOQuery<CmpDirnNoTblAutoRight>(pm); |
2087 | ········otherVar = q.ExecuteSingle(); |
2088 | ····} |
2089 | } |
2090 | |
2091 | |
2092 | [TestFixture] |
2093 | public class TestCmpDirnTblAuto |
2094 | { |
2095 | ····CmpDirnTblAutoLeft ownVar; |
2096 | ····CmpDirnTblAutoRight otherVar; |
2097 | ····PersistenceManager pm; |
2098 | ····[SetUp] |
2099 | ····public void Setup() |
2100 | ····{ |
2101 | ········pm = PmFactory.NewPersistenceManager(); |
2102 | ········ownVar = new CmpDirnTblAutoLeft(); |
2103 | ········otherVar = new CmpDirnTblAutoRight(); |
2104 | ····} |
2105 | ····[TearDown] |
2106 | ····public void TearDown() |
2107 | ····{ |
2108 | ········try |
2109 | ········{ |
2110 | ············pm.UnloadCache(); |
2111 | ············var l = pm.Objects<CmpDirnTblAutoLeft>().ResultTable; |
2112 | ············pm.Delete(l); |
2113 | ············pm.Save(); |
2114 | ············pm.UnloadCache(); |
2115 | ············decimal count; |
2116 | ············count = (decimal) new NDOQuery<CmpDirnTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2117 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2118 | ············count = (decimal) new NDOQuery<CmpDirnTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2119 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2120 | ········} |
2121 | ········catch (Exception) |
2122 | ········{ |
2123 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2124 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2125 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2126 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
2127 | ········} |
2128 | ····} |
2129 | ····[Test] |
2130 | ····public void TestSaveReload() |
2131 | ····{ |
2132 | ········CreateObjects(); |
2133 | ········QueryOwn(); |
2134 | Assert. NotNull( ownVar, "No Query Result") ; |
2135 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2136 | ····} |
2137 | ····[Test] |
2138 | ····public void TestSaveReloadNull() |
2139 | ····{ |
2140 | ········CreateObjects(); |
2141 | ········QueryOwn(); |
2142 | Assert. NotNull( ownVar, "No Query Result") ; |
2143 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2144 | ········ownVar.RelField = new List<CmpDirnTblAutoRight>(); |
2145 | ········pm.Save(); |
2146 | ········pm.UnloadCache(); |
2147 | ········QueryOwn(); |
2148 | Assert. NotNull( ownVar, "No Query Result") ; |
2149 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2150 | ····} |
2151 | ····[Test] |
2152 | ····public void TestSaveReloadRemove() |
2153 | ····{ |
2154 | ········CreateObjects(); |
2155 | ········QueryOwn(); |
2156 | Assert. NotNull( ownVar, "No Query Result") ; |
2157 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2158 | ········ownVar.RemoveRelatedObject(); |
2159 | ········pm.Save(); |
2160 | ········pm.UnloadCache(); |
2161 | ········QueryOwn(); |
2162 | Assert. NotNull( ownVar, "No Query Result") ; |
2163 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2164 | ····} |
2165 | ····void CreateObjects() |
2166 | ····{ |
2167 | ········pm.MakePersistent(ownVar); |
2168 | ········ownVar.AssignRelation(otherVar); |
2169 | ········pm.Save(); |
2170 | ········pm.UnloadCache(); |
2171 | ····} |
2172 | ····void QueryOwn() |
2173 | ····{ |
2174 | ········var q = new NDOQuery<CmpDirnTblAutoLeft>(pm); |
2175 | ········ownVar = q.ExecuteSingle(); |
2176 | ····} |
2177 | ····void QueryOther() |
2178 | ····{ |
2179 | ········var q = new NDOQuery<CmpDirnTblAutoRight>(pm); |
2180 | ········otherVar = q.ExecuteSingle(); |
2181 | ····} |
2182 | } |
2183 | |
2184 | |
2185 | [TestFixture] |
2186 | public class TestCmpBin1NoTblAuto |
2187 | { |
2188 | ····CmpBin1NoTblAutoLeft ownVar; |
2189 | ····CmpBin1NoTblAutoRight otherVar; |
2190 | ····PersistenceManager pm; |
2191 | ····[SetUp] |
2192 | ····public void Setup() |
2193 | ····{ |
2194 | ········pm = PmFactory.NewPersistenceManager(); |
2195 | ········ownVar = new CmpBin1NoTblAutoLeft(); |
2196 | ········otherVar = new CmpBin1NoTblAutoRight(); |
2197 | ····} |
2198 | ····[TearDown] |
2199 | ····public void TearDown() |
2200 | ····{ |
2201 | ········try |
2202 | ········{ |
2203 | ············pm.UnloadCache(); |
2204 | ············var l = pm.Objects<CmpBin1NoTblAutoLeft>().ResultTable; |
2205 | ············pm.Delete(l); |
2206 | ············pm.Save(); |
2207 | ············pm.UnloadCache(); |
2208 | ············decimal count; |
2209 | ············count = (decimal) new NDOQuery<CmpBin1NoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2210 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2211 | ············count = (decimal) new NDOQuery<CmpBin1NoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2212 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2213 | ········} |
2214 | ········catch (Exception) |
2215 | ········{ |
2216 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2217 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2218 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2219 | ········} |
2220 | ····} |
2221 | ····[Test] |
2222 | ····public void TestSaveReload() |
2223 | ····{ |
2224 | ········CreateObjects(); |
2225 | ········QueryOwn(); |
2226 | Assert. NotNull( ownVar, "No Query Result") ; |
2227 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2228 | ····} |
2229 | ····[Test] |
2230 | ····public void TestSaveReloadNull() |
2231 | ····{ |
2232 | ········CreateObjects(); |
2233 | ········QueryOwn(); |
2234 | Assert. NotNull( ownVar, "No Query Result") ; |
2235 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2236 | ········ownVar.RelField = new List<CmpBin1NoTblAutoRight>(); |
2237 | ········pm.Save(); |
2238 | ········pm.UnloadCache(); |
2239 | ········QueryOwn(); |
2240 | Assert. NotNull( ownVar, "No Query Result") ; |
2241 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2242 | ····} |
2243 | ····[Test] |
2244 | ····public void TestSaveReloadRemove() |
2245 | ····{ |
2246 | ········CreateObjects(); |
2247 | ········QueryOwn(); |
2248 | Assert. NotNull( ownVar, "No Query Result") ; |
2249 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2250 | ········ownVar.RemoveRelatedObject(); |
2251 | ········pm.Save(); |
2252 | ········pm.UnloadCache(); |
2253 | ········QueryOwn(); |
2254 | Assert. NotNull( ownVar, "No Query Result") ; |
2255 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2256 | ····} |
2257 | ····[Test] |
2258 | ····public void TestChangeKeyHolderRight() |
2259 | ····{ |
2260 | ········CreateObjects(); |
2261 | ········QueryOther(); |
2262 | Assert. NotNull( otherVar, "No Query Result") ; |
2263 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2264 | ········int x = otherVar.RelField.Dummy; |
2265 | ········otherVar.Dummy = 4711; |
2266 | ········pm.Save(); |
2267 | ········pm.UnloadCache(); |
2268 | ········QueryOther(); |
2269 | Assert. NotNull( otherVar, "No Query Result") ; |
2270 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
2271 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2272 | ····} |
2273 | ····[Test] |
2274 | ····public void TestChangeKeyHolderRightNoTouch() |
2275 | ····{ |
2276 | ········CreateObjects(); |
2277 | ········QueryOther(); |
2278 | Assert. NotNull( otherVar, "No Query Result") ; |
2279 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2280 | ········otherVar.Dummy = 4711; |
2281 | ········pm.Save(); |
2282 | ········pm.UnloadCache(); |
2283 | ········QueryOther(); |
2284 | Assert. NotNull( otherVar, "No Query Result") ; |
2285 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
2286 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2287 | ····} |
2288 | ····[Test] |
2289 | ····public void TestUpdateOrder() |
2290 | ····{ |
2291 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
2292 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
2293 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1NoTblAutoLeft)})) |
2294 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1NoTblAutoRight)})), "Wrong order #1"); |
2295 | ········Debug.WriteLine("CmpBin1NoTblAutoLeft"); |
2296 | ····} |
2297 | ····[Test] |
2298 | ····public void TestRelationHash() |
2299 | ····{ |
2300 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1NoTblAutoLeft)); |
2301 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
2302 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1NoTblAutoRight)); |
2303 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
2304 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
2305 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
2306 | ····} |
2307 | ····void CreateObjects() |
2308 | ····{ |
2309 | ········pm.MakePersistent(ownVar); |
2310 | ········ownVar.AssignRelation(otherVar); |
2311 | ········pm.Save(); |
2312 | ········pm.UnloadCache(); |
2313 | ····} |
2314 | ····void QueryOwn() |
2315 | ····{ |
2316 | ········var q = new NDOQuery<CmpBin1NoTblAutoLeft>(pm); |
2317 | ········ownVar = q.ExecuteSingle(); |
2318 | ····} |
2319 | ····void QueryOther() |
2320 | ····{ |
2321 | ········var q = new NDOQuery<CmpBin1NoTblAutoRight>(pm); |
2322 | ········otherVar = q.ExecuteSingle(); |
2323 | ····} |
2324 | } |
2325 | |
2326 | |
2327 | [TestFixture] |
2328 | public class TestCmpBin1TblAuto |
2329 | { |
2330 | ····CmpBin1TblAutoLeft ownVar; |
2331 | ····CmpBin1TblAutoRight otherVar; |
2332 | ····PersistenceManager pm; |
2333 | ····[SetUp] |
2334 | ····public void Setup() |
2335 | ····{ |
2336 | ········pm = PmFactory.NewPersistenceManager(); |
2337 | ········ownVar = new CmpBin1TblAutoLeft(); |
2338 | ········otherVar = new CmpBin1TblAutoRight(); |
2339 | ····} |
2340 | ····[TearDown] |
2341 | ····public void TearDown() |
2342 | ····{ |
2343 | ········try |
2344 | ········{ |
2345 | ············pm.UnloadCache(); |
2346 | ············var l = pm.Objects<CmpBin1TblAutoLeft>().ResultTable; |
2347 | ············pm.Delete(l); |
2348 | ············pm.Save(); |
2349 | ············pm.UnloadCache(); |
2350 | ············decimal count; |
2351 | ············count = (decimal) new NDOQuery<CmpBin1TblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2352 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2353 | ············count = (decimal) new NDOQuery<CmpBin1TblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2354 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2355 | ········} |
2356 | ········catch (Exception) |
2357 | ········{ |
2358 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2359 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2360 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2361 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
2362 | ········} |
2363 | ····} |
2364 | ····[Test] |
2365 | ····public void TestSaveReload() |
2366 | ····{ |
2367 | ········CreateObjects(); |
2368 | ········QueryOwn(); |
2369 | Assert. NotNull( ownVar, "No Query Result") ; |
2370 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2371 | ····} |
2372 | ····[Test] |
2373 | ····public void TestSaveReloadNull() |
2374 | ····{ |
2375 | ········CreateObjects(); |
2376 | ········QueryOwn(); |
2377 | Assert. NotNull( ownVar, "No Query Result") ; |
2378 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2379 | ········ownVar.RelField = new List<CmpBin1TblAutoRight>(); |
2380 | ········pm.Save(); |
2381 | ········pm.UnloadCache(); |
2382 | ········QueryOwn(); |
2383 | Assert. NotNull( ownVar, "No Query Result") ; |
2384 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2385 | ····} |
2386 | ····[Test] |
2387 | ····public void TestSaveReloadRemove() |
2388 | ····{ |
2389 | ········CreateObjects(); |
2390 | ········QueryOwn(); |
2391 | Assert. NotNull( ownVar, "No Query Result") ; |
2392 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2393 | ········ownVar.RemoveRelatedObject(); |
2394 | ········pm.Save(); |
2395 | ········pm.UnloadCache(); |
2396 | ········QueryOwn(); |
2397 | Assert. NotNull( ownVar, "No Query Result") ; |
2398 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2399 | ····} |
2400 | ····[Test] |
2401 | ····public void TestChangeKeyHolderRight() |
2402 | ····{ |
2403 | ········CreateObjects(); |
2404 | ········QueryOther(); |
2405 | Assert. NotNull( otherVar, "No Query Result") ; |
2406 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2407 | ········int x = otherVar.RelField.Dummy; |
2408 | ········otherVar.Dummy = 4711; |
2409 | ········pm.Save(); |
2410 | ········pm.UnloadCache(); |
2411 | ········QueryOther(); |
2412 | Assert. NotNull( otherVar, "No Query Result") ; |
2413 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
2414 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2415 | ····} |
2416 | ····[Test] |
2417 | ····public void TestChangeKeyHolderRightNoTouch() |
2418 | ····{ |
2419 | ········CreateObjects(); |
2420 | ········QueryOther(); |
2421 | Assert. NotNull( otherVar, "No Query Result") ; |
2422 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2423 | ········otherVar.Dummy = 4711; |
2424 | ········pm.Save(); |
2425 | ········pm.UnloadCache(); |
2426 | ········QueryOther(); |
2427 | Assert. NotNull( otherVar, "No Query Result") ; |
2428 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
2429 | Assert. NotNull( otherVar. RelField, "No related object") ; |
2430 | ····} |
2431 | ····[Test] |
2432 | ····public void TestRelationHash() |
2433 | ····{ |
2434 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1TblAutoLeft)); |
2435 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
2436 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1TblAutoRight)); |
2437 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
2438 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
2439 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
2440 | ····} |
2441 | ····void CreateObjects() |
2442 | ····{ |
2443 | ········pm.MakePersistent(ownVar); |
2444 | ········ownVar.AssignRelation(otherVar); |
2445 | ········pm.Save(); |
2446 | ········pm.UnloadCache(); |
2447 | ····} |
2448 | ····void QueryOwn() |
2449 | ····{ |
2450 | ········var q = new NDOQuery<CmpBin1TblAutoLeft>(pm); |
2451 | ········ownVar = q.ExecuteSingle(); |
2452 | ····} |
2453 | ····void QueryOther() |
2454 | ····{ |
2455 | ········var q = new NDOQuery<CmpBin1TblAutoRight>(pm); |
2456 | ········otherVar = q.ExecuteSingle(); |
2457 | ····} |
2458 | } |
2459 | |
2460 | |
2461 | [TestFixture] |
2462 | public class TestCmpBi1nNoTblAuto |
2463 | { |
2464 | ····CmpBi1nNoTblAutoLeft ownVar; |
2465 | ····CmpBi1nNoTblAutoRight otherVar; |
2466 | ····PersistenceManager pm; |
2467 | ····[SetUp] |
2468 | ····public void Setup() |
2469 | ····{ |
2470 | ········pm = PmFactory.NewPersistenceManager(); |
2471 | ········ownVar = new CmpBi1nNoTblAutoLeft(); |
2472 | ········otherVar = new CmpBi1nNoTblAutoRight(); |
2473 | ····} |
2474 | ····[TearDown] |
2475 | ····public void TearDown() |
2476 | ····{ |
2477 | ········try |
2478 | ········{ |
2479 | ············pm.UnloadCache(); |
2480 | ············var l = pm.Objects<CmpBi1nNoTblAutoLeft>().ResultTable; |
2481 | ············pm.Delete(l); |
2482 | ············pm.Save(); |
2483 | ············pm.UnloadCache(); |
2484 | ············decimal count; |
2485 | ············count = (decimal) new NDOQuery<CmpBi1nNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2486 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2487 | ············count = (decimal) new NDOQuery<CmpBi1nNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2488 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2489 | ········} |
2490 | ········catch (Exception) |
2491 | ········{ |
2492 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2493 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2494 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2495 | ········} |
2496 | ····} |
2497 | ····[Test] |
2498 | ····public void TestSaveReload() |
2499 | ····{ |
2500 | ········CreateObjects(); |
2501 | ········QueryOwn(); |
2502 | Assert. NotNull( ownVar, "No Query Result") ; |
2503 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2504 | ····} |
2505 | ····[Test] |
2506 | ····public void TestSaveReloadNull() |
2507 | ····{ |
2508 | ········CreateObjects(); |
2509 | ········QueryOwn(); |
2510 | Assert. NotNull( ownVar, "No Query Result") ; |
2511 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2512 | ········ownVar.RelField = null; |
2513 | ········pm.Save(); |
2514 | ········pm.UnloadCache(); |
2515 | ········QueryOwn(); |
2516 | Assert. NotNull( ownVar, "No Query Result") ; |
2517 | Assert. Null( ownVar. RelField, "There should be no object") ; |
2518 | ····} |
2519 | ····[Test] |
2520 | ····public void TestChangeKeyHolderLeft() |
2521 | ····{ |
2522 | ········CreateObjects(); |
2523 | ········QueryOwn(); |
2524 | Assert. NotNull( ownVar, "No Query Result") ; |
2525 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2526 | ········int x = ownVar.RelField.Dummy; |
2527 | ········ownVar.Dummy = 4711; |
2528 | ········pm.Save(); |
2529 | ········pm.UnloadCache(); |
2530 | ········QueryOwn(); |
2531 | Assert. NotNull( ownVar, "No Query Result") ; |
2532 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2533 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2534 | ····} |
2535 | ····[Test] |
2536 | ····public void TestChangeKeyHolderLeftNoTouch() |
2537 | ····{ |
2538 | ········CreateObjects(); |
2539 | ········QueryOwn(); |
2540 | Assert. NotNull( ownVar, "No Query Result") ; |
2541 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2542 | ········ownVar.Dummy = 4711; |
2543 | ········pm.Save(); |
2544 | ········pm.UnloadCache(); |
2545 | ········QueryOwn(); |
2546 | Assert. NotNull( ownVar, "No Query Result") ; |
2547 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2548 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2549 | ····} |
2550 | ····[Test] |
2551 | ····public void TestUpdateOrder() |
2552 | ····{ |
2553 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
2554 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
2555 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpBi1nNoTblAutoLeft)})) |
2556 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(CmpBi1nNoTblAutoRight)})), "Wrong order #1"); |
2557 | ········Debug.WriteLine("CmpBi1nNoTblAutoLeft"); |
2558 | ····} |
2559 | ····[Test] |
2560 | ····public void TestRelationHash() |
2561 | ····{ |
2562 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nNoTblAutoLeft)); |
2563 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
2564 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nNoTblAutoRight)); |
2565 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
2566 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
2567 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
2568 | ····} |
2569 | ····void CreateObjects() |
2570 | ····{ |
2571 | ········pm.MakePersistent(ownVar); |
2572 | ········ownVar.AssignRelation(otherVar); |
2573 | ········pm.Save(); |
2574 | ········pm.UnloadCache(); |
2575 | ····} |
2576 | ····void QueryOwn() |
2577 | ····{ |
2578 | ········var q = new NDOQuery<CmpBi1nNoTblAutoLeft>(pm); |
2579 | ········ownVar = q.ExecuteSingle(); |
2580 | ····} |
2581 | ····void QueryOther() |
2582 | ····{ |
2583 | ········var q = new NDOQuery<CmpBi1nNoTblAutoRight>(pm); |
2584 | ········otherVar = q.ExecuteSingle(); |
2585 | ····} |
2586 | } |
2587 | |
2588 | |
2589 | [TestFixture] |
2590 | public class TestCmpBi1nTblAuto |
2591 | { |
2592 | ····CmpBi1nTblAutoLeft ownVar; |
2593 | ····CmpBi1nTblAutoRight otherVar; |
2594 | ····PersistenceManager pm; |
2595 | ····[SetUp] |
2596 | ····public void Setup() |
2597 | ····{ |
2598 | ········pm = PmFactory.NewPersistenceManager(); |
2599 | ········ownVar = new CmpBi1nTblAutoLeft(); |
2600 | ········otherVar = new CmpBi1nTblAutoRight(); |
2601 | ····} |
2602 | ····[TearDown] |
2603 | ····public void TearDown() |
2604 | ····{ |
2605 | ········try |
2606 | ········{ |
2607 | ············pm.UnloadCache(); |
2608 | ············var l = pm.Objects<CmpBi1nTblAutoLeft>().ResultTable; |
2609 | ············pm.Delete(l); |
2610 | ············pm.Save(); |
2611 | ············pm.UnloadCache(); |
2612 | ············decimal count; |
2613 | ············count = (decimal) new NDOQuery<CmpBi1nTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2614 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2615 | ············count = (decimal) new NDOQuery<CmpBi1nTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2616 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2617 | ········} |
2618 | ········catch (Exception) |
2619 | ········{ |
2620 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2621 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2622 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2623 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
2624 | ········} |
2625 | ····} |
2626 | ····[Test] |
2627 | ····public void TestSaveReload() |
2628 | ····{ |
2629 | ········CreateObjects(); |
2630 | ········QueryOwn(); |
2631 | Assert. NotNull( ownVar, "No Query Result") ; |
2632 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2633 | ····} |
2634 | ····[Test] |
2635 | ····public void TestSaveReloadNull() |
2636 | ····{ |
2637 | ········CreateObjects(); |
2638 | ········QueryOwn(); |
2639 | Assert. NotNull( ownVar, "No Query Result") ; |
2640 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2641 | ········ownVar.RelField = null; |
2642 | ········pm.Save(); |
2643 | ········pm.UnloadCache(); |
2644 | ········QueryOwn(); |
2645 | Assert. NotNull( ownVar, "No Query Result") ; |
2646 | Assert. Null( ownVar. RelField, "There should be no object") ; |
2647 | ····} |
2648 | ····[Test] |
2649 | ····public void TestChangeKeyHolderLeft() |
2650 | ····{ |
2651 | ········CreateObjects(); |
2652 | ········QueryOwn(); |
2653 | Assert. NotNull( ownVar, "No Query Result") ; |
2654 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2655 | ········int x = ownVar.RelField.Dummy; |
2656 | ········ownVar.Dummy = 4711; |
2657 | ········pm.Save(); |
2658 | ········pm.UnloadCache(); |
2659 | ········QueryOwn(); |
2660 | Assert. NotNull( ownVar, "No Query Result") ; |
2661 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2662 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2663 | ····} |
2664 | ····[Test] |
2665 | ····public void TestChangeKeyHolderLeftNoTouch() |
2666 | ····{ |
2667 | ········CreateObjects(); |
2668 | ········QueryOwn(); |
2669 | Assert. NotNull( ownVar, "No Query Result") ; |
2670 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2671 | ········ownVar.Dummy = 4711; |
2672 | ········pm.Save(); |
2673 | ········pm.UnloadCache(); |
2674 | ········QueryOwn(); |
2675 | Assert. NotNull( ownVar, "No Query Result") ; |
2676 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2677 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2678 | ····} |
2679 | ····[Test] |
2680 | ····public void TestRelationHash() |
2681 | ····{ |
2682 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nTblAutoLeft)); |
2683 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
2684 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nTblAutoRight)); |
2685 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
2686 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
2687 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
2688 | ····} |
2689 | ····void CreateObjects() |
2690 | ····{ |
2691 | ········pm.MakePersistent(ownVar); |
2692 | ········ownVar.AssignRelation(otherVar); |
2693 | ········pm.Save(); |
2694 | ········pm.UnloadCache(); |
2695 | ····} |
2696 | ····void QueryOwn() |
2697 | ····{ |
2698 | ········var q = new NDOQuery<CmpBi1nTblAutoLeft>(pm); |
2699 | ········ownVar = q.ExecuteSingle(); |
2700 | ····} |
2701 | ····void QueryOther() |
2702 | ····{ |
2703 | ········var q = new NDOQuery<CmpBi1nTblAutoRight>(pm); |
2704 | ········otherVar = q.ExecuteSingle(); |
2705 | ····} |
2706 | } |
2707 | |
2708 | |
2709 | [TestFixture] |
2710 | public class TestCmpBinnTblAuto |
2711 | { |
2712 | ····CmpBinnTblAutoLeft ownVar; |
2713 | ····CmpBinnTblAutoRight otherVar; |
2714 | ····PersistenceManager pm; |
2715 | ····[SetUp] |
2716 | ····public void Setup() |
2717 | ····{ |
2718 | ········pm = PmFactory.NewPersistenceManager(); |
2719 | ········ownVar = new CmpBinnTblAutoLeft(); |
2720 | ········otherVar = new CmpBinnTblAutoRight(); |
2721 | ····} |
2722 | ····[TearDown] |
2723 | ····public void TearDown() |
2724 | ····{ |
2725 | ········try |
2726 | ········{ |
2727 | ············pm.UnloadCache(); |
2728 | ············var l = pm.Objects<CmpBinnTblAutoLeft>().ResultTable; |
2729 | ············pm.Delete(l); |
2730 | ············pm.Save(); |
2731 | ············pm.UnloadCache(); |
2732 | ············decimal count; |
2733 | ············count = (decimal) new NDOQuery<CmpBinnTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2734 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2735 | ············count = (decimal) new NDOQuery<CmpBinnTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2736 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2737 | ········} |
2738 | ········catch (Exception) |
2739 | ········{ |
2740 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2741 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2742 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2743 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
2744 | ········} |
2745 | ····} |
2746 | ····[Test] |
2747 | ····public void TestSaveReload() |
2748 | ····{ |
2749 | ········CreateObjects(); |
2750 | ········QueryOwn(); |
2751 | Assert. NotNull( ownVar, "No Query Result") ; |
2752 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2753 | ····} |
2754 | ····[Test] |
2755 | ····public void TestSaveReloadNull() |
2756 | ····{ |
2757 | ········CreateObjects(); |
2758 | ········QueryOwn(); |
2759 | Assert. NotNull( ownVar, "No Query Result") ; |
2760 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2761 | ········ownVar.RelField = new List<CmpBinnTblAutoRight>(); |
2762 | ········pm.Save(); |
2763 | ········pm.UnloadCache(); |
2764 | ········QueryOwn(); |
2765 | Assert. NotNull( ownVar, "No Query Result") ; |
2766 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2767 | ····} |
2768 | ····[Test] |
2769 | ····public void TestSaveReloadRemove() |
2770 | ····{ |
2771 | ········CreateObjects(); |
2772 | ········QueryOwn(); |
2773 | Assert. NotNull( ownVar, "No Query Result") ; |
2774 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
2775 | ········ownVar.RemoveRelatedObject(); |
2776 | ········pm.Save(); |
2777 | ········pm.UnloadCache(); |
2778 | ········QueryOwn(); |
2779 | Assert. NotNull( ownVar, "No Query Result") ; |
2780 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
2781 | ····} |
2782 | ····[Test] |
2783 | ····public void TestRelationHash() |
2784 | ····{ |
2785 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBinnTblAutoLeft)); |
2786 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
2787 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBinnTblAutoRight)); |
2788 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
2789 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
2790 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
2791 | ····} |
2792 | ····void CreateObjects() |
2793 | ····{ |
2794 | ········pm.MakePersistent(ownVar); |
2795 | ········ownVar.AssignRelation(otherVar); |
2796 | ········pm.Save(); |
2797 | ········pm.UnloadCache(); |
2798 | ····} |
2799 | ····void QueryOwn() |
2800 | ····{ |
2801 | ········var q = new NDOQuery<CmpBinnTblAutoLeft>(pm); |
2802 | ········ownVar = q.ExecuteSingle(); |
2803 | ····} |
2804 | ····void QueryOther() |
2805 | ····{ |
2806 | ········var q = new NDOQuery<CmpBinnTblAutoRight>(pm); |
2807 | ········otherVar = q.ExecuteSingle(); |
2808 | ····} |
2809 | } |
2810 | |
2811 | |
2812 | [TestFixture] |
2813 | public class TestAgrDir1OwnpconNoTblAuto |
2814 | { |
2815 | ····AgrDir1OwnpconNoTblAutoLeftBase ownVar; |
2816 | ····AgrDir1OwnpconNoTblAutoRight otherVar; |
2817 | ····PersistenceManager pm; |
2818 | ····[SetUp] |
2819 | ····public void Setup() |
2820 | ····{ |
2821 | ········pm = PmFactory.NewPersistenceManager(); |
2822 | ········ownVar = new AgrDir1OwnpconNoTblAutoLeftDerived(); |
2823 | ········otherVar = new AgrDir1OwnpconNoTblAutoRight(); |
2824 | ····} |
2825 | ····[TearDown] |
2826 | ····public void TearDown() |
2827 | ····{ |
2828 | ········try |
2829 | ········{ |
2830 | ············pm.UnloadCache(); |
2831 | ············var l = pm.Objects<AgrDir1OwnpconNoTblAutoLeftBase>().ResultTable; |
2832 | ············pm.Delete(l); |
2833 | ············pm.Save(); |
2834 | ············pm.UnloadCache(); |
2835 | ············var m = pm.Objects<AgrDir1OwnpconNoTblAutoRight>().ResultTable; |
2836 | ············pm.Delete(m); |
2837 | ············pm.Save(); |
2838 | ············pm.UnloadCache(); |
2839 | ············decimal count; |
2840 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2841 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2842 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2843 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2844 | ········} |
2845 | ········catch (Exception) |
2846 | ········{ |
2847 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2848 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2849 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2850 | ········} |
2851 | ····} |
2852 | ····[Test] |
2853 | ····public void TestSaveReload() |
2854 | ····{ |
2855 | ········CreateObjects(); |
2856 | ········QueryOwn(); |
2857 | Assert. NotNull( ownVar, "No Query Result") ; |
2858 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2859 | ····} |
2860 | ····[Test] |
2861 | ····public void TestSaveReloadNull() |
2862 | ····{ |
2863 | ········CreateObjects(); |
2864 | ········QueryOwn(); |
2865 | Assert. NotNull( ownVar, "No Query Result") ; |
2866 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2867 | ········ownVar.RelField = null; |
2868 | ········pm.Save(); |
2869 | ········pm.UnloadCache(); |
2870 | ········QueryOwn(); |
2871 | Assert. NotNull( ownVar, "No Query Result") ; |
2872 | Assert. Null( ownVar. RelField, "There should be no object") ; |
2873 | ····} |
2874 | ····[Test] |
2875 | ····public void TestChangeKeyHolderLeft() |
2876 | ····{ |
2877 | ········CreateObjects(); |
2878 | ········QueryOwn(); |
2879 | Assert. NotNull( ownVar, "No Query Result") ; |
2880 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2881 | ········int x = ownVar.RelField.Dummy; |
2882 | ········ownVar.Dummy = 4711; |
2883 | ········pm.Save(); |
2884 | ········pm.UnloadCache(); |
2885 | ········QueryOwn(); |
2886 | Assert. NotNull( ownVar, "No Query Result") ; |
2887 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2888 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2889 | ····} |
2890 | ····[Test] |
2891 | ····public void TestChangeKeyHolderLeftNoTouch() |
2892 | ····{ |
2893 | ········CreateObjects(); |
2894 | ········QueryOwn(); |
2895 | Assert. NotNull( ownVar, "No Query Result") ; |
2896 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2897 | ········ownVar.Dummy = 4711; |
2898 | ········pm.Save(); |
2899 | ········pm.UnloadCache(); |
2900 | ········QueryOwn(); |
2901 | Assert. NotNull( ownVar, "No Query Result") ; |
2902 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
2903 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2904 | ····} |
2905 | ····[Test] |
2906 | ····public void TestUpdateOrder() |
2907 | ····{ |
2908 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
2909 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
2910 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconNoTblAutoLeftBase)})) |
2911 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconNoTblAutoRight)})), "Wrong order #1"); |
2912 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconNoTblAutoLeftDerived)})) |
2913 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconNoTblAutoRight)})), "Wrong order #2"); |
2914 | ········Debug.WriteLine("AgrDir1OwnpconNoTblAutoLeftBase"); |
2915 | ····} |
2916 | ····void CreateObjects() |
2917 | ····{ |
2918 | ········pm.MakePersistent(ownVar); |
2919 | ········pm.MakePersistent(otherVar); |
2920 | ········ownVar.AssignRelation(otherVar); |
2921 | ········pm.Save(); |
2922 | ········pm.UnloadCache(); |
2923 | ····} |
2924 | ····void QueryOwn() |
2925 | ····{ |
2926 | ········var q = new NDOQuery<AgrDir1OwnpconNoTblAutoLeftBase>(pm); |
2927 | ········ownVar = q.ExecuteSingle(); |
2928 | ····} |
2929 | ····void QueryOther() |
2930 | ····{ |
2931 | ········var q = new NDOQuery<AgrDir1OwnpconNoTblAutoRight>(pm); |
2932 | ········otherVar = q.ExecuteSingle(); |
2933 | ····} |
2934 | } |
2935 | |
2936 | |
2937 | [TestFixture] |
2938 | public class TestAgrDir1OwnpconTblAuto |
2939 | { |
2940 | ····AgrDir1OwnpconTblAutoLeftBase ownVar; |
2941 | ····AgrDir1OwnpconTblAutoRight otherVar; |
2942 | ····PersistenceManager pm; |
2943 | ····[SetUp] |
2944 | ····public void Setup() |
2945 | ····{ |
2946 | ········pm = PmFactory.NewPersistenceManager(); |
2947 | ········ownVar = new AgrDir1OwnpconTblAutoLeftDerived(); |
2948 | ········otherVar = new AgrDir1OwnpconTblAutoRight(); |
2949 | ····} |
2950 | ····[TearDown] |
2951 | ····public void TearDown() |
2952 | ····{ |
2953 | ········try |
2954 | ········{ |
2955 | ············pm.UnloadCache(); |
2956 | ············var l = pm.Objects<AgrDir1OwnpconTblAutoLeftBase>().ResultTable; |
2957 | ············pm.Delete(l); |
2958 | ············pm.Save(); |
2959 | ············pm.UnloadCache(); |
2960 | ············var m = pm.Objects<AgrDir1OwnpconTblAutoRight>().ResultTable; |
2961 | ············pm.Delete(m); |
2962 | ············pm.Save(); |
2963 | ············pm.UnloadCache(); |
2964 | ············decimal count; |
2965 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2966 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
2967 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
2968 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
2969 | ········} |
2970 | ········catch (Exception) |
2971 | ········{ |
2972 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
2973 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
2974 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
2975 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
2976 | ········} |
2977 | ····} |
2978 | ····[Test] |
2979 | ····public void TestSaveReload() |
2980 | ····{ |
2981 | ········CreateObjects(); |
2982 | ········QueryOwn(); |
2983 | Assert. NotNull( ownVar, "No Query Result") ; |
2984 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2985 | ····} |
2986 | ····[Test] |
2987 | ····public void TestSaveReloadNull() |
2988 | ····{ |
2989 | ········CreateObjects(); |
2990 | ········QueryOwn(); |
2991 | Assert. NotNull( ownVar, "No Query Result") ; |
2992 | Assert. NotNull( ownVar. RelField, "No related object") ; |
2993 | ········ownVar.RelField = null; |
2994 | ········pm.Save(); |
2995 | ········pm.UnloadCache(); |
2996 | ········QueryOwn(); |
2997 | Assert. NotNull( ownVar, "No Query Result") ; |
2998 | Assert. Null( ownVar. RelField, "There should be no object") ; |
2999 | ····} |
3000 | ····[Test] |
3001 | ····public void TestChangeKeyHolderLeft() |
3002 | ····{ |
3003 | ········CreateObjects(); |
3004 | ········QueryOwn(); |
3005 | Assert. NotNull( ownVar, "No Query Result") ; |
3006 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3007 | ········int x = ownVar.RelField.Dummy; |
3008 | ········ownVar.Dummy = 4711; |
3009 | ········pm.Save(); |
3010 | ········pm.UnloadCache(); |
3011 | ········QueryOwn(); |
3012 | Assert. NotNull( ownVar, "No Query Result") ; |
3013 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3014 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3015 | ····} |
3016 | ····[Test] |
3017 | ····public void TestChangeKeyHolderLeftNoTouch() |
3018 | ····{ |
3019 | ········CreateObjects(); |
3020 | ········QueryOwn(); |
3021 | Assert. NotNull( ownVar, "No Query Result") ; |
3022 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3023 | ········ownVar.Dummy = 4711; |
3024 | ········pm.Save(); |
3025 | ········pm.UnloadCache(); |
3026 | ········QueryOwn(); |
3027 | Assert. NotNull( ownVar, "No Query Result") ; |
3028 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3029 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3030 | ····} |
3031 | ····void CreateObjects() |
3032 | ····{ |
3033 | ········pm.MakePersistent(ownVar); |
3034 | ········pm.MakePersistent(otherVar); |
3035 | ········ownVar.AssignRelation(otherVar); |
3036 | ········pm.Save(); |
3037 | ········pm.UnloadCache(); |
3038 | ····} |
3039 | ····void QueryOwn() |
3040 | ····{ |
3041 | ········var q = new NDOQuery<AgrDir1OwnpconTblAutoLeftBase>(pm); |
3042 | ········ownVar = q.ExecuteSingle(); |
3043 | ····} |
3044 | ····void QueryOther() |
3045 | ····{ |
3046 | ········var q = new NDOQuery<AgrDir1OwnpconTblAutoRight>(pm); |
3047 | ········otherVar = q.ExecuteSingle(); |
3048 | ····} |
3049 | } |
3050 | |
3051 | |
3052 | [TestFixture] |
3053 | public class TestAgrBi11OwnpconNoTblAuto |
3054 | { |
3055 | ····AgrBi11OwnpconNoTblAutoLeftBase ownVar; |
3056 | ····AgrBi11OwnpconNoTblAutoRight otherVar; |
3057 | ····PersistenceManager pm; |
3058 | ····[SetUp] |
3059 | ····public void Setup() |
3060 | ····{ |
3061 | ········pm = PmFactory.NewPersistenceManager(); |
3062 | ········ownVar = new AgrBi11OwnpconNoTblAutoLeftDerived(); |
3063 | ········otherVar = new AgrBi11OwnpconNoTblAutoRight(); |
3064 | ····} |
3065 | ····[TearDown] |
3066 | ····public void TearDown() |
3067 | ····{ |
3068 | ········try |
3069 | ········{ |
3070 | ············pm.UnloadCache(); |
3071 | ············var l = pm.Objects<AgrBi11OwnpconNoTblAutoLeftBase>().ResultTable; |
3072 | ············pm.Delete(l); |
3073 | ············pm.Save(); |
3074 | ············pm.UnloadCache(); |
3075 | ············var m = pm.Objects<AgrBi11OwnpconNoTblAutoRight>().ResultTable; |
3076 | ············pm.Delete(m); |
3077 | ············pm.Save(); |
3078 | ············pm.UnloadCache(); |
3079 | ············decimal count; |
3080 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3081 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3082 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3083 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3084 | ········} |
3085 | ········catch (Exception) |
3086 | ········{ |
3087 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3088 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3089 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3090 | ········} |
3091 | ····} |
3092 | ····[Test] |
3093 | ····public void TestSaveReload() |
3094 | ····{ |
3095 | ········CreateObjects(); |
3096 | ········QueryOwn(); |
3097 | Assert. NotNull( ownVar, "No Query Result") ; |
3098 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3099 | ····} |
3100 | ····[Test] |
3101 | ····public void TestSaveReloadNull() |
3102 | ····{ |
3103 | ········CreateObjects(); |
3104 | ········QueryOwn(); |
3105 | Assert. NotNull( ownVar, "No Query Result") ; |
3106 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3107 | ········ownVar.RelField = null; |
3108 | ········pm.Save(); |
3109 | ········pm.UnloadCache(); |
3110 | ········QueryOwn(); |
3111 | Assert. NotNull( ownVar, "No Query Result") ; |
3112 | Assert. Null( ownVar. RelField, "There should be no object") ; |
3113 | ····} |
3114 | ····[Test] |
3115 | ····public void TestChangeKeyHolderLeft() |
3116 | ····{ |
3117 | ········CreateObjects(); |
3118 | ········QueryOwn(); |
3119 | Assert. NotNull( ownVar, "No Query Result") ; |
3120 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3121 | ········int x = ownVar.RelField.Dummy; |
3122 | ········ownVar.Dummy = 4711; |
3123 | ········pm.Save(); |
3124 | ········pm.UnloadCache(); |
3125 | ········QueryOwn(); |
3126 | Assert. NotNull( ownVar, "No Query Result") ; |
3127 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3128 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3129 | ····} |
3130 | ····[Test] |
3131 | ····public void TestChangeKeyHolderRight() |
3132 | ····{ |
3133 | ········CreateObjects(); |
3134 | ········QueryOther(); |
3135 | Assert. NotNull( otherVar, "No Query Result") ; |
3136 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3137 | ········int x = otherVar.RelField.Dummy; |
3138 | ········otherVar.Dummy = 4711; |
3139 | ········pm.Save(); |
3140 | ········pm.UnloadCache(); |
3141 | ········QueryOther(); |
3142 | Assert. NotNull( otherVar, "No Query Result") ; |
3143 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3144 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3145 | ····} |
3146 | ····[Test] |
3147 | ····public void TestChangeKeyHolderLeftNoTouch() |
3148 | ····{ |
3149 | ········CreateObjects(); |
3150 | ········QueryOwn(); |
3151 | Assert. NotNull( ownVar, "No Query Result") ; |
3152 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3153 | ········ownVar.Dummy = 4711; |
3154 | ········pm.Save(); |
3155 | ········pm.UnloadCache(); |
3156 | ········QueryOwn(); |
3157 | Assert. NotNull( ownVar, "No Query Result") ; |
3158 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3159 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3160 | ····} |
3161 | ····[Test] |
3162 | ····public void TestChangeKeyHolderRightNoTouch() |
3163 | ····{ |
3164 | ········CreateObjects(); |
3165 | ········QueryOther(); |
3166 | Assert. NotNull( otherVar, "No Query Result") ; |
3167 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3168 | ········otherVar.Dummy = 4711; |
3169 | ········pm.Save(); |
3170 | ········pm.UnloadCache(); |
3171 | ········QueryOther(); |
3172 | Assert. NotNull( otherVar, "No Query Result") ; |
3173 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3174 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3175 | ····} |
3176 | ····[Test] |
3177 | ····public void TestRelationHash() |
3178 | ····{ |
3179 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconNoTblAutoLeftBase)); |
3180 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
3181 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconNoTblAutoRight)); |
3182 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
3183 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
3184 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
3185 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconNoTblAutoLeftDerived)); |
3186 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
3187 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
3188 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
3189 | ····} |
3190 | ····void CreateObjects() |
3191 | ····{ |
3192 | ········pm.MakePersistent(ownVar); |
3193 | ········pm.MakePersistent(otherVar); |
3194 | ········pm.Save(); |
3195 | ········ownVar.AssignRelation(otherVar); |
3196 | ········pm.Save(); |
3197 | ········pm.UnloadCache(); |
3198 | ····} |
3199 | ····void QueryOwn() |
3200 | ····{ |
3201 | ········var q = new NDOQuery<AgrBi11OwnpconNoTblAutoLeftBase>(pm); |
3202 | ········ownVar = q.ExecuteSingle(); |
3203 | ····} |
3204 | ····void QueryOther() |
3205 | ····{ |
3206 | ········var q = new NDOQuery<AgrBi11OwnpconNoTblAutoRight>(pm); |
3207 | ········otherVar = q.ExecuteSingle(); |
3208 | ····} |
3209 | } |
3210 | |
3211 | |
3212 | [TestFixture] |
3213 | public class TestAgrBi11OwnpconTblAuto |
3214 | { |
3215 | ····AgrBi11OwnpconTblAutoLeftBase ownVar; |
3216 | ····AgrBi11OwnpconTblAutoRight otherVar; |
3217 | ····PersistenceManager pm; |
3218 | ····[SetUp] |
3219 | ····public void Setup() |
3220 | ····{ |
3221 | ········pm = PmFactory.NewPersistenceManager(); |
3222 | ········ownVar = new AgrBi11OwnpconTblAutoLeftDerived(); |
3223 | ········otherVar = new AgrBi11OwnpconTblAutoRight(); |
3224 | ····} |
3225 | ····[TearDown] |
3226 | ····public void TearDown() |
3227 | ····{ |
3228 | ········try |
3229 | ········{ |
3230 | ············pm.UnloadCache(); |
3231 | ············var l = pm.Objects<AgrBi11OwnpconTblAutoLeftBase>().ResultTable; |
3232 | ············pm.Delete(l); |
3233 | ············pm.Save(); |
3234 | ············pm.UnloadCache(); |
3235 | ············var m = pm.Objects<AgrBi11OwnpconTblAutoRight>().ResultTable; |
3236 | ············pm.Delete(m); |
3237 | ············pm.Save(); |
3238 | ············pm.UnloadCache(); |
3239 | ············decimal count; |
3240 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3241 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3242 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3243 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3244 | ········} |
3245 | ········catch (Exception) |
3246 | ········{ |
3247 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3248 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3249 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3250 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
3251 | ········} |
3252 | ····} |
3253 | ····[Test] |
3254 | ····public void TestSaveReload() |
3255 | ····{ |
3256 | ········CreateObjects(); |
3257 | ········QueryOwn(); |
3258 | Assert. NotNull( ownVar, "No Query Result") ; |
3259 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3260 | ····} |
3261 | ····[Test] |
3262 | ····public void TestSaveReloadNull() |
3263 | ····{ |
3264 | ········CreateObjects(); |
3265 | ········QueryOwn(); |
3266 | Assert. NotNull( ownVar, "No Query Result") ; |
3267 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3268 | ········ownVar.RelField = null; |
3269 | ········pm.Save(); |
3270 | ········pm.UnloadCache(); |
3271 | ········QueryOwn(); |
3272 | Assert. NotNull( ownVar, "No Query Result") ; |
3273 | Assert. Null( ownVar. RelField, "There should be no object") ; |
3274 | ····} |
3275 | ····[Test] |
3276 | ····public void TestChangeKeyHolderLeft() |
3277 | ····{ |
3278 | ········CreateObjects(); |
3279 | ········QueryOwn(); |
3280 | Assert. NotNull( ownVar, "No Query Result") ; |
3281 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3282 | ········int x = ownVar.RelField.Dummy; |
3283 | ········ownVar.Dummy = 4711; |
3284 | ········pm.Save(); |
3285 | ········pm.UnloadCache(); |
3286 | ········QueryOwn(); |
3287 | Assert. NotNull( ownVar, "No Query Result") ; |
3288 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3289 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3290 | ····} |
3291 | ····[Test] |
3292 | ····public void TestChangeKeyHolderRight() |
3293 | ····{ |
3294 | ········CreateObjects(); |
3295 | ········QueryOther(); |
3296 | Assert. NotNull( otherVar, "No Query Result") ; |
3297 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3298 | ········int x = otherVar.RelField.Dummy; |
3299 | ········otherVar.Dummy = 4711; |
3300 | ········pm.Save(); |
3301 | ········pm.UnloadCache(); |
3302 | ········QueryOther(); |
3303 | Assert. NotNull( otherVar, "No Query Result") ; |
3304 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3305 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3306 | ····} |
3307 | ····[Test] |
3308 | ····public void TestChangeKeyHolderLeftNoTouch() |
3309 | ····{ |
3310 | ········CreateObjects(); |
3311 | ········QueryOwn(); |
3312 | Assert. NotNull( ownVar, "No Query Result") ; |
3313 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3314 | ········ownVar.Dummy = 4711; |
3315 | ········pm.Save(); |
3316 | ········pm.UnloadCache(); |
3317 | ········QueryOwn(); |
3318 | Assert. NotNull( ownVar, "No Query Result") ; |
3319 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3320 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3321 | ····} |
3322 | ····[Test] |
3323 | ····public void TestChangeKeyHolderRightNoTouch() |
3324 | ····{ |
3325 | ········CreateObjects(); |
3326 | ········QueryOther(); |
3327 | Assert. NotNull( otherVar, "No Query Result") ; |
3328 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3329 | ········otherVar.Dummy = 4711; |
3330 | ········pm.Save(); |
3331 | ········pm.UnloadCache(); |
3332 | ········QueryOther(); |
3333 | Assert. NotNull( otherVar, "No Query Result") ; |
3334 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3335 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3336 | ····} |
3337 | ····[Test] |
3338 | ····public void TestRelationHash() |
3339 | ····{ |
3340 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconTblAutoLeftBase)); |
3341 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
3342 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconTblAutoRight)); |
3343 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
3344 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
3345 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
3346 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconTblAutoLeftDerived)); |
3347 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
3348 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
3349 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
3350 | ····} |
3351 | ····void CreateObjects() |
3352 | ····{ |
3353 | ········pm.MakePersistent(ownVar); |
3354 | ········pm.MakePersistent(otherVar); |
3355 | ········pm.Save(); |
3356 | ········ownVar.AssignRelation(otherVar); |
3357 | ········pm.Save(); |
3358 | ········pm.UnloadCache(); |
3359 | ····} |
3360 | ····void QueryOwn() |
3361 | ····{ |
3362 | ········var q = new NDOQuery<AgrBi11OwnpconTblAutoLeftBase>(pm); |
3363 | ········ownVar = q.ExecuteSingle(); |
3364 | ····} |
3365 | ····void QueryOther() |
3366 | ····{ |
3367 | ········var q = new NDOQuery<AgrBi11OwnpconTblAutoRight>(pm); |
3368 | ········otherVar = q.ExecuteSingle(); |
3369 | ····} |
3370 | } |
3371 | |
3372 | |
3373 | [TestFixture] |
3374 | public class TestAgrDirnOwnpconNoTblAuto |
3375 | { |
3376 | ····AgrDirnOwnpconNoTblAutoLeftBase ownVar; |
3377 | ····AgrDirnOwnpconNoTblAutoRight otherVar; |
3378 | ····PersistenceManager pm; |
3379 | ····[SetUp] |
3380 | ····public void Setup() |
3381 | ····{ |
3382 | ········pm = PmFactory.NewPersistenceManager(); |
3383 | ········ownVar = new AgrDirnOwnpconNoTblAutoLeftDerived(); |
3384 | ········otherVar = new AgrDirnOwnpconNoTblAutoRight(); |
3385 | ····} |
3386 | ····[TearDown] |
3387 | ····public void TearDown() |
3388 | ····{ |
3389 | ········try |
3390 | ········{ |
3391 | ············pm.UnloadCache(); |
3392 | ············var l = pm.Objects<AgrDirnOwnpconNoTblAutoLeftBase>().ResultTable; |
3393 | ············pm.Delete(l); |
3394 | ············pm.Save(); |
3395 | ············pm.UnloadCache(); |
3396 | ············var m = pm.Objects<AgrDirnOwnpconNoTblAutoRight>().ResultTable; |
3397 | ············pm.Delete(m); |
3398 | ············pm.Save(); |
3399 | ············pm.UnloadCache(); |
3400 | ············decimal count; |
3401 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3402 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3403 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3404 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3405 | ········} |
3406 | ········catch (Exception) |
3407 | ········{ |
3408 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3409 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3410 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3411 | ········} |
3412 | ····} |
3413 | ····[Test] |
3414 | ····public void TestSaveReload() |
3415 | ····{ |
3416 | ········CreateObjects(); |
3417 | ········QueryOwn(); |
3418 | Assert. NotNull( ownVar, "No Query Result") ; |
3419 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3420 | ····} |
3421 | ····[Test] |
3422 | ····public void TestSaveReloadNull() |
3423 | ····{ |
3424 | ········CreateObjects(); |
3425 | ········QueryOwn(); |
3426 | Assert. NotNull( ownVar, "No Query Result") ; |
3427 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3428 | ········ownVar.RelField = new List<AgrDirnOwnpconNoTblAutoRight>(); |
3429 | ········pm.Save(); |
3430 | ········pm.UnloadCache(); |
3431 | ········QueryOwn(); |
3432 | Assert. NotNull( ownVar, "No Query Result") ; |
3433 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3434 | ····} |
3435 | ····[Test] |
3436 | ····public void TestSaveReloadRemove() |
3437 | ····{ |
3438 | ········CreateObjects(); |
3439 | ········QueryOwn(); |
3440 | Assert. NotNull( ownVar, "No Query Result") ; |
3441 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3442 | ········ownVar.RemoveRelatedObject(); |
3443 | ········pm.Save(); |
3444 | ········pm.UnloadCache(); |
3445 | ········QueryOwn(); |
3446 | Assert. NotNull( ownVar, "No Query Result") ; |
3447 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3448 | ····} |
3449 | ····[Test] |
3450 | ····public void TestUpdateOrder() |
3451 | ····{ |
3452 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
3453 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
3454 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnOwnpconNoTblAutoLeftBase)})) |
3455 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnOwnpconNoTblAutoRight)})), "Wrong order #1"); |
3456 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnOwnpconNoTblAutoLeftDerived)})) |
3457 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrDirnOwnpconNoTblAutoRight)})), "Wrong order #2"); |
3458 | ········Debug.WriteLine("AgrDirnOwnpconNoTblAutoLeftBase"); |
3459 | ····} |
3460 | ····void CreateObjects() |
3461 | ····{ |
3462 | ········pm.MakePersistent(ownVar); |
3463 | ········pm.MakePersistent(otherVar); |
3464 | ········ownVar.AssignRelation(otherVar); |
3465 | ········pm.Save(); |
3466 | ········pm.UnloadCache(); |
3467 | ····} |
3468 | ····void QueryOwn() |
3469 | ····{ |
3470 | ········var q = new NDOQuery<AgrDirnOwnpconNoTblAutoLeftBase>(pm); |
3471 | ········ownVar = q.ExecuteSingle(); |
3472 | ····} |
3473 | ····void QueryOther() |
3474 | ····{ |
3475 | ········var q = new NDOQuery<AgrDirnOwnpconNoTblAutoRight>(pm); |
3476 | ········otherVar = q.ExecuteSingle(); |
3477 | ····} |
3478 | } |
3479 | |
3480 | |
3481 | [TestFixture] |
3482 | public class TestAgrDirnOwnpconTblAuto |
3483 | { |
3484 | ····AgrDirnOwnpconTblAutoLeftBase ownVar; |
3485 | ····AgrDirnOwnpconTblAutoRight otherVar; |
3486 | ····PersistenceManager pm; |
3487 | ····[SetUp] |
3488 | ····public void Setup() |
3489 | ····{ |
3490 | ········pm = PmFactory.NewPersistenceManager(); |
3491 | ········ownVar = new AgrDirnOwnpconTblAutoLeftDerived(); |
3492 | ········otherVar = new AgrDirnOwnpconTblAutoRight(); |
3493 | ····} |
3494 | ····[TearDown] |
3495 | ····public void TearDown() |
3496 | ····{ |
3497 | ········try |
3498 | ········{ |
3499 | ············pm.UnloadCache(); |
3500 | ············var l = pm.Objects<AgrDirnOwnpconTblAutoLeftBase>().ResultTable; |
3501 | ············pm.Delete(l); |
3502 | ············pm.Save(); |
3503 | ············pm.UnloadCache(); |
3504 | ············var m = pm.Objects<AgrDirnOwnpconTblAutoRight>().ResultTable; |
3505 | ············pm.Delete(m); |
3506 | ············pm.Save(); |
3507 | ············pm.UnloadCache(); |
3508 | ············decimal count; |
3509 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3510 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3511 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3512 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3513 | ········} |
3514 | ········catch (Exception) |
3515 | ········{ |
3516 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3517 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3518 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3519 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
3520 | ········} |
3521 | ····} |
3522 | ····[Test] |
3523 | ····public void TestSaveReload() |
3524 | ····{ |
3525 | ········CreateObjects(); |
3526 | ········QueryOwn(); |
3527 | Assert. NotNull( ownVar, "No Query Result") ; |
3528 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3529 | ····} |
3530 | ····[Test] |
3531 | ····public void TestSaveReloadNull() |
3532 | ····{ |
3533 | ········CreateObjects(); |
3534 | ········QueryOwn(); |
3535 | Assert. NotNull( ownVar, "No Query Result") ; |
3536 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3537 | ········ownVar.RelField = new List<AgrDirnOwnpconTblAutoRight>(); |
3538 | ········pm.Save(); |
3539 | ········pm.UnloadCache(); |
3540 | ········QueryOwn(); |
3541 | Assert. NotNull( ownVar, "No Query Result") ; |
3542 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3543 | ····} |
3544 | ····[Test] |
3545 | ····public void TestSaveReloadRemove() |
3546 | ····{ |
3547 | ········CreateObjects(); |
3548 | ········QueryOwn(); |
3549 | Assert. NotNull( ownVar, "No Query Result") ; |
3550 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3551 | ········ownVar.RemoveRelatedObject(); |
3552 | ········pm.Save(); |
3553 | ········pm.UnloadCache(); |
3554 | ········QueryOwn(); |
3555 | Assert. NotNull( ownVar, "No Query Result") ; |
3556 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3557 | ····} |
3558 | ····void CreateObjects() |
3559 | ····{ |
3560 | ········pm.MakePersistent(ownVar); |
3561 | ········pm.MakePersistent(otherVar); |
3562 | ········ownVar.AssignRelation(otherVar); |
3563 | ········pm.Save(); |
3564 | ········pm.UnloadCache(); |
3565 | ····} |
3566 | ····void QueryOwn() |
3567 | ····{ |
3568 | ········var q = new NDOQuery<AgrDirnOwnpconTblAutoLeftBase>(pm); |
3569 | ········ownVar = q.ExecuteSingle(); |
3570 | ····} |
3571 | ····void QueryOther() |
3572 | ····{ |
3573 | ········var q = new NDOQuery<AgrDirnOwnpconTblAutoRight>(pm); |
3574 | ········otherVar = q.ExecuteSingle(); |
3575 | ····} |
3576 | } |
3577 | |
3578 | |
3579 | [TestFixture] |
3580 | public class TestAgrBin1OwnpconNoTblAuto |
3581 | { |
3582 | ····AgrBin1OwnpconNoTblAutoLeftBase ownVar; |
3583 | ····AgrBin1OwnpconNoTblAutoRight otherVar; |
3584 | ····PersistenceManager pm; |
3585 | ····[SetUp] |
3586 | ····public void Setup() |
3587 | ····{ |
3588 | ········pm = PmFactory.NewPersistenceManager(); |
3589 | ········ownVar = new AgrBin1OwnpconNoTblAutoLeftDerived(); |
3590 | ········otherVar = new AgrBin1OwnpconNoTblAutoRight(); |
3591 | ····} |
3592 | ····[TearDown] |
3593 | ····public void TearDown() |
3594 | ····{ |
3595 | ········try |
3596 | ········{ |
3597 | ············pm.UnloadCache(); |
3598 | ············var l = pm.Objects<AgrBin1OwnpconNoTblAutoLeftBase>().ResultTable; |
3599 | ············pm.Delete(l); |
3600 | ············pm.Save(); |
3601 | ············pm.UnloadCache(); |
3602 | ············var m = pm.Objects<AgrBin1OwnpconNoTblAutoRight>().ResultTable; |
3603 | ············pm.Delete(m); |
3604 | ············pm.Save(); |
3605 | ············pm.UnloadCache(); |
3606 | ············decimal count; |
3607 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3608 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3609 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3610 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3611 | ········} |
3612 | ········catch (Exception) |
3613 | ········{ |
3614 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3615 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3616 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3617 | ········} |
3618 | ····} |
3619 | ····[Test] |
3620 | ····public void TestSaveReload() |
3621 | ····{ |
3622 | ········CreateObjects(); |
3623 | ········QueryOwn(); |
3624 | Assert. NotNull( ownVar, "No Query Result") ; |
3625 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3626 | ····} |
3627 | ····[Test] |
3628 | ····public void TestSaveReloadNull() |
3629 | ····{ |
3630 | ········CreateObjects(); |
3631 | ········QueryOwn(); |
3632 | Assert. NotNull( ownVar, "No Query Result") ; |
3633 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3634 | ········ownVar.RelField = new List<AgrBin1OwnpconNoTblAutoRight>(); |
3635 | ········pm.Save(); |
3636 | ········pm.UnloadCache(); |
3637 | ········QueryOwn(); |
3638 | Assert. NotNull( ownVar, "No Query Result") ; |
3639 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3640 | ····} |
3641 | ····[Test] |
3642 | ····public void TestSaveReloadRemove() |
3643 | ····{ |
3644 | ········CreateObjects(); |
3645 | ········QueryOwn(); |
3646 | Assert. NotNull( ownVar, "No Query Result") ; |
3647 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3648 | ········ownVar.RemoveRelatedObject(); |
3649 | ········pm.Save(); |
3650 | ········pm.UnloadCache(); |
3651 | ········QueryOwn(); |
3652 | Assert. NotNull( ownVar, "No Query Result") ; |
3653 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3654 | ····} |
3655 | ····[Test] |
3656 | ····public void TestChangeKeyHolderRight() |
3657 | ····{ |
3658 | ········CreateObjects(); |
3659 | ········QueryOther(); |
3660 | Assert. NotNull( otherVar, "No Query Result") ; |
3661 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3662 | ········int x = otherVar.RelField.Dummy; |
3663 | ········otherVar.Dummy = 4711; |
3664 | ········pm.Save(); |
3665 | ········pm.UnloadCache(); |
3666 | ········QueryOther(); |
3667 | Assert. NotNull( otherVar, "No Query Result") ; |
3668 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3669 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3670 | ····} |
3671 | ····[Test] |
3672 | ····public void TestChangeKeyHolderRightNoTouch() |
3673 | ····{ |
3674 | ········CreateObjects(); |
3675 | ········QueryOther(); |
3676 | Assert. NotNull( otherVar, "No Query Result") ; |
3677 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3678 | ········otherVar.Dummy = 4711; |
3679 | ········pm.Save(); |
3680 | ········pm.UnloadCache(); |
3681 | ········QueryOther(); |
3682 | Assert. NotNull( otherVar, "No Query Result") ; |
3683 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3684 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3685 | ····} |
3686 | ····[Test] |
3687 | ····public void TestUpdateOrder() |
3688 | ····{ |
3689 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
3690 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
3691 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1OwnpconNoTblAutoLeftBase)})) |
3692 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1OwnpconNoTblAutoRight)})), "Wrong order #1"); |
3693 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1OwnpconNoTblAutoLeftDerived)})) |
3694 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(AgrBin1OwnpconNoTblAutoRight)})), "Wrong order #2"); |
3695 | ········Debug.WriteLine("AgrBin1OwnpconNoTblAutoLeftBase"); |
3696 | ····} |
3697 | ····[Test] |
3698 | ····public void TestRelationHash() |
3699 | ····{ |
3700 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconNoTblAutoLeftBase)); |
3701 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
3702 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconNoTblAutoRight)); |
3703 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
3704 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
3705 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
3706 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconNoTblAutoLeftDerived)); |
3707 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
3708 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
3709 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
3710 | ····} |
3711 | ····void CreateObjects() |
3712 | ····{ |
3713 | ········pm.MakePersistent(ownVar); |
3714 | ········pm.MakePersistent(otherVar); |
3715 | ········pm.Save(); |
3716 | ········ownVar.AssignRelation(otherVar); |
3717 | ········pm.Save(); |
3718 | ········pm.UnloadCache(); |
3719 | ····} |
3720 | ····void QueryOwn() |
3721 | ····{ |
3722 | ········var q = new NDOQuery<AgrBin1OwnpconNoTblAutoLeftBase>(pm); |
3723 | ········ownVar = q.ExecuteSingle(); |
3724 | ····} |
3725 | ····void QueryOther() |
3726 | ····{ |
3727 | ········var q = new NDOQuery<AgrBin1OwnpconNoTblAutoRight>(pm); |
3728 | ········otherVar = q.ExecuteSingle(); |
3729 | ····} |
3730 | } |
3731 | |
3732 | |
3733 | [TestFixture] |
3734 | public class TestAgrBin1OwnpconTblAuto |
3735 | { |
3736 | ····AgrBin1OwnpconTblAutoLeftBase ownVar; |
3737 | ····AgrBin1OwnpconTblAutoRight otherVar; |
3738 | ····PersistenceManager pm; |
3739 | ····[SetUp] |
3740 | ····public void Setup() |
3741 | ····{ |
3742 | ········pm = PmFactory.NewPersistenceManager(); |
3743 | ········ownVar = new AgrBin1OwnpconTblAutoLeftDerived(); |
3744 | ········otherVar = new AgrBin1OwnpconTblAutoRight(); |
3745 | ····} |
3746 | ····[TearDown] |
3747 | ····public void TearDown() |
3748 | ····{ |
3749 | ········try |
3750 | ········{ |
3751 | ············pm.UnloadCache(); |
3752 | ············var l = pm.Objects<AgrBin1OwnpconTblAutoLeftBase>().ResultTable; |
3753 | ············pm.Delete(l); |
3754 | ············pm.Save(); |
3755 | ············pm.UnloadCache(); |
3756 | ············var m = pm.Objects<AgrBin1OwnpconTblAutoRight>().ResultTable; |
3757 | ············pm.Delete(m); |
3758 | ············pm.Save(); |
3759 | ············pm.UnloadCache(); |
3760 | ············decimal count; |
3761 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3762 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3763 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3764 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3765 | ········} |
3766 | ········catch (Exception) |
3767 | ········{ |
3768 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3769 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3770 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3771 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
3772 | ········} |
3773 | ····} |
3774 | ····[Test] |
3775 | ····public void TestSaveReload() |
3776 | ····{ |
3777 | ········CreateObjects(); |
3778 | ········QueryOwn(); |
3779 | Assert. NotNull( ownVar, "No Query Result") ; |
3780 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3781 | ····} |
3782 | ····[Test] |
3783 | ····public void TestSaveReloadNull() |
3784 | ····{ |
3785 | ········CreateObjects(); |
3786 | ········QueryOwn(); |
3787 | Assert. NotNull( ownVar, "No Query Result") ; |
3788 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3789 | ········ownVar.RelField = new List<AgrBin1OwnpconTblAutoRight>(); |
3790 | ········pm.Save(); |
3791 | ········pm.UnloadCache(); |
3792 | ········QueryOwn(); |
3793 | Assert. NotNull( ownVar, "No Query Result") ; |
3794 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3795 | ····} |
3796 | ····[Test] |
3797 | ····public void TestSaveReloadRemove() |
3798 | ····{ |
3799 | ········CreateObjects(); |
3800 | ········QueryOwn(); |
3801 | Assert. NotNull( ownVar, "No Query Result") ; |
3802 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
3803 | ········ownVar.RemoveRelatedObject(); |
3804 | ········pm.Save(); |
3805 | ········pm.UnloadCache(); |
3806 | ········QueryOwn(); |
3807 | Assert. NotNull( ownVar, "No Query Result") ; |
3808 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
3809 | ····} |
3810 | ····[Test] |
3811 | ····public void TestChangeKeyHolderRight() |
3812 | ····{ |
3813 | ········CreateObjects(); |
3814 | ········QueryOther(); |
3815 | Assert. NotNull( otherVar, "No Query Result") ; |
3816 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3817 | ········int x = otherVar.RelField.Dummy; |
3818 | ········otherVar.Dummy = 4711; |
3819 | ········pm.Save(); |
3820 | ········pm.UnloadCache(); |
3821 | ········QueryOther(); |
3822 | Assert. NotNull( otherVar, "No Query Result") ; |
3823 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3824 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3825 | ····} |
3826 | ····[Test] |
3827 | ····public void TestChangeKeyHolderRightNoTouch() |
3828 | ····{ |
3829 | ········CreateObjects(); |
3830 | ········QueryOther(); |
3831 | Assert. NotNull( otherVar, "No Query Result") ; |
3832 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3833 | ········otherVar.Dummy = 4711; |
3834 | ········pm.Save(); |
3835 | ········pm.UnloadCache(); |
3836 | ········QueryOther(); |
3837 | Assert. NotNull( otherVar, "No Query Result") ; |
3838 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
3839 | Assert. NotNull( otherVar. RelField, "No related object") ; |
3840 | ····} |
3841 | ····[Test] |
3842 | ····public void TestRelationHash() |
3843 | ····{ |
3844 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconTblAutoLeftBase)); |
3845 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
3846 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconTblAutoRight)); |
3847 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
3848 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
3849 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
3850 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconTblAutoLeftDerived)); |
3851 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
3852 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
3853 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
3854 | ····} |
3855 | ····void CreateObjects() |
3856 | ····{ |
3857 | ········pm.MakePersistent(ownVar); |
3858 | ········pm.MakePersistent(otherVar); |
3859 | ········pm.Save(); |
3860 | ········ownVar.AssignRelation(otherVar); |
3861 | ········pm.Save(); |
3862 | ········pm.UnloadCache(); |
3863 | ····} |
3864 | ····void QueryOwn() |
3865 | ····{ |
3866 | ········var q = new NDOQuery<AgrBin1OwnpconTblAutoLeftBase>(pm); |
3867 | ········ownVar = q.ExecuteSingle(); |
3868 | ····} |
3869 | ····void QueryOther() |
3870 | ····{ |
3871 | ········var q = new NDOQuery<AgrBin1OwnpconTblAutoRight>(pm); |
3872 | ········otherVar = q.ExecuteSingle(); |
3873 | ····} |
3874 | } |
3875 | |
3876 | |
3877 | [TestFixture] |
3878 | public class TestAgrBi1nOwnpconTblAuto |
3879 | { |
3880 | ····AgrBi1nOwnpconTblAutoLeftBase ownVar; |
3881 | ····AgrBi1nOwnpconTblAutoRight otherVar; |
3882 | ····PersistenceManager pm; |
3883 | ····[SetUp] |
3884 | ····public void Setup() |
3885 | ····{ |
3886 | ········pm = PmFactory.NewPersistenceManager(); |
3887 | ········ownVar = new AgrBi1nOwnpconTblAutoLeftDerived(); |
3888 | ········otherVar = new AgrBi1nOwnpconTblAutoRight(); |
3889 | ····} |
3890 | ····[TearDown] |
3891 | ····public void TearDown() |
3892 | ····{ |
3893 | ········try |
3894 | ········{ |
3895 | ············pm.UnloadCache(); |
3896 | ············var l = pm.Objects<AgrBi1nOwnpconTblAutoLeftBase>().ResultTable; |
3897 | ············pm.Delete(l); |
3898 | ············pm.Save(); |
3899 | ············pm.UnloadCache(); |
3900 | ············var m = pm.Objects<AgrBi1nOwnpconTblAutoRight>().ResultTable; |
3901 | ············pm.Delete(m); |
3902 | ············pm.Save(); |
3903 | ············pm.UnloadCache(); |
3904 | ············decimal count; |
3905 | ············count = (decimal) new NDOQuery<AgrBi1nOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3906 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
3907 | ············count = (decimal) new NDOQuery<AgrBi1nOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
3908 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
3909 | ········} |
3910 | ········catch (Exception) |
3911 | ········{ |
3912 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
3913 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
3914 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
3915 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
3916 | ········} |
3917 | ····} |
3918 | ····[Test] |
3919 | ····public void TestSaveReload() |
3920 | ····{ |
3921 | ········CreateObjects(); |
3922 | ········QueryOwn(); |
3923 | Assert. NotNull( ownVar, "No Query Result") ; |
3924 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3925 | ····} |
3926 | ····[Test] |
3927 | ····public void TestSaveReloadNull() |
3928 | ····{ |
3929 | ········CreateObjects(); |
3930 | ········QueryOwn(); |
3931 | Assert. NotNull( ownVar, "No Query Result") ; |
3932 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3933 | ········ownVar.RelField = null; |
3934 | ········pm.Save(); |
3935 | ········pm.UnloadCache(); |
3936 | ········QueryOwn(); |
3937 | Assert. NotNull( ownVar, "No Query Result") ; |
3938 | Assert. Null( ownVar. RelField, "There should be no object") ; |
3939 | ····} |
3940 | ····[Test] |
3941 | ····public void TestChangeKeyHolderLeft() |
3942 | ····{ |
3943 | ········CreateObjects(); |
3944 | ········QueryOwn(); |
3945 | Assert. NotNull( ownVar, "No Query Result") ; |
3946 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3947 | ········int x = ownVar.RelField.Dummy; |
3948 | ········ownVar.Dummy = 4711; |
3949 | ········pm.Save(); |
3950 | ········pm.UnloadCache(); |
3951 | ········QueryOwn(); |
3952 | Assert. NotNull( ownVar, "No Query Result") ; |
3953 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3954 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3955 | ····} |
3956 | ····[Test] |
3957 | ····public void TestChangeKeyHolderLeftNoTouch() |
3958 | ····{ |
3959 | ········CreateObjects(); |
3960 | ········QueryOwn(); |
3961 | Assert. NotNull( ownVar, "No Query Result") ; |
3962 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3963 | ········ownVar.Dummy = 4711; |
3964 | ········pm.Save(); |
3965 | ········pm.UnloadCache(); |
3966 | ········QueryOwn(); |
3967 | Assert. NotNull( ownVar, "No Query Result") ; |
3968 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
3969 | Assert. NotNull( ownVar. RelField, "No related object") ; |
3970 | ····} |
3971 | ····[Test] |
3972 | ····public void TestRelationHash() |
3973 | ····{ |
3974 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconTblAutoLeftBase)); |
3975 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
3976 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconTblAutoRight)); |
3977 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
3978 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
3979 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
3980 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconTblAutoLeftDerived)); |
3981 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
3982 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
3983 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
3984 | ····} |
3985 | ····void CreateObjects() |
3986 | ····{ |
3987 | ········pm.MakePersistent(ownVar); |
3988 | ········pm.MakePersistent(otherVar); |
3989 | ········ownVar.AssignRelation(otherVar); |
3990 | ········pm.Save(); |
3991 | ········pm.UnloadCache(); |
3992 | ····} |
3993 | ····void QueryOwn() |
3994 | ····{ |
3995 | ········var q = new NDOQuery<AgrBi1nOwnpconTblAutoLeftBase>(pm); |
3996 | ········ownVar = q.ExecuteSingle(); |
3997 | ····} |
3998 | ····void QueryOther() |
3999 | ····{ |
4000 | ········var q = new NDOQuery<AgrBi1nOwnpconTblAutoRight>(pm); |
4001 | ········otherVar = q.ExecuteSingle(); |
4002 | ····} |
4003 | } |
4004 | |
4005 | |
4006 | [TestFixture] |
4007 | public class TestAgrBinnOwnpconTblAuto |
4008 | { |
4009 | ····AgrBinnOwnpconTblAutoLeftBase ownVar; |
4010 | ····AgrBinnOwnpconTblAutoRight otherVar; |
4011 | ····PersistenceManager pm; |
4012 | ····[SetUp] |
4013 | ····public void Setup() |
4014 | ····{ |
4015 | ········pm = PmFactory.NewPersistenceManager(); |
4016 | ········ownVar = new AgrBinnOwnpconTblAutoLeftDerived(); |
4017 | ········otherVar = new AgrBinnOwnpconTblAutoRight(); |
4018 | ····} |
4019 | ····[TearDown] |
4020 | ····public void TearDown() |
4021 | ····{ |
4022 | ········try |
4023 | ········{ |
4024 | ············pm.UnloadCache(); |
4025 | ············var l = pm.Objects<AgrBinnOwnpconTblAutoLeftBase>().ResultTable; |
4026 | ············pm.Delete(l); |
4027 | ············pm.Save(); |
4028 | ············pm.UnloadCache(); |
4029 | ············var m = pm.Objects<AgrBinnOwnpconTblAutoRight>().ResultTable; |
4030 | ············pm.Delete(m); |
4031 | ············pm.Save(); |
4032 | ············pm.UnloadCache(); |
4033 | ············decimal count; |
4034 | ············count = (decimal) new NDOQuery<AgrBinnOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4035 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4036 | ············count = (decimal) new NDOQuery<AgrBinnOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4037 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4038 | ········} |
4039 | ········catch (Exception) |
4040 | ········{ |
4041 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4042 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4043 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4044 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
4045 | ········} |
4046 | ····} |
4047 | ····[Test] |
4048 | ····public void TestSaveReload() |
4049 | ····{ |
4050 | ········CreateObjects(); |
4051 | ········QueryOwn(); |
4052 | Assert. NotNull( ownVar, "No Query Result") ; |
4053 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4054 | ····} |
4055 | ····[Test] |
4056 | ····public void TestSaveReloadNull() |
4057 | ····{ |
4058 | ········CreateObjects(); |
4059 | ········QueryOwn(); |
4060 | Assert. NotNull( ownVar, "No Query Result") ; |
4061 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4062 | ········ownVar.RelField = new List<AgrBinnOwnpconTblAutoRight>(); |
4063 | ········pm.Save(); |
4064 | ········pm.UnloadCache(); |
4065 | ········QueryOwn(); |
4066 | Assert. NotNull( ownVar, "No Query Result") ; |
4067 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4068 | ····} |
4069 | ····[Test] |
4070 | ····public void TestSaveReloadRemove() |
4071 | ····{ |
4072 | ········CreateObjects(); |
4073 | ········QueryOwn(); |
4074 | Assert. NotNull( ownVar, "No Query Result") ; |
4075 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4076 | ········ownVar.RemoveRelatedObject(); |
4077 | ········pm.Save(); |
4078 | ········pm.UnloadCache(); |
4079 | ········QueryOwn(); |
4080 | Assert. NotNull( ownVar, "No Query Result") ; |
4081 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4082 | ····} |
4083 | ····[Test] |
4084 | ····public void TestRelationHash() |
4085 | ····{ |
4086 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconTblAutoLeftBase)); |
4087 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
4088 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconTblAutoRight)); |
4089 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
4090 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
4091 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
4092 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconTblAutoLeftDerived)); |
4093 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
4094 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
4095 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
4096 | ····} |
4097 | ····void CreateObjects() |
4098 | ····{ |
4099 | ········pm.MakePersistent(ownVar); |
4100 | ········pm.MakePersistent(otherVar); |
4101 | ········ownVar.AssignRelation(otherVar); |
4102 | ········pm.Save(); |
4103 | ········pm.UnloadCache(); |
4104 | ····} |
4105 | ····void QueryOwn() |
4106 | ····{ |
4107 | ········var q = new NDOQuery<AgrBinnOwnpconTblAutoLeftBase>(pm); |
4108 | ········ownVar = q.ExecuteSingle(); |
4109 | ····} |
4110 | ····void QueryOther() |
4111 | ····{ |
4112 | ········var q = new NDOQuery<AgrBinnOwnpconTblAutoRight>(pm); |
4113 | ········otherVar = q.ExecuteSingle(); |
4114 | ····} |
4115 | } |
4116 | |
4117 | |
4118 | [TestFixture] |
4119 | public class TestCmpDir1OwnpconNoTblAuto |
4120 | { |
4121 | ····CmpDir1OwnpconNoTblAutoLeftBase ownVar; |
4122 | ····CmpDir1OwnpconNoTblAutoRight otherVar; |
4123 | ····PersistenceManager pm; |
4124 | ····[SetUp] |
4125 | ····public void Setup() |
4126 | ····{ |
4127 | ········pm = PmFactory.NewPersistenceManager(); |
4128 | ········ownVar = new CmpDir1OwnpconNoTblAutoLeftDerived(); |
4129 | ········otherVar = new CmpDir1OwnpconNoTblAutoRight(); |
4130 | ····} |
4131 | ····[TearDown] |
4132 | ····public void TearDown() |
4133 | ····{ |
4134 | ········try |
4135 | ········{ |
4136 | ············pm.UnloadCache(); |
4137 | ············var l = pm.Objects<CmpDir1OwnpconNoTblAutoLeftBase>().ResultTable; |
4138 | ············pm.Delete(l); |
4139 | ············pm.Save(); |
4140 | ············pm.UnloadCache(); |
4141 | ············decimal count; |
4142 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4143 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4144 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4145 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4146 | ········} |
4147 | ········catch (Exception) |
4148 | ········{ |
4149 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4150 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4151 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4152 | ········} |
4153 | ····} |
4154 | ····[Test] |
4155 | ····public void TestSaveReload() |
4156 | ····{ |
4157 | ········CreateObjects(); |
4158 | ········QueryOwn(); |
4159 | Assert. NotNull( ownVar, "No Query Result") ; |
4160 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4161 | ····} |
4162 | ····[Test] |
4163 | ····public void TestSaveReloadNull() |
4164 | ····{ |
4165 | ········CreateObjects(); |
4166 | ········QueryOwn(); |
4167 | Assert. NotNull( ownVar, "No Query Result") ; |
4168 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4169 | ········ownVar.RelField = null; |
4170 | ········pm.Save(); |
4171 | ········pm.UnloadCache(); |
4172 | ········QueryOwn(); |
4173 | Assert. NotNull( ownVar, "No Query Result") ; |
4174 | Assert. Null( ownVar. RelField, "There should be no object") ; |
4175 | ····} |
4176 | ····[Test] |
4177 | ····public void TestChangeKeyHolderLeft() |
4178 | ····{ |
4179 | ········CreateObjects(); |
4180 | ········QueryOwn(); |
4181 | Assert. NotNull( ownVar, "No Query Result") ; |
4182 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4183 | ········int x = ownVar.RelField.Dummy; |
4184 | ········ownVar.Dummy = 4711; |
4185 | ········pm.Save(); |
4186 | ········pm.UnloadCache(); |
4187 | ········QueryOwn(); |
4188 | Assert. NotNull( ownVar, "No Query Result") ; |
4189 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4190 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4191 | ····} |
4192 | ····[Test] |
4193 | ····public void TestChangeKeyHolderLeftNoTouch() |
4194 | ····{ |
4195 | ········CreateObjects(); |
4196 | ········QueryOwn(); |
4197 | Assert. NotNull( ownVar, "No Query Result") ; |
4198 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4199 | ········ownVar.Dummy = 4711; |
4200 | ········pm.Save(); |
4201 | ········pm.UnloadCache(); |
4202 | ········QueryOwn(); |
4203 | Assert. NotNull( ownVar, "No Query Result") ; |
4204 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4205 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4206 | ····} |
4207 | ····[Test] |
4208 | ····public void TestUpdateOrder() |
4209 | ····{ |
4210 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
4211 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
4212 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1OwnpconNoTblAutoLeftBase)})) |
4213 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1OwnpconNoTblAutoRight)})), "Wrong order #1"); |
4214 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1OwnpconNoTblAutoLeftDerived)})) |
4215 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(CmpDir1OwnpconNoTblAutoRight)})), "Wrong order #2"); |
4216 | ········Debug.WriteLine("CmpDir1OwnpconNoTblAutoLeftBase"); |
4217 | ····} |
4218 | ····void CreateObjects() |
4219 | ····{ |
4220 | ········pm.MakePersistent(ownVar); |
4221 | ········pm.Save(); |
4222 | ········ownVar.AssignRelation(otherVar); |
4223 | ········pm.Save(); |
4224 | ········pm.UnloadCache(); |
4225 | ····} |
4226 | ····void QueryOwn() |
4227 | ····{ |
4228 | ········var q = new NDOQuery<CmpDir1OwnpconNoTblAutoLeftBase>(pm); |
4229 | ········ownVar = q.ExecuteSingle(); |
4230 | ····} |
4231 | ····void QueryOther() |
4232 | ····{ |
4233 | ········var q = new NDOQuery<CmpDir1OwnpconNoTblAutoRight>(pm); |
4234 | ········otherVar = q.ExecuteSingle(); |
4235 | ····} |
4236 | } |
4237 | |
4238 | |
4239 | [TestFixture] |
4240 | public class TestCmpDir1OwnpconTblAuto |
4241 | { |
4242 | ····CmpDir1OwnpconTblAutoLeftBase ownVar; |
4243 | ····CmpDir1OwnpconTblAutoRight otherVar; |
4244 | ····PersistenceManager pm; |
4245 | ····[SetUp] |
4246 | ····public void Setup() |
4247 | ····{ |
4248 | ········pm = PmFactory.NewPersistenceManager(); |
4249 | ········ownVar = new CmpDir1OwnpconTblAutoLeftDerived(); |
4250 | ········otherVar = new CmpDir1OwnpconTblAutoRight(); |
4251 | ····} |
4252 | ····[TearDown] |
4253 | ····public void TearDown() |
4254 | ····{ |
4255 | ········try |
4256 | ········{ |
4257 | ············pm.UnloadCache(); |
4258 | ············var l = pm.Objects<CmpDir1OwnpconTblAutoLeftBase>().ResultTable; |
4259 | ············pm.Delete(l); |
4260 | ············pm.Save(); |
4261 | ············pm.UnloadCache(); |
4262 | ············decimal count; |
4263 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4264 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4265 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4266 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4267 | ········} |
4268 | ········catch (Exception) |
4269 | ········{ |
4270 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4271 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4272 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4273 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
4274 | ········} |
4275 | ····} |
4276 | ····[Test] |
4277 | ····public void TestSaveReload() |
4278 | ····{ |
4279 | ········CreateObjects(); |
4280 | ········QueryOwn(); |
4281 | Assert. NotNull( ownVar, "No Query Result") ; |
4282 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4283 | ····} |
4284 | ····[Test] |
4285 | ····public void TestSaveReloadNull() |
4286 | ····{ |
4287 | ········CreateObjects(); |
4288 | ········QueryOwn(); |
4289 | Assert. NotNull( ownVar, "No Query Result") ; |
4290 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4291 | ········ownVar.RelField = null; |
4292 | ········pm.Save(); |
4293 | ········pm.UnloadCache(); |
4294 | ········QueryOwn(); |
4295 | Assert. NotNull( ownVar, "No Query Result") ; |
4296 | Assert. Null( ownVar. RelField, "There should be no object") ; |
4297 | ····} |
4298 | ····[Test] |
4299 | ····public void TestChangeKeyHolderLeft() |
4300 | ····{ |
4301 | ········CreateObjects(); |
4302 | ········QueryOwn(); |
4303 | Assert. NotNull( ownVar, "No Query Result") ; |
4304 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4305 | ········int x = ownVar.RelField.Dummy; |
4306 | ········ownVar.Dummy = 4711; |
4307 | ········pm.Save(); |
4308 | ········pm.UnloadCache(); |
4309 | ········QueryOwn(); |
4310 | Assert. NotNull( ownVar, "No Query Result") ; |
4311 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4312 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4313 | ····} |
4314 | ····[Test] |
4315 | ····public void TestChangeKeyHolderLeftNoTouch() |
4316 | ····{ |
4317 | ········CreateObjects(); |
4318 | ········QueryOwn(); |
4319 | Assert. NotNull( ownVar, "No Query Result") ; |
4320 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4321 | ········ownVar.Dummy = 4711; |
4322 | ········pm.Save(); |
4323 | ········pm.UnloadCache(); |
4324 | ········QueryOwn(); |
4325 | Assert. NotNull( ownVar, "No Query Result") ; |
4326 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4327 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4328 | ····} |
4329 | ····void CreateObjects() |
4330 | ····{ |
4331 | ········pm.MakePersistent(ownVar); |
4332 | ········ownVar.AssignRelation(otherVar); |
4333 | ········pm.Save(); |
4334 | ········pm.UnloadCache(); |
4335 | ····} |
4336 | ····void QueryOwn() |
4337 | ····{ |
4338 | ········var q = new NDOQuery<CmpDir1OwnpconTblAutoLeftBase>(pm); |
4339 | ········ownVar = q.ExecuteSingle(); |
4340 | ····} |
4341 | ····void QueryOther() |
4342 | ····{ |
4343 | ········var q = new NDOQuery<CmpDir1OwnpconTblAutoRight>(pm); |
4344 | ········otherVar = q.ExecuteSingle(); |
4345 | ····} |
4346 | } |
4347 | |
4348 | |
4349 | [TestFixture] |
4350 | public class TestCmpBi11OwnpconNoTblAuto |
4351 | { |
4352 | ····CmpBi11OwnpconNoTblAutoLeftBase ownVar; |
4353 | ····CmpBi11OwnpconNoTblAutoRight otherVar; |
4354 | ····PersistenceManager pm; |
4355 | ····[SetUp] |
4356 | ····public void Setup() |
4357 | ····{ |
4358 | ········pm = PmFactory.NewPersistenceManager(); |
4359 | ········ownVar = new CmpBi11OwnpconNoTblAutoLeftDerived(); |
4360 | ········otherVar = new CmpBi11OwnpconNoTblAutoRight(); |
4361 | ····} |
4362 | ····[TearDown] |
4363 | ····public void TearDown() |
4364 | ····{ |
4365 | ········try |
4366 | ········{ |
4367 | ············pm.UnloadCache(); |
4368 | ············var l = pm.Objects<CmpBi11OwnpconNoTblAutoLeftBase>().ResultTable; |
4369 | ············pm.Delete(l); |
4370 | ············pm.Save(); |
4371 | ············pm.UnloadCache(); |
4372 | ············decimal count; |
4373 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4374 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4375 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4376 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4377 | ········} |
4378 | ········catch (Exception) |
4379 | ········{ |
4380 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4381 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4382 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4383 | ········} |
4384 | ····} |
4385 | ····[Test] |
4386 | ····public void TestSaveReload() |
4387 | ····{ |
4388 | ········CreateObjects(); |
4389 | ········QueryOwn(); |
4390 | Assert. NotNull( ownVar, "No Query Result") ; |
4391 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4392 | ····} |
4393 | ····[Test] |
4394 | ····public void TestSaveReloadNull() |
4395 | ····{ |
4396 | ········CreateObjects(); |
4397 | ········QueryOwn(); |
4398 | Assert. NotNull( ownVar, "No Query Result") ; |
4399 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4400 | ········ownVar.RelField = null; |
4401 | ········pm.Save(); |
4402 | ········pm.UnloadCache(); |
4403 | ········QueryOwn(); |
4404 | Assert. NotNull( ownVar, "No Query Result") ; |
4405 | Assert. Null( ownVar. RelField, "There should be no object") ; |
4406 | ····} |
4407 | ····[Test] |
4408 | ····public void TestChangeKeyHolderLeft() |
4409 | ····{ |
4410 | ········CreateObjects(); |
4411 | ········QueryOwn(); |
4412 | Assert. NotNull( ownVar, "No Query Result") ; |
4413 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4414 | ········int x = ownVar.RelField.Dummy; |
4415 | ········ownVar.Dummy = 4711; |
4416 | ········pm.Save(); |
4417 | ········pm.UnloadCache(); |
4418 | ········QueryOwn(); |
4419 | Assert. NotNull( ownVar, "No Query Result") ; |
4420 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4421 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4422 | ····} |
4423 | ····[Test] |
4424 | ····public void TestChangeKeyHolderRight() |
4425 | ····{ |
4426 | ········CreateObjects(); |
4427 | ········QueryOther(); |
4428 | Assert. NotNull( otherVar, "No Query Result") ; |
4429 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4430 | ········int x = otherVar.RelField.Dummy; |
4431 | ········otherVar.Dummy = 4711; |
4432 | ········pm.Save(); |
4433 | ········pm.UnloadCache(); |
4434 | ········QueryOther(); |
4435 | Assert. NotNull( otherVar, "No Query Result") ; |
4436 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4437 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4438 | ····} |
4439 | ····[Test] |
4440 | ····public void TestChangeKeyHolderLeftNoTouch() |
4441 | ····{ |
4442 | ········CreateObjects(); |
4443 | ········QueryOwn(); |
4444 | Assert. NotNull( ownVar, "No Query Result") ; |
4445 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4446 | ········ownVar.Dummy = 4711; |
4447 | ········pm.Save(); |
4448 | ········pm.UnloadCache(); |
4449 | ········QueryOwn(); |
4450 | Assert. NotNull( ownVar, "No Query Result") ; |
4451 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4452 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4453 | ····} |
4454 | ····[Test] |
4455 | ····public void TestChangeKeyHolderRightNoTouch() |
4456 | ····{ |
4457 | ········CreateObjects(); |
4458 | ········QueryOther(); |
4459 | Assert. NotNull( otherVar, "No Query Result") ; |
4460 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4461 | ········otherVar.Dummy = 4711; |
4462 | ········pm.Save(); |
4463 | ········pm.UnloadCache(); |
4464 | ········QueryOther(); |
4465 | Assert. NotNull( otherVar, "No Query Result") ; |
4466 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4467 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4468 | ····} |
4469 | ····[Test] |
4470 | ····public void TestRelationHash() |
4471 | ····{ |
4472 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconNoTblAutoLeftBase)); |
4473 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
4474 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconNoTblAutoRight)); |
4475 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
4476 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
4477 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
4478 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconNoTblAutoLeftDerived)); |
4479 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
4480 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
4481 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
4482 | ····} |
4483 | ····void CreateObjects() |
4484 | ····{ |
4485 | ········pm.MakePersistent(ownVar); |
4486 | ········pm.Save(); |
4487 | ········ownVar.AssignRelation(otherVar); |
4488 | ········pm.Save(); |
4489 | ········pm.UnloadCache(); |
4490 | ····} |
4491 | ····void QueryOwn() |
4492 | ····{ |
4493 | ········var q = new NDOQuery<CmpBi11OwnpconNoTblAutoLeftBase>(pm); |
4494 | ········ownVar = q.ExecuteSingle(); |
4495 | ····} |
4496 | ····void QueryOther() |
4497 | ····{ |
4498 | ········var q = new NDOQuery<CmpBi11OwnpconNoTblAutoRight>(pm); |
4499 | ········otherVar = q.ExecuteSingle(); |
4500 | ····} |
4501 | } |
4502 | |
4503 | |
4504 | [TestFixture] |
4505 | public class TestCmpBi11OwnpconTblAuto |
4506 | { |
4507 | ····CmpBi11OwnpconTblAutoLeftBase ownVar; |
4508 | ····CmpBi11OwnpconTblAutoRight otherVar; |
4509 | ····PersistenceManager pm; |
4510 | ····[SetUp] |
4511 | ····public void Setup() |
4512 | ····{ |
4513 | ········pm = PmFactory.NewPersistenceManager(); |
4514 | ········ownVar = new CmpBi11OwnpconTblAutoLeftDerived(); |
4515 | ········otherVar = new CmpBi11OwnpconTblAutoRight(); |
4516 | ····} |
4517 | ····[TearDown] |
4518 | ····public void TearDown() |
4519 | ····{ |
4520 | ········try |
4521 | ········{ |
4522 | ············pm.UnloadCache(); |
4523 | ············var l = pm.Objects<CmpBi11OwnpconTblAutoLeftBase>().ResultTable; |
4524 | ············pm.Delete(l); |
4525 | ············pm.Save(); |
4526 | ············pm.UnloadCache(); |
4527 | ············decimal count; |
4528 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4529 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4530 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4531 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4532 | ········} |
4533 | ········catch (Exception) |
4534 | ········{ |
4535 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4536 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4537 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4538 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
4539 | ········} |
4540 | ····} |
4541 | ····[Test] |
4542 | ····public void TestSaveReload() |
4543 | ····{ |
4544 | ········CreateObjects(); |
4545 | ········QueryOwn(); |
4546 | Assert. NotNull( ownVar, "No Query Result") ; |
4547 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4548 | ····} |
4549 | ····[Test] |
4550 | ····public void TestSaveReloadNull() |
4551 | ····{ |
4552 | ········CreateObjects(); |
4553 | ········QueryOwn(); |
4554 | Assert. NotNull( ownVar, "No Query Result") ; |
4555 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4556 | ········ownVar.RelField = null; |
4557 | ········pm.Save(); |
4558 | ········pm.UnloadCache(); |
4559 | ········QueryOwn(); |
4560 | Assert. NotNull( ownVar, "No Query Result") ; |
4561 | Assert. Null( ownVar. RelField, "There should be no object") ; |
4562 | ····} |
4563 | ····[Test] |
4564 | ····public void TestChangeKeyHolderLeft() |
4565 | ····{ |
4566 | ········CreateObjects(); |
4567 | ········QueryOwn(); |
4568 | Assert. NotNull( ownVar, "No Query Result") ; |
4569 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4570 | ········int x = ownVar.RelField.Dummy; |
4571 | ········ownVar.Dummy = 4711; |
4572 | ········pm.Save(); |
4573 | ········pm.UnloadCache(); |
4574 | ········QueryOwn(); |
4575 | Assert. NotNull( ownVar, "No Query Result") ; |
4576 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4577 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4578 | ····} |
4579 | ····[Test] |
4580 | ····public void TestChangeKeyHolderRight() |
4581 | ····{ |
4582 | ········CreateObjects(); |
4583 | ········QueryOther(); |
4584 | Assert. NotNull( otherVar, "No Query Result") ; |
4585 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4586 | ········int x = otherVar.RelField.Dummy; |
4587 | ········otherVar.Dummy = 4711; |
4588 | ········pm.Save(); |
4589 | ········pm.UnloadCache(); |
4590 | ········QueryOther(); |
4591 | Assert. NotNull( otherVar, "No Query Result") ; |
4592 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4593 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4594 | ····} |
4595 | ····[Test] |
4596 | ····public void TestChangeKeyHolderLeftNoTouch() |
4597 | ····{ |
4598 | ········CreateObjects(); |
4599 | ········QueryOwn(); |
4600 | Assert. NotNull( ownVar, "No Query Result") ; |
4601 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4602 | ········ownVar.Dummy = 4711; |
4603 | ········pm.Save(); |
4604 | ········pm.UnloadCache(); |
4605 | ········QueryOwn(); |
4606 | Assert. NotNull( ownVar, "No Query Result") ; |
4607 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
4608 | Assert. NotNull( ownVar. RelField, "No related object") ; |
4609 | ····} |
4610 | ····[Test] |
4611 | ····public void TestChangeKeyHolderRightNoTouch() |
4612 | ····{ |
4613 | ········CreateObjects(); |
4614 | ········QueryOther(); |
4615 | Assert. NotNull( otherVar, "No Query Result") ; |
4616 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4617 | ········otherVar.Dummy = 4711; |
4618 | ········pm.Save(); |
4619 | ········pm.UnloadCache(); |
4620 | ········QueryOther(); |
4621 | Assert. NotNull( otherVar, "No Query Result") ; |
4622 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4623 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4624 | ····} |
4625 | ····[Test] |
4626 | ····public void TestRelationHash() |
4627 | ····{ |
4628 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconTblAutoLeftBase)); |
4629 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
4630 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconTblAutoRight)); |
4631 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
4632 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
4633 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
4634 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconTblAutoLeftDerived)); |
4635 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
4636 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
4637 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
4638 | ····} |
4639 | ····void CreateObjects() |
4640 | ····{ |
4641 | ········pm.MakePersistent(ownVar); |
4642 | ········ownVar.AssignRelation(otherVar); |
4643 | ········pm.Save(); |
4644 | ········pm.UnloadCache(); |
4645 | ····} |
4646 | ····void QueryOwn() |
4647 | ····{ |
4648 | ········var q = new NDOQuery<CmpBi11OwnpconTblAutoLeftBase>(pm); |
4649 | ········ownVar = q.ExecuteSingle(); |
4650 | ····} |
4651 | ····void QueryOther() |
4652 | ····{ |
4653 | ········var q = new NDOQuery<CmpBi11OwnpconTblAutoRight>(pm); |
4654 | ········otherVar = q.ExecuteSingle(); |
4655 | ····} |
4656 | } |
4657 | |
4658 | |
4659 | [TestFixture] |
4660 | public class TestCmpDirnOwnpconNoTblAuto |
4661 | { |
4662 | ····CmpDirnOwnpconNoTblAutoLeftBase ownVar; |
4663 | ····CmpDirnOwnpconNoTblAutoRight otherVar; |
4664 | ····PersistenceManager pm; |
4665 | ····[SetUp] |
4666 | ····public void Setup() |
4667 | ····{ |
4668 | ········pm = PmFactory.NewPersistenceManager(); |
4669 | ········ownVar = new CmpDirnOwnpconNoTblAutoLeftDerived(); |
4670 | ········otherVar = new CmpDirnOwnpconNoTblAutoRight(); |
4671 | ····} |
4672 | ····[TearDown] |
4673 | ····public void TearDown() |
4674 | ····{ |
4675 | ········try |
4676 | ········{ |
4677 | ············pm.UnloadCache(); |
4678 | ············var l = pm.Objects<CmpDirnOwnpconNoTblAutoLeftBase>().ResultTable; |
4679 | ············pm.Delete(l); |
4680 | ············pm.Save(); |
4681 | ············pm.UnloadCache(); |
4682 | ············decimal count; |
4683 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4684 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4685 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4686 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4687 | ········} |
4688 | ········catch (Exception) |
4689 | ········{ |
4690 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4691 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4692 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4693 | ········} |
4694 | ····} |
4695 | ····[Test] |
4696 | ····public void TestSaveReload() |
4697 | ····{ |
4698 | ········CreateObjects(); |
4699 | ········QueryOwn(); |
4700 | Assert. NotNull( ownVar, "No Query Result") ; |
4701 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4702 | ····} |
4703 | ····[Test] |
4704 | ····public void TestSaveReloadNull() |
4705 | ····{ |
4706 | ········CreateObjects(); |
4707 | ········QueryOwn(); |
4708 | Assert. NotNull( ownVar, "No Query Result") ; |
4709 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4710 | ········ownVar.RelField = new List<CmpDirnOwnpconNoTblAutoRight>(); |
4711 | ········pm.Save(); |
4712 | ········pm.UnloadCache(); |
4713 | ········QueryOwn(); |
4714 | Assert. NotNull( ownVar, "No Query Result") ; |
4715 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4716 | ····} |
4717 | ····[Test] |
4718 | ····public void TestSaveReloadRemove() |
4719 | ····{ |
4720 | ········CreateObjects(); |
4721 | ········QueryOwn(); |
4722 | Assert. NotNull( ownVar, "No Query Result") ; |
4723 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4724 | ········ownVar.RemoveRelatedObject(); |
4725 | ········pm.Save(); |
4726 | ········pm.UnloadCache(); |
4727 | ········QueryOwn(); |
4728 | Assert. NotNull( ownVar, "No Query Result") ; |
4729 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4730 | ····} |
4731 | ····[Test] |
4732 | ····public void TestUpdateOrder() |
4733 | ····{ |
4734 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
4735 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
4736 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnOwnpconNoTblAutoLeftBase)})) |
4737 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnOwnpconNoTblAutoRight)})), "Wrong order #1"); |
4738 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnOwnpconNoTblAutoLeftDerived)})) |
4739 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpDirnOwnpconNoTblAutoRight)})), "Wrong order #2"); |
4740 | ········Debug.WriteLine("CmpDirnOwnpconNoTblAutoLeftBase"); |
4741 | ····} |
4742 | ····void CreateObjects() |
4743 | ····{ |
4744 | ········pm.MakePersistent(ownVar); |
4745 | ········ownVar.AssignRelation(otherVar); |
4746 | ········pm.Save(); |
4747 | ········pm.UnloadCache(); |
4748 | ····} |
4749 | ····void QueryOwn() |
4750 | ····{ |
4751 | ········var q = new NDOQuery<CmpDirnOwnpconNoTblAutoLeftBase>(pm); |
4752 | ········ownVar = q.ExecuteSingle(); |
4753 | ····} |
4754 | ····void QueryOther() |
4755 | ····{ |
4756 | ········var q = new NDOQuery<CmpDirnOwnpconNoTblAutoRight>(pm); |
4757 | ········otherVar = q.ExecuteSingle(); |
4758 | ····} |
4759 | } |
4760 | |
4761 | |
4762 | [TestFixture] |
4763 | public class TestCmpDirnOwnpconTblAuto |
4764 | { |
4765 | ····CmpDirnOwnpconTblAutoLeftBase ownVar; |
4766 | ····CmpDirnOwnpconTblAutoRight otherVar; |
4767 | ····PersistenceManager pm; |
4768 | ····[SetUp] |
4769 | ····public void Setup() |
4770 | ····{ |
4771 | ········pm = PmFactory.NewPersistenceManager(); |
4772 | ········ownVar = new CmpDirnOwnpconTblAutoLeftDerived(); |
4773 | ········otherVar = new CmpDirnOwnpconTblAutoRight(); |
4774 | ····} |
4775 | ····[TearDown] |
4776 | ····public void TearDown() |
4777 | ····{ |
4778 | ········try |
4779 | ········{ |
4780 | ············pm.UnloadCache(); |
4781 | ············var l = pm.Objects<CmpDirnOwnpconTblAutoLeftBase>().ResultTable; |
4782 | ············pm.Delete(l); |
4783 | ············pm.Save(); |
4784 | ············pm.UnloadCache(); |
4785 | ············decimal count; |
4786 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4787 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4788 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4789 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4790 | ········} |
4791 | ········catch (Exception) |
4792 | ········{ |
4793 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4794 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4795 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4796 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
4797 | ········} |
4798 | ····} |
4799 | ····[Test] |
4800 | ····public void TestSaveReload() |
4801 | ····{ |
4802 | ········CreateObjects(); |
4803 | ········QueryOwn(); |
4804 | Assert. NotNull( ownVar, "No Query Result") ; |
4805 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4806 | ····} |
4807 | ····[Test] |
4808 | ····public void TestSaveReloadNull() |
4809 | ····{ |
4810 | ········CreateObjects(); |
4811 | ········QueryOwn(); |
4812 | Assert. NotNull( ownVar, "No Query Result") ; |
4813 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4814 | ········ownVar.RelField = new List<CmpDirnOwnpconTblAutoRight>(); |
4815 | ········pm.Save(); |
4816 | ········pm.UnloadCache(); |
4817 | ········QueryOwn(); |
4818 | Assert. NotNull( ownVar, "No Query Result") ; |
4819 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4820 | ····} |
4821 | ····[Test] |
4822 | ····public void TestSaveReloadRemove() |
4823 | ····{ |
4824 | ········CreateObjects(); |
4825 | ········QueryOwn(); |
4826 | Assert. NotNull( ownVar, "No Query Result") ; |
4827 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4828 | ········ownVar.RemoveRelatedObject(); |
4829 | ········pm.Save(); |
4830 | ········pm.UnloadCache(); |
4831 | ········QueryOwn(); |
4832 | Assert. NotNull( ownVar, "No Query Result") ; |
4833 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4834 | ····} |
4835 | ····void CreateObjects() |
4836 | ····{ |
4837 | ········pm.MakePersistent(ownVar); |
4838 | ········ownVar.AssignRelation(otherVar); |
4839 | ········pm.Save(); |
4840 | ········pm.UnloadCache(); |
4841 | ····} |
4842 | ····void QueryOwn() |
4843 | ····{ |
4844 | ········var q = new NDOQuery<CmpDirnOwnpconTblAutoLeftBase>(pm); |
4845 | ········ownVar = q.ExecuteSingle(); |
4846 | ····} |
4847 | ····void QueryOther() |
4848 | ····{ |
4849 | ········var q = new NDOQuery<CmpDirnOwnpconTblAutoRight>(pm); |
4850 | ········otherVar = q.ExecuteSingle(); |
4851 | ····} |
4852 | } |
4853 | |
4854 | |
4855 | [TestFixture] |
4856 | public class TestCmpBin1OwnpconNoTblAuto |
4857 | { |
4858 | ····CmpBin1OwnpconNoTblAutoLeftBase ownVar; |
4859 | ····CmpBin1OwnpconNoTblAutoRight otherVar; |
4860 | ····PersistenceManager pm; |
4861 | ····[SetUp] |
4862 | ····public void Setup() |
4863 | ····{ |
4864 | ········pm = PmFactory.NewPersistenceManager(); |
4865 | ········ownVar = new CmpBin1OwnpconNoTblAutoLeftDerived(); |
4866 | ········otherVar = new CmpBin1OwnpconNoTblAutoRight(); |
4867 | ····} |
4868 | ····[TearDown] |
4869 | ····public void TearDown() |
4870 | ····{ |
4871 | ········try |
4872 | ········{ |
4873 | ············pm.UnloadCache(); |
4874 | ············var l = pm.Objects<CmpBin1OwnpconNoTblAutoLeftBase>().ResultTable; |
4875 | ············pm.Delete(l); |
4876 | ············pm.Save(); |
4877 | ············pm.UnloadCache(); |
4878 | ············decimal count; |
4879 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4880 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
4881 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconNoTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
4882 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
4883 | ········} |
4884 | ········catch (Exception) |
4885 | ········{ |
4886 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
4887 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
4888 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
4889 | ········} |
4890 | ····} |
4891 | ····[Test] |
4892 | ····public void TestSaveReload() |
4893 | ····{ |
4894 | ········CreateObjects(); |
4895 | ········QueryOwn(); |
4896 | Assert. NotNull( ownVar, "No Query Result") ; |
4897 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4898 | ····} |
4899 | ····[Test] |
4900 | ····public void TestSaveReloadNull() |
4901 | ····{ |
4902 | ········CreateObjects(); |
4903 | ········QueryOwn(); |
4904 | Assert. NotNull( ownVar, "No Query Result") ; |
4905 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4906 | ········ownVar.RelField = new List<CmpBin1OwnpconNoTblAutoRight>(); |
4907 | ········pm.Save(); |
4908 | ········pm.UnloadCache(); |
4909 | ········QueryOwn(); |
4910 | Assert. NotNull( ownVar, "No Query Result") ; |
4911 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4912 | ····} |
4913 | ····[Test] |
4914 | ····public void TestSaveReloadRemove() |
4915 | ····{ |
4916 | ········CreateObjects(); |
4917 | ········QueryOwn(); |
4918 | Assert. NotNull( ownVar, "No Query Result") ; |
4919 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
4920 | ········ownVar.RemoveRelatedObject(); |
4921 | ········pm.Save(); |
4922 | ········pm.UnloadCache(); |
4923 | ········QueryOwn(); |
4924 | Assert. NotNull( ownVar, "No Query Result") ; |
4925 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
4926 | ····} |
4927 | ····[Test] |
4928 | ····public void TestChangeKeyHolderRight() |
4929 | ····{ |
4930 | ········CreateObjects(); |
4931 | ········QueryOther(); |
4932 | Assert. NotNull( otherVar, "No Query Result") ; |
4933 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4934 | ········int x = otherVar.RelField.Dummy; |
4935 | ········otherVar.Dummy = 4711; |
4936 | ········pm.Save(); |
4937 | ········pm.UnloadCache(); |
4938 | ········QueryOther(); |
4939 | Assert. NotNull( otherVar, "No Query Result") ; |
4940 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4941 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4942 | ····} |
4943 | ····[Test] |
4944 | ····public void TestChangeKeyHolderRightNoTouch() |
4945 | ····{ |
4946 | ········CreateObjects(); |
4947 | ········QueryOther(); |
4948 | Assert. NotNull( otherVar, "No Query Result") ; |
4949 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4950 | ········otherVar.Dummy = 4711; |
4951 | ········pm.Save(); |
4952 | ········pm.UnloadCache(); |
4953 | ········QueryOther(); |
4954 | Assert. NotNull( otherVar, "No Query Result") ; |
4955 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
4956 | Assert. NotNull( otherVar. RelField, "No related object") ; |
4957 | ····} |
4958 | ····[Test] |
4959 | ····public void TestUpdateOrder() |
4960 | ····{ |
4961 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
4962 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
4963 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1OwnpconNoTblAutoLeftBase)})) |
4964 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1OwnpconNoTblAutoRight)})), "Wrong order #1"); |
4965 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1OwnpconNoTblAutoLeftDerived)})) |
4966 | ················< ((int)mi.Invoke(mapping, new object[]{typeof(CmpBin1OwnpconNoTblAutoRight)})), "Wrong order #2"); |
4967 | ········Debug.WriteLine("CmpBin1OwnpconNoTblAutoLeftBase"); |
4968 | ····} |
4969 | ····[Test] |
4970 | ····public void TestRelationHash() |
4971 | ····{ |
4972 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconNoTblAutoLeftBase)); |
4973 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
4974 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconNoTblAutoRight)); |
4975 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
4976 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
4977 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
4978 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconNoTblAutoLeftDerived)); |
4979 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
4980 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
4981 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
4982 | ····} |
4983 | ····void CreateObjects() |
4984 | ····{ |
4985 | ········pm.MakePersistent(ownVar); |
4986 | ········ownVar.AssignRelation(otherVar); |
4987 | ········pm.Save(); |
4988 | ········pm.UnloadCache(); |
4989 | ····} |
4990 | ····void QueryOwn() |
4991 | ····{ |
4992 | ········var q = new NDOQuery<CmpBin1OwnpconNoTblAutoLeftBase>(pm); |
4993 | ········ownVar = q.ExecuteSingle(); |
4994 | ····} |
4995 | ····void QueryOther() |
4996 | ····{ |
4997 | ········var q = new NDOQuery<CmpBin1OwnpconNoTblAutoRight>(pm); |
4998 | ········otherVar = q.ExecuteSingle(); |
4999 | ····} |
5000 | } |
5001 | |
5002 | |
5003 | [TestFixture] |
5004 | public class TestCmpBin1OwnpconTblAuto |
5005 | { |
5006 | ····CmpBin1OwnpconTblAutoLeftBase ownVar; |
5007 | ····CmpBin1OwnpconTblAutoRight otherVar; |
5008 | ····PersistenceManager pm; |
5009 | ····[SetUp] |
5010 | ····public void Setup() |
5011 | ····{ |
5012 | ········pm = PmFactory.NewPersistenceManager(); |
5013 | ········ownVar = new CmpBin1OwnpconTblAutoLeftDerived(); |
5014 | ········otherVar = new CmpBin1OwnpconTblAutoRight(); |
5015 | ····} |
5016 | ····[TearDown] |
5017 | ····public void TearDown() |
5018 | ····{ |
5019 | ········try |
5020 | ········{ |
5021 | ············pm.UnloadCache(); |
5022 | ············var l = pm.Objects<CmpBin1OwnpconTblAutoLeftBase>().ResultTable; |
5023 | ············pm.Delete(l); |
5024 | ············pm.Save(); |
5025 | ············pm.UnloadCache(); |
5026 | ············decimal count; |
5027 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5028 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5029 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5030 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5031 | ········} |
5032 | ········catch (Exception) |
5033 | ········{ |
5034 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5035 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5036 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5037 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5038 | ········} |
5039 | ····} |
5040 | ····[Test] |
5041 | ····public void TestSaveReload() |
5042 | ····{ |
5043 | ········CreateObjects(); |
5044 | ········QueryOwn(); |
5045 | Assert. NotNull( ownVar, "No Query Result") ; |
5046 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5047 | ····} |
5048 | ····[Test] |
5049 | ····public void TestSaveReloadNull() |
5050 | ····{ |
5051 | ········CreateObjects(); |
5052 | ········QueryOwn(); |
5053 | Assert. NotNull( ownVar, "No Query Result") ; |
5054 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5055 | ········ownVar.RelField = new List<CmpBin1OwnpconTblAutoRight>(); |
5056 | ········pm.Save(); |
5057 | ········pm.UnloadCache(); |
5058 | ········QueryOwn(); |
5059 | Assert. NotNull( ownVar, "No Query Result") ; |
5060 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
5061 | ····} |
5062 | ····[Test] |
5063 | ····public void TestSaveReloadRemove() |
5064 | ····{ |
5065 | ········CreateObjects(); |
5066 | ········QueryOwn(); |
5067 | Assert. NotNull( ownVar, "No Query Result") ; |
5068 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5069 | ········ownVar.RemoveRelatedObject(); |
5070 | ········pm.Save(); |
5071 | ········pm.UnloadCache(); |
5072 | ········QueryOwn(); |
5073 | Assert. NotNull( ownVar, "No Query Result") ; |
5074 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
5075 | ····} |
5076 | ····[Test] |
5077 | ····public void TestChangeKeyHolderRight() |
5078 | ····{ |
5079 | ········CreateObjects(); |
5080 | ········QueryOther(); |
5081 | Assert. NotNull( otherVar, "No Query Result") ; |
5082 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5083 | ········int x = otherVar.RelField.Dummy; |
5084 | ········otherVar.Dummy = 4711; |
5085 | ········pm.Save(); |
5086 | ········pm.UnloadCache(); |
5087 | ········QueryOther(); |
5088 | Assert. NotNull( otherVar, "No Query Result") ; |
5089 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5090 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5091 | ····} |
5092 | ····[Test] |
5093 | ····public void TestChangeKeyHolderRightNoTouch() |
5094 | ····{ |
5095 | ········CreateObjects(); |
5096 | ········QueryOther(); |
5097 | Assert. NotNull( otherVar, "No Query Result") ; |
5098 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5099 | ········otherVar.Dummy = 4711; |
5100 | ········pm.Save(); |
5101 | ········pm.UnloadCache(); |
5102 | ········QueryOther(); |
5103 | Assert. NotNull( otherVar, "No Query Result") ; |
5104 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5105 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5106 | ····} |
5107 | ····[Test] |
5108 | ····public void TestRelationHash() |
5109 | ····{ |
5110 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconTblAutoLeftBase)); |
5111 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
5112 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconTblAutoRight)); |
5113 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
5114 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
5115 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
5116 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconTblAutoLeftDerived)); |
5117 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
5118 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
5119 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
5120 | ····} |
5121 | ····void CreateObjects() |
5122 | ····{ |
5123 | ········pm.MakePersistent(ownVar); |
5124 | ········ownVar.AssignRelation(otherVar); |
5125 | ········pm.Save(); |
5126 | ········pm.UnloadCache(); |
5127 | ····} |
5128 | ····void QueryOwn() |
5129 | ····{ |
5130 | ········var q = new NDOQuery<CmpBin1OwnpconTblAutoLeftBase>(pm); |
5131 | ········ownVar = q.ExecuteSingle(); |
5132 | ····} |
5133 | ····void QueryOther() |
5134 | ····{ |
5135 | ········var q = new NDOQuery<CmpBin1OwnpconTblAutoRight>(pm); |
5136 | ········otherVar = q.ExecuteSingle(); |
5137 | ····} |
5138 | } |
5139 | |
5140 | |
5141 | [TestFixture] |
5142 | public class TestCmpBi1nOwnpconTblAuto |
5143 | { |
5144 | ····CmpBi1nOwnpconTblAutoLeftBase ownVar; |
5145 | ····CmpBi1nOwnpconTblAutoRight otherVar; |
5146 | ····PersistenceManager pm; |
5147 | ····[SetUp] |
5148 | ····public void Setup() |
5149 | ····{ |
5150 | ········pm = PmFactory.NewPersistenceManager(); |
5151 | ········ownVar = new CmpBi1nOwnpconTblAutoLeftDerived(); |
5152 | ········otherVar = new CmpBi1nOwnpconTblAutoRight(); |
5153 | ····} |
5154 | ····[TearDown] |
5155 | ····public void TearDown() |
5156 | ····{ |
5157 | ········try |
5158 | ········{ |
5159 | ············pm.UnloadCache(); |
5160 | ············var l = pm.Objects<CmpBi1nOwnpconTblAutoLeftBase>().ResultTable; |
5161 | ············pm.Delete(l); |
5162 | ············pm.Save(); |
5163 | ············pm.UnloadCache(); |
5164 | ············decimal count; |
5165 | ············count = (decimal) new NDOQuery<CmpBi1nOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5166 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5167 | ············count = (decimal) new NDOQuery<CmpBi1nOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5168 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5169 | ········} |
5170 | ········catch (Exception) |
5171 | ········{ |
5172 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5173 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5174 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5175 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5176 | ········} |
5177 | ····} |
5178 | ····[Test] |
5179 | ····public void TestSaveReload() |
5180 | ····{ |
5181 | ········CreateObjects(); |
5182 | ········QueryOwn(); |
5183 | Assert. NotNull( ownVar, "No Query Result") ; |
5184 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5185 | ····} |
5186 | ····[Test] |
5187 | ····public void TestSaveReloadNull() |
5188 | ····{ |
5189 | ········CreateObjects(); |
5190 | ········QueryOwn(); |
5191 | Assert. NotNull( ownVar, "No Query Result") ; |
5192 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5193 | ········ownVar.RelField = null; |
5194 | ········pm.Save(); |
5195 | ········pm.UnloadCache(); |
5196 | ········QueryOwn(); |
5197 | Assert. NotNull( ownVar, "No Query Result") ; |
5198 | Assert. Null( ownVar. RelField, "There should be no object") ; |
5199 | ····} |
5200 | ····[Test] |
5201 | ····public void TestChangeKeyHolderLeft() |
5202 | ····{ |
5203 | ········CreateObjects(); |
5204 | ········QueryOwn(); |
5205 | Assert. NotNull( ownVar, "No Query Result") ; |
5206 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5207 | ········int x = ownVar.RelField.Dummy; |
5208 | ········ownVar.Dummy = 4711; |
5209 | ········pm.Save(); |
5210 | ········pm.UnloadCache(); |
5211 | ········QueryOwn(); |
5212 | Assert. NotNull( ownVar, "No Query Result") ; |
5213 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5214 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5215 | ····} |
5216 | ····[Test] |
5217 | ····public void TestChangeKeyHolderLeftNoTouch() |
5218 | ····{ |
5219 | ········CreateObjects(); |
5220 | ········QueryOwn(); |
5221 | Assert. NotNull( ownVar, "No Query Result") ; |
5222 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5223 | ········ownVar.Dummy = 4711; |
5224 | ········pm.Save(); |
5225 | ········pm.UnloadCache(); |
5226 | ········QueryOwn(); |
5227 | Assert. NotNull( ownVar, "No Query Result") ; |
5228 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5229 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5230 | ····} |
5231 | ····[Test] |
5232 | ····public void TestRelationHash() |
5233 | ····{ |
5234 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconTblAutoLeftBase)); |
5235 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
5236 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconTblAutoRight)); |
5237 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
5238 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
5239 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
5240 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconTblAutoLeftDerived)); |
5241 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
5242 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
5243 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
5244 | ····} |
5245 | ····void CreateObjects() |
5246 | ····{ |
5247 | ········pm.MakePersistent(ownVar); |
5248 | ········ownVar.AssignRelation(otherVar); |
5249 | ········pm.Save(); |
5250 | ········pm.UnloadCache(); |
5251 | ····} |
5252 | ····void QueryOwn() |
5253 | ····{ |
5254 | ········var q = new NDOQuery<CmpBi1nOwnpconTblAutoLeftBase>(pm); |
5255 | ········ownVar = q.ExecuteSingle(); |
5256 | ····} |
5257 | ····void QueryOther() |
5258 | ····{ |
5259 | ········var q = new NDOQuery<CmpBi1nOwnpconTblAutoRight>(pm); |
5260 | ········otherVar = q.ExecuteSingle(); |
5261 | ····} |
5262 | } |
5263 | |
5264 | |
5265 | [TestFixture] |
5266 | public class TestCmpBinnOwnpconTblAuto |
5267 | { |
5268 | ····CmpBinnOwnpconTblAutoLeftBase ownVar; |
5269 | ····CmpBinnOwnpconTblAutoRight otherVar; |
5270 | ····PersistenceManager pm; |
5271 | ····[SetUp] |
5272 | ····public void Setup() |
5273 | ····{ |
5274 | ········pm = PmFactory.NewPersistenceManager(); |
5275 | ········ownVar = new CmpBinnOwnpconTblAutoLeftDerived(); |
5276 | ········otherVar = new CmpBinnOwnpconTblAutoRight(); |
5277 | ····} |
5278 | ····[TearDown] |
5279 | ····public void TearDown() |
5280 | ····{ |
5281 | ········try |
5282 | ········{ |
5283 | ············pm.UnloadCache(); |
5284 | ············var l = pm.Objects<CmpBinnOwnpconTblAutoLeftBase>().ResultTable; |
5285 | ············pm.Delete(l); |
5286 | ············pm.Save(); |
5287 | ············pm.UnloadCache(); |
5288 | ············decimal count; |
5289 | ············count = (decimal) new NDOQuery<CmpBinnOwnpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5290 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5291 | ············count = (decimal) new NDOQuery<CmpBinnOwnpconTblAutoRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5292 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5293 | ········} |
5294 | ········catch (Exception) |
5295 | ········{ |
5296 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5297 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5298 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5299 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5300 | ········} |
5301 | ····} |
5302 | ····[Test] |
5303 | ····public void TestSaveReload() |
5304 | ····{ |
5305 | ········CreateObjects(); |
5306 | ········QueryOwn(); |
5307 | Assert. NotNull( ownVar, "No Query Result") ; |
5308 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5309 | ····} |
5310 | ····[Test] |
5311 | ····public void TestSaveReloadNull() |
5312 | ····{ |
5313 | ········CreateObjects(); |
5314 | ········QueryOwn(); |
5315 | Assert. NotNull( ownVar, "No Query Result") ; |
5316 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5317 | ········ownVar.RelField = new List<CmpBinnOwnpconTblAutoRight>(); |
5318 | ········pm.Save(); |
5319 | ········pm.UnloadCache(); |
5320 | ········QueryOwn(); |
5321 | Assert. NotNull( ownVar, "No Query Result") ; |
5322 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
5323 | ····} |
5324 | ····[Test] |
5325 | ····public void TestSaveReloadRemove() |
5326 | ····{ |
5327 | ········CreateObjects(); |
5328 | ········QueryOwn(); |
5329 | Assert. NotNull( ownVar, "No Query Result") ; |
5330 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5331 | ········ownVar.RemoveRelatedObject(); |
5332 | ········pm.Save(); |
5333 | ········pm.UnloadCache(); |
5334 | ········QueryOwn(); |
5335 | Assert. NotNull( ownVar, "No Query Result") ; |
5336 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
5337 | ····} |
5338 | ····[Test] |
5339 | ····public void TestRelationHash() |
5340 | ····{ |
5341 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconTblAutoLeftBase)); |
5342 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
5343 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconTblAutoRight)); |
5344 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
5345 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
5346 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
5347 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconTblAutoLeftDerived)); |
5348 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
5349 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
5350 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
5351 | ····} |
5352 | ····void CreateObjects() |
5353 | ····{ |
5354 | ········pm.MakePersistent(ownVar); |
5355 | ········ownVar.AssignRelation(otherVar); |
5356 | ········pm.Save(); |
5357 | ········pm.UnloadCache(); |
5358 | ····} |
5359 | ····void QueryOwn() |
5360 | ····{ |
5361 | ········var q = new NDOQuery<CmpBinnOwnpconTblAutoLeftBase>(pm); |
5362 | ········ownVar = q.ExecuteSingle(); |
5363 | ····} |
5364 | ····void QueryOther() |
5365 | ····{ |
5366 | ········var q = new NDOQuery<CmpBinnOwnpconTblAutoRight>(pm); |
5367 | ········otherVar = q.ExecuteSingle(); |
5368 | ····} |
5369 | } |
5370 | |
5371 | |
5372 | [TestFixture] |
5373 | public class TestAgrDir1OthpconNoTblAuto |
5374 | { |
5375 | ····AgrDir1OthpconNoTblAutoLeft ownVar; |
5376 | ····AgrDir1OthpconNoTblAutoRightBase otherVar; |
5377 | ····PersistenceManager pm; |
5378 | ····[SetUp] |
5379 | ····public void Setup() |
5380 | ····{ |
5381 | ········pm = PmFactory.NewPersistenceManager(); |
5382 | ········ownVar = new AgrDir1OthpconNoTblAutoLeft(); |
5383 | ········otherVar = new AgrDir1OthpconNoTblAutoRightDerived(); |
5384 | ····} |
5385 | ····[TearDown] |
5386 | ····public void TearDown() |
5387 | ····{ |
5388 | ········try |
5389 | ········{ |
5390 | ············pm.UnloadCache(); |
5391 | ············var l = pm.Objects<AgrDir1OthpconNoTblAutoLeft>().ResultTable; |
5392 | ············pm.Delete(l); |
5393 | ············pm.Save(); |
5394 | ············pm.UnloadCache(); |
5395 | ············var m = pm.Objects<AgrDir1OthpconNoTblAutoRightBase>().ResultTable; |
5396 | ············pm.Delete(m); |
5397 | ············pm.Save(); |
5398 | ············pm.UnloadCache(); |
5399 | ············decimal count; |
5400 | ············count = (decimal) new NDOQuery<AgrDir1OthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5401 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5402 | ············count = (decimal) new NDOQuery<AgrDir1OthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5403 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5404 | ········} |
5405 | ········catch (Exception) |
5406 | ········{ |
5407 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5408 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5409 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5410 | ········} |
5411 | ····} |
5412 | ····[Test] |
5413 | ····public void TestSaveReload() |
5414 | ····{ |
5415 | ········CreateObjects(); |
5416 | ········QueryOwn(); |
5417 | Assert. NotNull( ownVar, "No Query Result") ; |
5418 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5419 | ····} |
5420 | ····[Test] |
5421 | ····public void TestSaveReloadNull() |
5422 | ····{ |
5423 | ········CreateObjects(); |
5424 | ········QueryOwn(); |
5425 | Assert. NotNull( ownVar, "No Query Result") ; |
5426 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5427 | ········ownVar.RelField = null; |
5428 | ········pm.Save(); |
5429 | ········pm.UnloadCache(); |
5430 | ········QueryOwn(); |
5431 | Assert. NotNull( ownVar, "No Query Result") ; |
5432 | Assert. Null( ownVar. RelField, "There should be no object") ; |
5433 | ····} |
5434 | ····[Test] |
5435 | ····public void TestChangeKeyHolderLeft() |
5436 | ····{ |
5437 | ········CreateObjects(); |
5438 | ········QueryOwn(); |
5439 | Assert. NotNull( ownVar, "No Query Result") ; |
5440 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5441 | ········int x = ownVar.RelField.Dummy; |
5442 | ········ownVar.Dummy = 4711; |
5443 | ········pm.Save(); |
5444 | ········pm.UnloadCache(); |
5445 | ········QueryOwn(); |
5446 | Assert. NotNull( ownVar, "No Query Result") ; |
5447 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5448 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5449 | ····} |
5450 | ····[Test] |
5451 | ····public void TestChangeKeyHolderLeftNoTouch() |
5452 | ····{ |
5453 | ········CreateObjects(); |
5454 | ········QueryOwn(); |
5455 | Assert. NotNull( ownVar, "No Query Result") ; |
5456 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5457 | ········ownVar.Dummy = 4711; |
5458 | ········pm.Save(); |
5459 | ········pm.UnloadCache(); |
5460 | ········QueryOwn(); |
5461 | Assert. NotNull( ownVar, "No Query Result") ; |
5462 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5463 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5464 | ····} |
5465 | ····[Test] |
5466 | ····public void TestUpdateOrder() |
5467 | ····{ |
5468 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
5469 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
5470 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OthpconNoTblAutoLeft)})) |
5471 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OthpconNoTblAutoRightBase)})), "Wrong order #1"); |
5472 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OthpconNoTblAutoLeft)})) |
5473 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OthpconNoTblAutoRightDerived)})), "Wrong order #2"); |
5474 | ········Debug.WriteLine("AgrDir1OthpconNoTblAutoLeft"); |
5475 | ····} |
5476 | ····void CreateObjects() |
5477 | ····{ |
5478 | ········pm.MakePersistent(ownVar); |
5479 | ········pm.Save(); |
5480 | ········pm.MakePersistent(otherVar); |
5481 | ········pm.Save(); |
5482 | ········ownVar.AssignRelation(otherVar); |
5483 | ········pm.Save(); |
5484 | ········pm.UnloadCache(); |
5485 | ····} |
5486 | ····void QueryOwn() |
5487 | ····{ |
5488 | ········var q = new NDOQuery<AgrDir1OthpconNoTblAutoLeft>(pm); |
5489 | ········ownVar = q.ExecuteSingle(); |
5490 | ····} |
5491 | ····void QueryOther() |
5492 | ····{ |
5493 | ········var q = new NDOQuery<AgrDir1OthpconNoTblAutoRightBase>(pm); |
5494 | ········otherVar = q.ExecuteSingle(); |
5495 | ····} |
5496 | } |
5497 | |
5498 | |
5499 | [TestFixture] |
5500 | public class TestAgrDir1OthpconTblAuto |
5501 | { |
5502 | ····AgrDir1OthpconTblAutoLeft ownVar; |
5503 | ····AgrDir1OthpconTblAutoRightBase otherVar; |
5504 | ····PersistenceManager pm; |
5505 | ····[SetUp] |
5506 | ····public void Setup() |
5507 | ····{ |
5508 | ········pm = PmFactory.NewPersistenceManager(); |
5509 | ········ownVar = new AgrDir1OthpconTblAutoLeft(); |
5510 | ········otherVar = new AgrDir1OthpconTblAutoRightDerived(); |
5511 | ····} |
5512 | ····[TearDown] |
5513 | ····public void TearDown() |
5514 | ····{ |
5515 | ········try |
5516 | ········{ |
5517 | ············pm.UnloadCache(); |
5518 | ············var l = pm.Objects<AgrDir1OthpconTblAutoLeft>().ResultTable; |
5519 | ············pm.Delete(l); |
5520 | ············pm.Save(); |
5521 | ············pm.UnloadCache(); |
5522 | ············var m = pm.Objects<AgrDir1OthpconTblAutoRightBase>().ResultTable; |
5523 | ············pm.Delete(m); |
5524 | ············pm.Save(); |
5525 | ············pm.UnloadCache(); |
5526 | ············decimal count; |
5527 | ············count = (decimal) new NDOQuery<AgrDir1OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5528 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5529 | ············count = (decimal) new NDOQuery<AgrDir1OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5530 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5531 | ········} |
5532 | ········catch (Exception) |
5533 | ········{ |
5534 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5535 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5536 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5537 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5538 | ········} |
5539 | ····} |
5540 | ····[Test] |
5541 | ····public void TestSaveReload() |
5542 | ····{ |
5543 | ········CreateObjects(); |
5544 | ········QueryOwn(); |
5545 | Assert. NotNull( ownVar, "No Query Result") ; |
5546 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5547 | ····} |
5548 | ····[Test] |
5549 | ····public void TestSaveReloadNull() |
5550 | ····{ |
5551 | ········CreateObjects(); |
5552 | ········QueryOwn(); |
5553 | Assert. NotNull( ownVar, "No Query Result") ; |
5554 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5555 | ········ownVar.RelField = null; |
5556 | ········pm.Save(); |
5557 | ········pm.UnloadCache(); |
5558 | ········QueryOwn(); |
5559 | Assert. NotNull( ownVar, "No Query Result") ; |
5560 | Assert. Null( ownVar. RelField, "There should be no object") ; |
5561 | ····} |
5562 | ····[Test] |
5563 | ····public void TestChangeKeyHolderLeft() |
5564 | ····{ |
5565 | ········CreateObjects(); |
5566 | ········QueryOwn(); |
5567 | Assert. NotNull( ownVar, "No Query Result") ; |
5568 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5569 | ········int x = ownVar.RelField.Dummy; |
5570 | ········ownVar.Dummy = 4711; |
5571 | ········pm.Save(); |
5572 | ········pm.UnloadCache(); |
5573 | ········QueryOwn(); |
5574 | Assert. NotNull( ownVar, "No Query Result") ; |
5575 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5576 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5577 | ····} |
5578 | ····[Test] |
5579 | ····public void TestChangeKeyHolderLeftNoTouch() |
5580 | ····{ |
5581 | ········CreateObjects(); |
5582 | ········QueryOwn(); |
5583 | Assert. NotNull( ownVar, "No Query Result") ; |
5584 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5585 | ········ownVar.Dummy = 4711; |
5586 | ········pm.Save(); |
5587 | ········pm.UnloadCache(); |
5588 | ········QueryOwn(); |
5589 | Assert. NotNull( ownVar, "No Query Result") ; |
5590 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5591 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5592 | ····} |
5593 | ····void CreateObjects() |
5594 | ····{ |
5595 | ········pm.MakePersistent(ownVar); |
5596 | ········pm.MakePersistent(otherVar); |
5597 | ········ownVar.AssignRelation(otherVar); |
5598 | ········pm.Save(); |
5599 | ········pm.UnloadCache(); |
5600 | ····} |
5601 | ····void QueryOwn() |
5602 | ····{ |
5603 | ········var q = new NDOQuery<AgrDir1OthpconTblAutoLeft>(pm); |
5604 | ········ownVar = q.ExecuteSingle(); |
5605 | ····} |
5606 | ····void QueryOther() |
5607 | ····{ |
5608 | ········var q = new NDOQuery<AgrDir1OthpconTblAutoRightBase>(pm); |
5609 | ········otherVar = q.ExecuteSingle(); |
5610 | ····} |
5611 | } |
5612 | |
5613 | |
5614 | [TestFixture] |
5615 | public class TestAgrBi11OthpconNoTblAuto |
5616 | { |
5617 | ····AgrBi11OthpconNoTblAutoLeft ownVar; |
5618 | ····AgrBi11OthpconNoTblAutoRightBase otherVar; |
5619 | ····PersistenceManager pm; |
5620 | ····[SetUp] |
5621 | ····public void Setup() |
5622 | ····{ |
5623 | ········pm = PmFactory.NewPersistenceManager(); |
5624 | ········ownVar = new AgrBi11OthpconNoTblAutoLeft(); |
5625 | ········otherVar = new AgrBi11OthpconNoTblAutoRightDerived(); |
5626 | ····} |
5627 | ····[TearDown] |
5628 | ····public void TearDown() |
5629 | ····{ |
5630 | ········try |
5631 | ········{ |
5632 | ············pm.UnloadCache(); |
5633 | ············var l = pm.Objects<AgrBi11OthpconNoTblAutoLeft>().ResultTable; |
5634 | ············pm.Delete(l); |
5635 | ············pm.Save(); |
5636 | ············pm.UnloadCache(); |
5637 | ············var m = pm.Objects<AgrBi11OthpconNoTblAutoRightBase>().ResultTable; |
5638 | ············pm.Delete(m); |
5639 | ············pm.Save(); |
5640 | ············pm.UnloadCache(); |
5641 | ············decimal count; |
5642 | ············count = (decimal) new NDOQuery<AgrBi11OthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5643 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5644 | ············count = (decimal) new NDOQuery<AgrBi11OthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5645 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5646 | ········} |
5647 | ········catch (Exception) |
5648 | ········{ |
5649 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5650 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5651 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5652 | ········} |
5653 | ····} |
5654 | ····[Test] |
5655 | ····public void TestSaveReload() |
5656 | ····{ |
5657 | ········CreateObjects(); |
5658 | ········QueryOwn(); |
5659 | Assert. NotNull( ownVar, "No Query Result") ; |
5660 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5661 | ····} |
5662 | ····[Test] |
5663 | ····public void TestSaveReloadNull() |
5664 | ····{ |
5665 | ········CreateObjects(); |
5666 | ········QueryOwn(); |
5667 | Assert. NotNull( ownVar, "No Query Result") ; |
5668 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5669 | ········ownVar.RelField = null; |
5670 | ········pm.Save(); |
5671 | ········pm.UnloadCache(); |
5672 | ········QueryOwn(); |
5673 | Assert. NotNull( ownVar, "No Query Result") ; |
5674 | Assert. Null( ownVar. RelField, "There should be no object") ; |
5675 | ····} |
5676 | ····[Test] |
5677 | ····public void TestChangeKeyHolderLeft() |
5678 | ····{ |
5679 | ········CreateObjects(); |
5680 | ········QueryOwn(); |
5681 | Assert. NotNull( ownVar, "No Query Result") ; |
5682 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5683 | ········int x = ownVar.RelField.Dummy; |
5684 | ········ownVar.Dummy = 4711; |
5685 | ········pm.Save(); |
5686 | ········pm.UnloadCache(); |
5687 | ········QueryOwn(); |
5688 | Assert. NotNull( ownVar, "No Query Result") ; |
5689 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5690 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5691 | ····} |
5692 | ····[Test] |
5693 | ····public void TestChangeKeyHolderRight() |
5694 | ····{ |
5695 | ········CreateObjects(); |
5696 | ········QueryOther(); |
5697 | Assert. NotNull( otherVar, "No Query Result") ; |
5698 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5699 | ········int x = otherVar.RelField.Dummy; |
5700 | ········otherVar.Dummy = 4711; |
5701 | ········pm.Save(); |
5702 | ········pm.UnloadCache(); |
5703 | ········QueryOther(); |
5704 | Assert. NotNull( otherVar, "No Query Result") ; |
5705 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5706 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5707 | ····} |
5708 | ····[Test] |
5709 | ····public void TestChangeKeyHolderLeftNoTouch() |
5710 | ····{ |
5711 | ········CreateObjects(); |
5712 | ········QueryOwn(); |
5713 | Assert. NotNull( ownVar, "No Query Result") ; |
5714 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5715 | ········ownVar.Dummy = 4711; |
5716 | ········pm.Save(); |
5717 | ········pm.UnloadCache(); |
5718 | ········QueryOwn(); |
5719 | Assert. NotNull( ownVar, "No Query Result") ; |
5720 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5721 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5722 | ····} |
5723 | ····[Test] |
5724 | ····public void TestChangeKeyHolderRightNoTouch() |
5725 | ····{ |
5726 | ········CreateObjects(); |
5727 | ········QueryOther(); |
5728 | Assert. NotNull( otherVar, "No Query Result") ; |
5729 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5730 | ········otherVar.Dummy = 4711; |
5731 | ········pm.Save(); |
5732 | ········pm.UnloadCache(); |
5733 | ········QueryOther(); |
5734 | Assert. NotNull( otherVar, "No Query Result") ; |
5735 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5736 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5737 | ····} |
5738 | ····[Test] |
5739 | ····public void TestRelationHash() |
5740 | ····{ |
5741 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconNoTblAutoLeft)); |
5742 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
5743 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconNoTblAutoRightBase)); |
5744 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
5745 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
5746 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
5747 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconNoTblAutoRightDerived)); |
5748 | ········Relation relderRight = clderRight.FindRelation("relField"); |
5749 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
5750 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
5751 | ····} |
5752 | ····void CreateObjects() |
5753 | ····{ |
5754 | ········pm.MakePersistent(ownVar); |
5755 | ········pm.Save(); |
5756 | ········pm.MakePersistent(otherVar); |
5757 | ········pm.Save(); |
5758 | ········ownVar.AssignRelation(otherVar); |
5759 | ········pm.Save(); |
5760 | ········pm.UnloadCache(); |
5761 | ····} |
5762 | ····void QueryOwn() |
5763 | ····{ |
5764 | ········var q = new NDOQuery<AgrBi11OthpconNoTblAutoLeft>(pm); |
5765 | ········ownVar = q.ExecuteSingle(); |
5766 | ····} |
5767 | ····void QueryOther() |
5768 | ····{ |
5769 | ········var q = new NDOQuery<AgrBi11OthpconNoTblAutoRightBase>(pm); |
5770 | ········otherVar = q.ExecuteSingle(); |
5771 | ····} |
5772 | } |
5773 | |
5774 | |
5775 | [TestFixture] |
5776 | public class TestAgrBi11OthpconTblAuto |
5777 | { |
5778 | ····AgrBi11OthpconTblAutoLeft ownVar; |
5779 | ····AgrBi11OthpconTblAutoRightBase otherVar; |
5780 | ····PersistenceManager pm; |
5781 | ····[SetUp] |
5782 | ····public void Setup() |
5783 | ····{ |
5784 | ········pm = PmFactory.NewPersistenceManager(); |
5785 | ········ownVar = new AgrBi11OthpconTblAutoLeft(); |
5786 | ········otherVar = new AgrBi11OthpconTblAutoRightDerived(); |
5787 | ····} |
5788 | ····[TearDown] |
5789 | ····public void TearDown() |
5790 | ····{ |
5791 | ········try |
5792 | ········{ |
5793 | ············pm.UnloadCache(); |
5794 | ············var l = pm.Objects<AgrBi11OthpconTblAutoLeft>().ResultTable; |
5795 | ············pm.Delete(l); |
5796 | ············pm.Save(); |
5797 | ············pm.UnloadCache(); |
5798 | ············var m = pm.Objects<AgrBi11OthpconTblAutoRightBase>().ResultTable; |
5799 | ············pm.Delete(m); |
5800 | ············pm.Save(); |
5801 | ············pm.UnloadCache(); |
5802 | ············decimal count; |
5803 | ············count = (decimal) new NDOQuery<AgrBi11OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5804 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5805 | ············count = (decimal) new NDOQuery<AgrBi11OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5806 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5807 | ········} |
5808 | ········catch (Exception) |
5809 | ········{ |
5810 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5811 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5812 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5813 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5814 | ········} |
5815 | ····} |
5816 | ····[Test] |
5817 | ····public void TestSaveReload() |
5818 | ····{ |
5819 | ········CreateObjects(); |
5820 | ········QueryOwn(); |
5821 | Assert. NotNull( ownVar, "No Query Result") ; |
5822 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5823 | ····} |
5824 | ····[Test] |
5825 | ····public void TestSaveReloadNull() |
5826 | ····{ |
5827 | ········CreateObjects(); |
5828 | ········QueryOwn(); |
5829 | Assert. NotNull( ownVar, "No Query Result") ; |
5830 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5831 | ········ownVar.RelField = null; |
5832 | ········pm.Save(); |
5833 | ········pm.UnloadCache(); |
5834 | ········QueryOwn(); |
5835 | Assert. NotNull( ownVar, "No Query Result") ; |
5836 | Assert. Null( ownVar. RelField, "There should be no object") ; |
5837 | ····} |
5838 | ····[Test] |
5839 | ····public void TestChangeKeyHolderLeft() |
5840 | ····{ |
5841 | ········CreateObjects(); |
5842 | ········QueryOwn(); |
5843 | Assert. NotNull( ownVar, "No Query Result") ; |
5844 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5845 | ········int x = ownVar.RelField.Dummy; |
5846 | ········ownVar.Dummy = 4711; |
5847 | ········pm.Save(); |
5848 | ········pm.UnloadCache(); |
5849 | ········QueryOwn(); |
5850 | Assert. NotNull( ownVar, "No Query Result") ; |
5851 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5852 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5853 | ····} |
5854 | ····[Test] |
5855 | ····public void TestChangeKeyHolderRight() |
5856 | ····{ |
5857 | ········CreateObjects(); |
5858 | ········QueryOther(); |
5859 | Assert. NotNull( otherVar, "No Query Result") ; |
5860 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5861 | ········int x = otherVar.RelField.Dummy; |
5862 | ········otherVar.Dummy = 4711; |
5863 | ········pm.Save(); |
5864 | ········pm.UnloadCache(); |
5865 | ········QueryOther(); |
5866 | Assert. NotNull( otherVar, "No Query Result") ; |
5867 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5868 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5869 | ····} |
5870 | ····[Test] |
5871 | ····public void TestChangeKeyHolderLeftNoTouch() |
5872 | ····{ |
5873 | ········CreateObjects(); |
5874 | ········QueryOwn(); |
5875 | Assert. NotNull( ownVar, "No Query Result") ; |
5876 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5877 | ········ownVar.Dummy = 4711; |
5878 | ········pm.Save(); |
5879 | ········pm.UnloadCache(); |
5880 | ········QueryOwn(); |
5881 | Assert. NotNull( ownVar, "No Query Result") ; |
5882 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
5883 | Assert. NotNull( ownVar. RelField, "No related object") ; |
5884 | ····} |
5885 | ····[Test] |
5886 | ····public void TestChangeKeyHolderRightNoTouch() |
5887 | ····{ |
5888 | ········CreateObjects(); |
5889 | ········QueryOther(); |
5890 | Assert. NotNull( otherVar, "No Query Result") ; |
5891 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5892 | ········otherVar.Dummy = 4711; |
5893 | ········pm.Save(); |
5894 | ········pm.UnloadCache(); |
5895 | ········QueryOther(); |
5896 | Assert. NotNull( otherVar, "No Query Result") ; |
5897 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
5898 | Assert. NotNull( otherVar. RelField, "No related object") ; |
5899 | ····} |
5900 | ····[Test] |
5901 | ····public void TestRelationHash() |
5902 | ····{ |
5903 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconTblAutoLeft)); |
5904 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
5905 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconTblAutoRightBase)); |
5906 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
5907 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
5908 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
5909 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi11OthpconTblAutoRightDerived)); |
5910 | ········Relation relderRight = clderRight.FindRelation("relField"); |
5911 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
5912 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
5913 | ····} |
5914 | ····void CreateObjects() |
5915 | ····{ |
5916 | ········pm.MakePersistent(ownVar); |
5917 | ········pm.MakePersistent(otherVar); |
5918 | ········ownVar.AssignRelation(otherVar); |
5919 | ········pm.Save(); |
5920 | ········pm.UnloadCache(); |
5921 | ····} |
5922 | ····void QueryOwn() |
5923 | ····{ |
5924 | ········var q = new NDOQuery<AgrBi11OthpconTblAutoLeft>(pm); |
5925 | ········ownVar = q.ExecuteSingle(); |
5926 | ····} |
5927 | ····void QueryOther() |
5928 | ····{ |
5929 | ········var q = new NDOQuery<AgrBi11OthpconTblAutoRightBase>(pm); |
5930 | ········otherVar = q.ExecuteSingle(); |
5931 | ····} |
5932 | } |
5933 | |
5934 | |
5935 | [TestFixture] |
5936 | public class TestAgrDirnOthpconTblAuto |
5937 | { |
5938 | ····AgrDirnOthpconTblAutoLeft ownVar; |
5939 | ····AgrDirnOthpconTblAutoRightBase otherVar; |
5940 | ····PersistenceManager pm; |
5941 | ····[SetUp] |
5942 | ····public void Setup() |
5943 | ····{ |
5944 | ········pm = PmFactory.NewPersistenceManager(); |
5945 | ········ownVar = new AgrDirnOthpconTblAutoLeft(); |
5946 | ········otherVar = new AgrDirnOthpconTblAutoRightDerived(); |
5947 | ····} |
5948 | ····[TearDown] |
5949 | ····public void TearDown() |
5950 | ····{ |
5951 | ········try |
5952 | ········{ |
5953 | ············pm.UnloadCache(); |
5954 | ············var l = pm.Objects<AgrDirnOthpconTblAutoLeft>().ResultTable; |
5955 | ············pm.Delete(l); |
5956 | ············pm.Save(); |
5957 | ············pm.UnloadCache(); |
5958 | ············var m = pm.Objects<AgrDirnOthpconTblAutoRightBase>().ResultTable; |
5959 | ············pm.Delete(m); |
5960 | ············pm.Save(); |
5961 | ············pm.UnloadCache(); |
5962 | ············decimal count; |
5963 | ············count = (decimal) new NDOQuery<AgrDirnOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5964 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
5965 | ············count = (decimal) new NDOQuery<AgrDirnOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
5966 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
5967 | ········} |
5968 | ········catch (Exception) |
5969 | ········{ |
5970 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
5971 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
5972 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
5973 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
5974 | ········} |
5975 | ····} |
5976 | ····[Test] |
5977 | ····public void TestSaveReload() |
5978 | ····{ |
5979 | ········CreateObjects(); |
5980 | ········QueryOwn(); |
5981 | Assert. NotNull( ownVar, "No Query Result") ; |
5982 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5983 | ····} |
5984 | ····[Test] |
5985 | ····public void TestSaveReloadNull() |
5986 | ····{ |
5987 | ········CreateObjects(); |
5988 | ········QueryOwn(); |
5989 | Assert. NotNull( ownVar, "No Query Result") ; |
5990 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
5991 | ········ownVar.RelField = new List<AgrDirnOthpconTblAutoRightBase>(); |
5992 | ········pm.Save(); |
5993 | ········pm.UnloadCache(); |
5994 | ········QueryOwn(); |
5995 | Assert. NotNull( ownVar, "No Query Result") ; |
5996 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
5997 | ····} |
5998 | ····[Test] |
5999 | ····public void TestSaveReloadRemove() |
6000 | ····{ |
6001 | ········CreateObjects(); |
6002 | ········QueryOwn(); |
6003 | Assert. NotNull( ownVar, "No Query Result") ; |
6004 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6005 | ········ownVar.RemoveRelatedObject(); |
6006 | ········pm.Save(); |
6007 | ········pm.UnloadCache(); |
6008 | ········QueryOwn(); |
6009 | Assert. NotNull( ownVar, "No Query Result") ; |
6010 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
6011 | ····} |
6012 | ····void CreateObjects() |
6013 | ····{ |
6014 | ········pm.MakePersistent(ownVar); |
6015 | ········pm.MakePersistent(otherVar); |
6016 | ········ownVar.AssignRelation(otherVar); |
6017 | ········pm.Save(); |
6018 | ········pm.UnloadCache(); |
6019 | ····} |
6020 | ····void QueryOwn() |
6021 | ····{ |
6022 | ········var q = new NDOQuery<AgrDirnOthpconTblAutoLeft>(pm); |
6023 | ········ownVar = q.ExecuteSingle(); |
6024 | ····} |
6025 | ····void QueryOther() |
6026 | ····{ |
6027 | ········var q = new NDOQuery<AgrDirnOthpconTblAutoRightBase>(pm); |
6028 | ········otherVar = q.ExecuteSingle(); |
6029 | ····} |
6030 | } |
6031 | |
6032 | |
6033 | [TestFixture] |
6034 | public class TestAgrBin1OthpconTblAuto |
6035 | { |
6036 | ····AgrBin1OthpconTblAutoLeft ownVar; |
6037 | ····AgrBin1OthpconTblAutoRightBase otherVar; |
6038 | ····PersistenceManager pm; |
6039 | ····[SetUp] |
6040 | ····public void Setup() |
6041 | ····{ |
6042 | ········pm = PmFactory.NewPersistenceManager(); |
6043 | ········ownVar = new AgrBin1OthpconTblAutoLeft(); |
6044 | ········otherVar = new AgrBin1OthpconTblAutoRightDerived(); |
6045 | ····} |
6046 | ····[TearDown] |
6047 | ····public void TearDown() |
6048 | ····{ |
6049 | ········try |
6050 | ········{ |
6051 | ············pm.UnloadCache(); |
6052 | ············var l = pm.Objects<AgrBin1OthpconTblAutoLeft>().ResultTable; |
6053 | ············pm.Delete(l); |
6054 | ············pm.Save(); |
6055 | ············pm.UnloadCache(); |
6056 | ············var m = pm.Objects<AgrBin1OthpconTblAutoRightBase>().ResultTable; |
6057 | ············pm.Delete(m); |
6058 | ············pm.Save(); |
6059 | ············pm.UnloadCache(); |
6060 | ············decimal count; |
6061 | ············count = (decimal) new NDOQuery<AgrBin1OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6062 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6063 | ············count = (decimal) new NDOQuery<AgrBin1OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6064 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6065 | ········} |
6066 | ········catch (Exception) |
6067 | ········{ |
6068 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6069 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6070 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6071 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
6072 | ········} |
6073 | ····} |
6074 | ····[Test] |
6075 | ····public void TestSaveReload() |
6076 | ····{ |
6077 | ········CreateObjects(); |
6078 | ········QueryOwn(); |
6079 | Assert. NotNull( ownVar, "No Query Result") ; |
6080 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6081 | ····} |
6082 | ····[Test] |
6083 | ····public void TestSaveReloadNull() |
6084 | ····{ |
6085 | ········CreateObjects(); |
6086 | ········QueryOwn(); |
6087 | Assert. NotNull( ownVar, "No Query Result") ; |
6088 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6089 | ········ownVar.RelField = new List<AgrBin1OthpconTblAutoRightBase>(); |
6090 | ········pm.Save(); |
6091 | ········pm.UnloadCache(); |
6092 | ········QueryOwn(); |
6093 | Assert. NotNull( ownVar, "No Query Result") ; |
6094 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
6095 | ····} |
6096 | ····[Test] |
6097 | ····public void TestSaveReloadRemove() |
6098 | ····{ |
6099 | ········CreateObjects(); |
6100 | ········QueryOwn(); |
6101 | Assert. NotNull( ownVar, "No Query Result") ; |
6102 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6103 | ········ownVar.RemoveRelatedObject(); |
6104 | ········pm.Save(); |
6105 | ········pm.UnloadCache(); |
6106 | ········QueryOwn(); |
6107 | Assert. NotNull( ownVar, "No Query Result") ; |
6108 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
6109 | ····} |
6110 | ····[Test] |
6111 | ····public void TestChangeKeyHolderRight() |
6112 | ····{ |
6113 | ········CreateObjects(); |
6114 | ········QueryOther(); |
6115 | Assert. NotNull( otherVar, "No Query Result") ; |
6116 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6117 | ········int x = otherVar.RelField.Dummy; |
6118 | ········otherVar.Dummy = 4711; |
6119 | ········pm.Save(); |
6120 | ········pm.UnloadCache(); |
6121 | ········QueryOther(); |
6122 | Assert. NotNull( otherVar, "No Query Result") ; |
6123 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
6124 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6125 | ····} |
6126 | ····[Test] |
6127 | ····public void TestChangeKeyHolderRightNoTouch() |
6128 | ····{ |
6129 | ········CreateObjects(); |
6130 | ········QueryOther(); |
6131 | Assert. NotNull( otherVar, "No Query Result") ; |
6132 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6133 | ········otherVar.Dummy = 4711; |
6134 | ········pm.Save(); |
6135 | ········pm.UnloadCache(); |
6136 | ········QueryOther(); |
6137 | Assert. NotNull( otherVar, "No Query Result") ; |
6138 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
6139 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6140 | ····} |
6141 | ····[Test] |
6142 | ····public void TestRelationHash() |
6143 | ····{ |
6144 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OthpconTblAutoLeft)); |
6145 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
6146 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1OthpconTblAutoRightBase)); |
6147 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
6148 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
6149 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
6150 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBin1OthpconTblAutoRightDerived)); |
6151 | ········Relation relderRight = clderRight.FindRelation("relField"); |
6152 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
6153 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
6154 | ····} |
6155 | ····void CreateObjects() |
6156 | ····{ |
6157 | ········pm.MakePersistent(ownVar); |
6158 | ········pm.MakePersistent(otherVar); |
6159 | ········ownVar.AssignRelation(otherVar); |
6160 | ········pm.Save(); |
6161 | ········pm.UnloadCache(); |
6162 | ····} |
6163 | ····void QueryOwn() |
6164 | ····{ |
6165 | ········var q = new NDOQuery<AgrBin1OthpconTblAutoLeft>(pm); |
6166 | ········ownVar = q.ExecuteSingle(); |
6167 | ····} |
6168 | ····void QueryOther() |
6169 | ····{ |
6170 | ········var q = new NDOQuery<AgrBin1OthpconTblAutoRightBase>(pm); |
6171 | ········otherVar = q.ExecuteSingle(); |
6172 | ····} |
6173 | } |
6174 | |
6175 | |
6176 | [TestFixture] |
6177 | public class TestAgrBi1nOthpconNoTblAuto |
6178 | { |
6179 | ····AgrBi1nOthpconNoTblAutoLeft ownVar; |
6180 | ····AgrBi1nOthpconNoTblAutoRightBase otherVar; |
6181 | ····PersistenceManager pm; |
6182 | ····[SetUp] |
6183 | ····public void Setup() |
6184 | ····{ |
6185 | ········pm = PmFactory.NewPersistenceManager(); |
6186 | ········ownVar = new AgrBi1nOthpconNoTblAutoLeft(); |
6187 | ········otherVar = new AgrBi1nOthpconNoTblAutoRightDerived(); |
6188 | ····} |
6189 | ····[TearDown] |
6190 | ····public void TearDown() |
6191 | ····{ |
6192 | ········try |
6193 | ········{ |
6194 | ············pm.UnloadCache(); |
6195 | ············var l = pm.Objects<AgrBi1nOthpconNoTblAutoLeft>().ResultTable; |
6196 | ············pm.Delete(l); |
6197 | ············pm.Save(); |
6198 | ············pm.UnloadCache(); |
6199 | ············var m = pm.Objects<AgrBi1nOthpconNoTblAutoRightBase>().ResultTable; |
6200 | ············pm.Delete(m); |
6201 | ············pm.Save(); |
6202 | ············pm.UnloadCache(); |
6203 | ············decimal count; |
6204 | ············count = (decimal) new NDOQuery<AgrBi1nOthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6205 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6206 | ············count = (decimal) new NDOQuery<AgrBi1nOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6207 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6208 | ········} |
6209 | ········catch (Exception) |
6210 | ········{ |
6211 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6212 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6213 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6214 | ········} |
6215 | ····} |
6216 | ····[Test] |
6217 | ····public void TestSaveReload() |
6218 | ····{ |
6219 | ········CreateObjects(); |
6220 | ········QueryOwn(); |
6221 | Assert. NotNull( ownVar, "No Query Result") ; |
6222 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6223 | ····} |
6224 | ····[Test] |
6225 | ····public void TestSaveReloadNull() |
6226 | ····{ |
6227 | ········CreateObjects(); |
6228 | ········QueryOwn(); |
6229 | Assert. NotNull( ownVar, "No Query Result") ; |
6230 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6231 | ········ownVar.RelField = null; |
6232 | ········pm.Save(); |
6233 | ········pm.UnloadCache(); |
6234 | ········QueryOwn(); |
6235 | Assert. NotNull( ownVar, "No Query Result") ; |
6236 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6237 | ····} |
6238 | ····[Test] |
6239 | ····public void TestChangeKeyHolderLeft() |
6240 | ····{ |
6241 | ········CreateObjects(); |
6242 | ········QueryOwn(); |
6243 | Assert. NotNull( ownVar, "No Query Result") ; |
6244 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6245 | ········int x = ownVar.RelField.Dummy; |
6246 | ········ownVar.Dummy = 4711; |
6247 | ········pm.Save(); |
6248 | ········pm.UnloadCache(); |
6249 | ········QueryOwn(); |
6250 | Assert. NotNull( ownVar, "No Query Result") ; |
6251 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6252 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6253 | ····} |
6254 | ····[Test] |
6255 | ····public void TestChangeKeyHolderLeftNoTouch() |
6256 | ····{ |
6257 | ········CreateObjects(); |
6258 | ········QueryOwn(); |
6259 | Assert. NotNull( ownVar, "No Query Result") ; |
6260 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6261 | ········ownVar.Dummy = 4711; |
6262 | ········pm.Save(); |
6263 | ········pm.UnloadCache(); |
6264 | ········QueryOwn(); |
6265 | Assert. NotNull( ownVar, "No Query Result") ; |
6266 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6267 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6268 | ····} |
6269 | ····[Test] |
6270 | ····public void TestUpdateOrder() |
6271 | ····{ |
6272 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
6273 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
6274 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nOthpconNoTblAutoLeft)})) |
6275 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nOthpconNoTblAutoRightBase)})), "Wrong order #1"); |
6276 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nOthpconNoTblAutoLeft)})) |
6277 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrBi1nOthpconNoTblAutoRightDerived)})), "Wrong order #2"); |
6278 | ········Debug.WriteLine("AgrBi1nOthpconNoTblAutoLeft"); |
6279 | ····} |
6280 | ····[Test] |
6281 | ····public void TestRelationHash() |
6282 | ····{ |
6283 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconNoTblAutoLeft)); |
6284 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
6285 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconNoTblAutoRightBase)); |
6286 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
6287 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
6288 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
6289 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconNoTblAutoRightDerived)); |
6290 | ········Relation relderRight = clderRight.FindRelation("relField"); |
6291 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
6292 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
6293 | ····} |
6294 | ····void CreateObjects() |
6295 | ····{ |
6296 | ········pm.MakePersistent(ownVar); |
6297 | ········pm.Save(); |
6298 | ········pm.MakePersistent(otherVar); |
6299 | ········pm.Save(); |
6300 | ········ownVar.AssignRelation(otherVar); |
6301 | ········pm.Save(); |
6302 | ········pm.UnloadCache(); |
6303 | ····} |
6304 | ····void QueryOwn() |
6305 | ····{ |
6306 | ········var q = new NDOQuery<AgrBi1nOthpconNoTblAutoLeft>(pm); |
6307 | ········ownVar = q.ExecuteSingle(); |
6308 | ····} |
6309 | ····void QueryOther() |
6310 | ····{ |
6311 | ········var q = new NDOQuery<AgrBi1nOthpconNoTblAutoRightBase>(pm); |
6312 | ········otherVar = q.ExecuteSingle(); |
6313 | ····} |
6314 | } |
6315 | |
6316 | |
6317 | [TestFixture] |
6318 | public class TestAgrBi1nOthpconTblAuto |
6319 | { |
6320 | ····AgrBi1nOthpconTblAutoLeft ownVar; |
6321 | ····AgrBi1nOthpconTblAutoRightBase otherVar; |
6322 | ····PersistenceManager pm; |
6323 | ····[SetUp] |
6324 | ····public void Setup() |
6325 | ····{ |
6326 | ········pm = PmFactory.NewPersistenceManager(); |
6327 | ········ownVar = new AgrBi1nOthpconTblAutoLeft(); |
6328 | ········otherVar = new AgrBi1nOthpconTblAutoRightDerived(); |
6329 | ····} |
6330 | ····[TearDown] |
6331 | ····public void TearDown() |
6332 | ····{ |
6333 | ········try |
6334 | ········{ |
6335 | ············pm.UnloadCache(); |
6336 | ············var l = pm.Objects<AgrBi1nOthpconTblAutoLeft>().ResultTable; |
6337 | ············pm.Delete(l); |
6338 | ············pm.Save(); |
6339 | ············pm.UnloadCache(); |
6340 | ············var m = pm.Objects<AgrBi1nOthpconTblAutoRightBase>().ResultTable; |
6341 | ············pm.Delete(m); |
6342 | ············pm.Save(); |
6343 | ············pm.UnloadCache(); |
6344 | ············decimal count; |
6345 | ············count = (decimal) new NDOQuery<AgrBi1nOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6346 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6347 | ············count = (decimal) new NDOQuery<AgrBi1nOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6348 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6349 | ········} |
6350 | ········catch (Exception) |
6351 | ········{ |
6352 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6353 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6354 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6355 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
6356 | ········} |
6357 | ····} |
6358 | ····[Test] |
6359 | ····public void TestSaveReload() |
6360 | ····{ |
6361 | ········CreateObjects(); |
6362 | ········QueryOwn(); |
6363 | Assert. NotNull( ownVar, "No Query Result") ; |
6364 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6365 | ····} |
6366 | ····[Test] |
6367 | ····public void TestSaveReloadNull() |
6368 | ····{ |
6369 | ········CreateObjects(); |
6370 | ········QueryOwn(); |
6371 | Assert. NotNull( ownVar, "No Query Result") ; |
6372 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6373 | ········ownVar.RelField = null; |
6374 | ········pm.Save(); |
6375 | ········pm.UnloadCache(); |
6376 | ········QueryOwn(); |
6377 | Assert. NotNull( ownVar, "No Query Result") ; |
6378 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6379 | ····} |
6380 | ····[Test] |
6381 | ····public void TestChangeKeyHolderLeft() |
6382 | ····{ |
6383 | ········CreateObjects(); |
6384 | ········QueryOwn(); |
6385 | Assert. NotNull( ownVar, "No Query Result") ; |
6386 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6387 | ········int x = ownVar.RelField.Dummy; |
6388 | ········ownVar.Dummy = 4711; |
6389 | ········pm.Save(); |
6390 | ········pm.UnloadCache(); |
6391 | ········QueryOwn(); |
6392 | Assert. NotNull( ownVar, "No Query Result") ; |
6393 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6394 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6395 | ····} |
6396 | ····[Test] |
6397 | ····public void TestChangeKeyHolderLeftNoTouch() |
6398 | ····{ |
6399 | ········CreateObjects(); |
6400 | ········QueryOwn(); |
6401 | Assert. NotNull( ownVar, "No Query Result") ; |
6402 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6403 | ········ownVar.Dummy = 4711; |
6404 | ········pm.Save(); |
6405 | ········pm.UnloadCache(); |
6406 | ········QueryOwn(); |
6407 | Assert. NotNull( ownVar, "No Query Result") ; |
6408 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6409 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6410 | ····} |
6411 | ····[Test] |
6412 | ····public void TestRelationHash() |
6413 | ····{ |
6414 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconTblAutoLeft)); |
6415 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
6416 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconTblAutoRightBase)); |
6417 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
6418 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
6419 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
6420 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOthpconTblAutoRightDerived)); |
6421 | ········Relation relderRight = clderRight.FindRelation("relField"); |
6422 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
6423 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
6424 | ····} |
6425 | ····void CreateObjects() |
6426 | ····{ |
6427 | ········pm.MakePersistent(ownVar); |
6428 | ········pm.MakePersistent(otherVar); |
6429 | ········ownVar.AssignRelation(otherVar); |
6430 | ········pm.Save(); |
6431 | ········pm.UnloadCache(); |
6432 | ····} |
6433 | ····void QueryOwn() |
6434 | ····{ |
6435 | ········var q = new NDOQuery<AgrBi1nOthpconTblAutoLeft>(pm); |
6436 | ········ownVar = q.ExecuteSingle(); |
6437 | ····} |
6438 | ····void QueryOther() |
6439 | ····{ |
6440 | ········var q = new NDOQuery<AgrBi1nOthpconTblAutoRightBase>(pm); |
6441 | ········otherVar = q.ExecuteSingle(); |
6442 | ····} |
6443 | } |
6444 | |
6445 | |
6446 | [TestFixture] |
6447 | public class TestAgrBinnOthpconTblAuto |
6448 | { |
6449 | ····AgrBinnOthpconTblAutoLeft ownVar; |
6450 | ····AgrBinnOthpconTblAutoRightBase otherVar; |
6451 | ····PersistenceManager pm; |
6452 | ····[SetUp] |
6453 | ····public void Setup() |
6454 | ····{ |
6455 | ········pm = PmFactory.NewPersistenceManager(); |
6456 | ········ownVar = new AgrBinnOthpconTblAutoLeft(); |
6457 | ········otherVar = new AgrBinnOthpconTblAutoRightDerived(); |
6458 | ····} |
6459 | ····[TearDown] |
6460 | ····public void TearDown() |
6461 | ····{ |
6462 | ········try |
6463 | ········{ |
6464 | ············pm.UnloadCache(); |
6465 | ············var l = pm.Objects<AgrBinnOthpconTblAutoLeft>().ResultTable; |
6466 | ············pm.Delete(l); |
6467 | ············pm.Save(); |
6468 | ············pm.UnloadCache(); |
6469 | ············var m = pm.Objects<AgrBinnOthpconTblAutoRightBase>().ResultTable; |
6470 | ············pm.Delete(m); |
6471 | ············pm.Save(); |
6472 | ············pm.UnloadCache(); |
6473 | ············decimal count; |
6474 | ············count = (decimal) new NDOQuery<AgrBinnOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6475 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6476 | ············count = (decimal) new NDOQuery<AgrBinnOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6477 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6478 | ········} |
6479 | ········catch (Exception) |
6480 | ········{ |
6481 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6482 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6483 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6484 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
6485 | ········} |
6486 | ····} |
6487 | ····[Test] |
6488 | ····public void TestSaveReload() |
6489 | ····{ |
6490 | ········CreateObjects(); |
6491 | ········QueryOwn(); |
6492 | Assert. NotNull( ownVar, "No Query Result") ; |
6493 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6494 | ····} |
6495 | ····[Test] |
6496 | ····public void TestSaveReloadNull() |
6497 | ····{ |
6498 | ········CreateObjects(); |
6499 | ········QueryOwn(); |
6500 | Assert. NotNull( ownVar, "No Query Result") ; |
6501 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6502 | ········ownVar.RelField = new List<AgrBinnOthpconTblAutoRightBase>(); |
6503 | ········pm.Save(); |
6504 | ········pm.UnloadCache(); |
6505 | ········QueryOwn(); |
6506 | Assert. NotNull( ownVar, "No Query Result") ; |
6507 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
6508 | ····} |
6509 | ····[Test] |
6510 | ····public void TestSaveReloadRemove() |
6511 | ····{ |
6512 | ········CreateObjects(); |
6513 | ········QueryOwn(); |
6514 | Assert. NotNull( ownVar, "No Query Result") ; |
6515 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
6516 | ········ownVar.RemoveRelatedObject(); |
6517 | ········pm.Save(); |
6518 | ········pm.UnloadCache(); |
6519 | ········QueryOwn(); |
6520 | Assert. NotNull( ownVar, "No Query Result") ; |
6521 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
6522 | ····} |
6523 | ····[Test] |
6524 | ····public void TestRelationHash() |
6525 | ····{ |
6526 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBinnOthpconTblAutoLeft)); |
6527 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
6528 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBinnOthpconTblAutoRightBase)); |
6529 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
6530 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
6531 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
6532 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBinnOthpconTblAutoRightDerived)); |
6533 | ········Relation relderRight = clderRight.FindRelation("relField"); |
6534 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
6535 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
6536 | ····} |
6537 | ····void CreateObjects() |
6538 | ····{ |
6539 | ········pm.MakePersistent(ownVar); |
6540 | ········pm.MakePersistent(otherVar); |
6541 | ········ownVar.AssignRelation(otherVar); |
6542 | ········pm.Save(); |
6543 | ········pm.UnloadCache(); |
6544 | ····} |
6545 | ····void QueryOwn() |
6546 | ····{ |
6547 | ········var q = new NDOQuery<AgrBinnOthpconTblAutoLeft>(pm); |
6548 | ········ownVar = q.ExecuteSingle(); |
6549 | ····} |
6550 | ····void QueryOther() |
6551 | ····{ |
6552 | ········var q = new NDOQuery<AgrBinnOthpconTblAutoRightBase>(pm); |
6553 | ········otherVar = q.ExecuteSingle(); |
6554 | ····} |
6555 | } |
6556 | |
6557 | |
6558 | [TestFixture] |
6559 | public class TestCmpDir1OthpconNoTblAuto |
6560 | { |
6561 | ····CmpDir1OthpconNoTblAutoLeft ownVar; |
6562 | ····CmpDir1OthpconNoTblAutoRightBase otherVar; |
6563 | ····PersistenceManager pm; |
6564 | ····[SetUp] |
6565 | ····public void Setup() |
6566 | ····{ |
6567 | ········pm = PmFactory.NewPersistenceManager(); |
6568 | ········ownVar = new CmpDir1OthpconNoTblAutoLeft(); |
6569 | ········otherVar = new CmpDir1OthpconNoTblAutoRightDerived(); |
6570 | ····} |
6571 | ····[TearDown] |
6572 | ····public void TearDown() |
6573 | ····{ |
6574 | ········try |
6575 | ········{ |
6576 | ············pm.UnloadCache(); |
6577 | ············var l = pm.Objects<CmpDir1OthpconNoTblAutoLeft>().ResultTable; |
6578 | ············pm.Delete(l); |
6579 | ············pm.Save(); |
6580 | ············pm.UnloadCache(); |
6581 | ············decimal count; |
6582 | ············count = (decimal) new NDOQuery<CmpDir1OthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6583 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6584 | ············count = (decimal) new NDOQuery<CmpDir1OthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6585 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6586 | ········} |
6587 | ········catch (Exception) |
6588 | ········{ |
6589 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6590 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6591 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6592 | ········} |
6593 | ····} |
6594 | ····[Test] |
6595 | ····public void TestSaveReload() |
6596 | ····{ |
6597 | ········bool thrown = false; |
6598 | ········try |
6599 | ········{ |
6600 | ············CreateObjects(); |
6601 | ············QueryOwn(); |
6602 | Assert. NotNull( ownVar, "No Query Result") ; |
6603 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6604 | ········} |
6605 | ········catch (NDOException) |
6606 | ········{ |
6607 | ············thrown = true; |
6608 | ········} |
6609 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
6610 | ····} |
6611 | ····[Test] |
6612 | ····public void TestSaveReloadNull() |
6613 | ····{ |
6614 | ········bool thrown = false; |
6615 | ········try |
6616 | ········{ |
6617 | ············CreateObjects(); |
6618 | ············QueryOwn(); |
6619 | Assert. NotNull( ownVar, "No Query Result") ; |
6620 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6621 | ············ownVar.RelField = null; |
6622 | ············pm.Save(); |
6623 | ············pm.UnloadCache(); |
6624 | ············QueryOwn(); |
6625 | Assert. NotNull( ownVar, "No Query Result") ; |
6626 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6627 | ········} |
6628 | ········catch (NDOException) |
6629 | ········{ |
6630 | ············thrown = true; |
6631 | ········} |
6632 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
6633 | ····} |
6634 | ····void CreateObjects() |
6635 | ····{ |
6636 | ········pm.MakePersistent(ownVar); |
6637 | ········pm.Save(); |
6638 | ········ownVar.AssignRelation(otherVar); |
6639 | ········pm.Save(); |
6640 | ········pm.UnloadCache(); |
6641 | ····} |
6642 | ····void QueryOwn() |
6643 | ····{ |
6644 | ········var q = new NDOQuery<CmpDir1OthpconNoTblAutoLeft>(pm); |
6645 | ········ownVar = q.ExecuteSingle(); |
6646 | ····} |
6647 | ····void QueryOther() |
6648 | ····{ |
6649 | ········var q = new NDOQuery<CmpDir1OthpconNoTblAutoRightBase>(pm); |
6650 | ········otherVar = q.ExecuteSingle(); |
6651 | ····} |
6652 | } |
6653 | |
6654 | |
6655 | [TestFixture] |
6656 | public class TestCmpDir1OthpconTblAuto |
6657 | { |
6658 | ····CmpDir1OthpconTblAutoLeft ownVar; |
6659 | ····CmpDir1OthpconTblAutoRightBase otherVar; |
6660 | ····PersistenceManager pm; |
6661 | ····[SetUp] |
6662 | ····public void Setup() |
6663 | ····{ |
6664 | ········pm = PmFactory.NewPersistenceManager(); |
6665 | ········ownVar = new CmpDir1OthpconTblAutoLeft(); |
6666 | ········otherVar = new CmpDir1OthpconTblAutoRightDerived(); |
6667 | ····} |
6668 | ····[TearDown] |
6669 | ····public void TearDown() |
6670 | ····{ |
6671 | ········try |
6672 | ········{ |
6673 | ············pm.UnloadCache(); |
6674 | ············var l = pm.Objects<CmpDir1OthpconTblAutoLeft>().ResultTable; |
6675 | ············pm.Delete(l); |
6676 | ············pm.Save(); |
6677 | ············pm.UnloadCache(); |
6678 | ············decimal count; |
6679 | ············count = (decimal) new NDOQuery<CmpDir1OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6680 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6681 | ············count = (decimal) new NDOQuery<CmpDir1OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6682 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6683 | ········} |
6684 | ········catch (Exception) |
6685 | ········{ |
6686 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6687 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6688 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6689 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
6690 | ········} |
6691 | ····} |
6692 | ····[Test] |
6693 | ····public void TestSaveReload() |
6694 | ····{ |
6695 | ········CreateObjects(); |
6696 | ········QueryOwn(); |
6697 | Assert. NotNull( ownVar, "No Query Result") ; |
6698 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6699 | ····} |
6700 | ····[Test] |
6701 | ····public void TestSaveReloadNull() |
6702 | ····{ |
6703 | ········CreateObjects(); |
6704 | ········QueryOwn(); |
6705 | Assert. NotNull( ownVar, "No Query Result") ; |
6706 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6707 | ········ownVar.RelField = null; |
6708 | ········pm.Save(); |
6709 | ········pm.UnloadCache(); |
6710 | ········QueryOwn(); |
6711 | Assert. NotNull( ownVar, "No Query Result") ; |
6712 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6713 | ····} |
6714 | ····[Test] |
6715 | ····public void TestChangeKeyHolderLeft() |
6716 | ····{ |
6717 | ········CreateObjects(); |
6718 | ········QueryOwn(); |
6719 | Assert. NotNull( ownVar, "No Query Result") ; |
6720 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6721 | ········int x = ownVar.RelField.Dummy; |
6722 | ········ownVar.Dummy = 4711; |
6723 | ········pm.Save(); |
6724 | ········pm.UnloadCache(); |
6725 | ········QueryOwn(); |
6726 | Assert. NotNull( ownVar, "No Query Result") ; |
6727 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6728 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6729 | ····} |
6730 | ····[Test] |
6731 | ····public void TestChangeKeyHolderLeftNoTouch() |
6732 | ····{ |
6733 | ········CreateObjects(); |
6734 | ········QueryOwn(); |
6735 | Assert. NotNull( ownVar, "No Query Result") ; |
6736 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6737 | ········ownVar.Dummy = 4711; |
6738 | ········pm.Save(); |
6739 | ········pm.UnloadCache(); |
6740 | ········QueryOwn(); |
6741 | Assert. NotNull( ownVar, "No Query Result") ; |
6742 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6743 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6744 | ····} |
6745 | ····void CreateObjects() |
6746 | ····{ |
6747 | ········pm.MakePersistent(ownVar); |
6748 | ········ownVar.AssignRelation(otherVar); |
6749 | ········pm.Save(); |
6750 | ········pm.UnloadCache(); |
6751 | ····} |
6752 | ····void QueryOwn() |
6753 | ····{ |
6754 | ········var q = new NDOQuery<CmpDir1OthpconTblAutoLeft>(pm); |
6755 | ········ownVar = q.ExecuteSingle(); |
6756 | ····} |
6757 | ····void QueryOther() |
6758 | ····{ |
6759 | ········var q = new NDOQuery<CmpDir1OthpconTblAutoRightBase>(pm); |
6760 | ········otherVar = q.ExecuteSingle(); |
6761 | ····} |
6762 | } |
6763 | |
6764 | |
6765 | [TestFixture] |
6766 | public class TestCmpBi11OthpconNoTblAuto |
6767 | { |
6768 | ····CmpBi11OthpconNoTblAutoLeft ownVar; |
6769 | ····CmpBi11OthpconNoTblAutoRightBase otherVar; |
6770 | ····PersistenceManager pm; |
6771 | ····[SetUp] |
6772 | ····public void Setup() |
6773 | ····{ |
6774 | ········pm = PmFactory.NewPersistenceManager(); |
6775 | ········ownVar = new CmpBi11OthpconNoTblAutoLeft(); |
6776 | ········otherVar = new CmpBi11OthpconNoTblAutoRightDerived(); |
6777 | ····} |
6778 | ····[TearDown] |
6779 | ····public void TearDown() |
6780 | ····{ |
6781 | ········try |
6782 | ········{ |
6783 | ············pm.UnloadCache(); |
6784 | ············var l = pm.Objects<CmpBi11OthpconNoTblAutoLeft>().ResultTable; |
6785 | ············pm.Delete(l); |
6786 | ············pm.Save(); |
6787 | ············pm.UnloadCache(); |
6788 | ············decimal count; |
6789 | ············count = (decimal) new NDOQuery<CmpBi11OthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6790 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6791 | ············count = (decimal) new NDOQuery<CmpBi11OthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6792 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6793 | ········} |
6794 | ········catch (Exception) |
6795 | ········{ |
6796 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6797 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6798 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6799 | ········} |
6800 | ····} |
6801 | ····[Test] |
6802 | ····public void TestSaveReload() |
6803 | ····{ |
6804 | ········bool thrown = false; |
6805 | ········try |
6806 | ········{ |
6807 | ············CreateObjects(); |
6808 | ············QueryOwn(); |
6809 | Assert. NotNull( ownVar, "No Query Result") ; |
6810 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6811 | ········} |
6812 | ········catch (NDOException) |
6813 | ········{ |
6814 | ············thrown = true; |
6815 | ········} |
6816 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
6817 | ····} |
6818 | ····[Test] |
6819 | ····public void TestSaveReloadNull() |
6820 | ····{ |
6821 | ········bool thrown = false; |
6822 | ········try |
6823 | ········{ |
6824 | ············CreateObjects(); |
6825 | ············QueryOwn(); |
6826 | Assert. NotNull( ownVar, "No Query Result") ; |
6827 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6828 | ············ownVar.RelField = null; |
6829 | ············pm.Save(); |
6830 | ············pm.UnloadCache(); |
6831 | ············QueryOwn(); |
6832 | Assert. NotNull( ownVar, "No Query Result") ; |
6833 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6834 | ········} |
6835 | ········catch (NDOException) |
6836 | ········{ |
6837 | ············thrown = true; |
6838 | ········} |
6839 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
6840 | ····} |
6841 | ····[Test] |
6842 | ····public void TestRelationHash() |
6843 | ····{ |
6844 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconNoTblAutoLeft)); |
6845 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
6846 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconNoTblAutoRightBase)); |
6847 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
6848 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
6849 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
6850 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconNoTblAutoRightDerived)); |
6851 | ········Relation relderRight = clderRight.FindRelation("relField"); |
6852 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
6853 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
6854 | ····} |
6855 | ····void CreateObjects() |
6856 | ····{ |
6857 | ········pm.MakePersistent(ownVar); |
6858 | ········pm.Save(); |
6859 | ········ownVar.AssignRelation(otherVar); |
6860 | ········pm.Save(); |
6861 | ········pm.UnloadCache(); |
6862 | ····} |
6863 | ····void QueryOwn() |
6864 | ····{ |
6865 | ········var q = new NDOQuery<CmpBi11OthpconNoTblAutoLeft>(pm); |
6866 | ········ownVar = q.ExecuteSingle(); |
6867 | ····} |
6868 | ····void QueryOther() |
6869 | ····{ |
6870 | ········var q = new NDOQuery<CmpBi11OthpconNoTblAutoRightBase>(pm); |
6871 | ········otherVar = q.ExecuteSingle(); |
6872 | ····} |
6873 | } |
6874 | |
6875 | |
6876 | [TestFixture] |
6877 | public class TestCmpBi11OthpconTblAuto |
6878 | { |
6879 | ····CmpBi11OthpconTblAutoLeft ownVar; |
6880 | ····CmpBi11OthpconTblAutoRightBase otherVar; |
6881 | ····PersistenceManager pm; |
6882 | ····[SetUp] |
6883 | ····public void Setup() |
6884 | ····{ |
6885 | ········pm = PmFactory.NewPersistenceManager(); |
6886 | ········ownVar = new CmpBi11OthpconTblAutoLeft(); |
6887 | ········otherVar = new CmpBi11OthpconTblAutoRightDerived(); |
6888 | ····} |
6889 | ····[TearDown] |
6890 | ····public void TearDown() |
6891 | ····{ |
6892 | ········try |
6893 | ········{ |
6894 | ············pm.UnloadCache(); |
6895 | ············var l = pm.Objects<CmpBi11OthpconTblAutoLeft>().ResultTable; |
6896 | ············pm.Delete(l); |
6897 | ············pm.Save(); |
6898 | ············pm.UnloadCache(); |
6899 | ············decimal count; |
6900 | ············count = (decimal) new NDOQuery<CmpBi11OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6901 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
6902 | ············count = (decimal) new NDOQuery<CmpBi11OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
6903 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
6904 | ········} |
6905 | ········catch (Exception) |
6906 | ········{ |
6907 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
6908 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
6909 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
6910 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
6911 | ········} |
6912 | ····} |
6913 | ····[Test] |
6914 | ····public void TestSaveReload() |
6915 | ····{ |
6916 | ········CreateObjects(); |
6917 | ········QueryOwn(); |
6918 | Assert. NotNull( ownVar, "No Query Result") ; |
6919 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6920 | ····} |
6921 | ····[Test] |
6922 | ····public void TestSaveReloadNull() |
6923 | ····{ |
6924 | ········CreateObjects(); |
6925 | ········QueryOwn(); |
6926 | Assert. NotNull( ownVar, "No Query Result") ; |
6927 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6928 | ········ownVar.RelField = null; |
6929 | ········pm.Save(); |
6930 | ········pm.UnloadCache(); |
6931 | ········QueryOwn(); |
6932 | Assert. NotNull( ownVar, "No Query Result") ; |
6933 | Assert. Null( ownVar. RelField, "There should be no object") ; |
6934 | ····} |
6935 | ····[Test] |
6936 | ····public void TestChangeKeyHolderLeft() |
6937 | ····{ |
6938 | ········CreateObjects(); |
6939 | ········QueryOwn(); |
6940 | Assert. NotNull( ownVar, "No Query Result") ; |
6941 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6942 | ········int x = ownVar.RelField.Dummy; |
6943 | ········ownVar.Dummy = 4711; |
6944 | ········pm.Save(); |
6945 | ········pm.UnloadCache(); |
6946 | ········QueryOwn(); |
6947 | Assert. NotNull( ownVar, "No Query Result") ; |
6948 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6949 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6950 | ····} |
6951 | ····[Test] |
6952 | ····public void TestChangeKeyHolderRight() |
6953 | ····{ |
6954 | ········CreateObjects(); |
6955 | ········QueryOther(); |
6956 | Assert. NotNull( otherVar, "No Query Result") ; |
6957 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6958 | ········int x = otherVar.RelField.Dummy; |
6959 | ········otherVar.Dummy = 4711; |
6960 | ········pm.Save(); |
6961 | ········pm.UnloadCache(); |
6962 | ········QueryOther(); |
6963 | Assert. NotNull( otherVar, "No Query Result") ; |
6964 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
6965 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6966 | ····} |
6967 | ····[Test] |
6968 | ····public void TestChangeKeyHolderLeftNoTouch() |
6969 | ····{ |
6970 | ········CreateObjects(); |
6971 | ········QueryOwn(); |
6972 | Assert. NotNull( ownVar, "No Query Result") ; |
6973 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6974 | ········ownVar.Dummy = 4711; |
6975 | ········pm.Save(); |
6976 | ········pm.UnloadCache(); |
6977 | ········QueryOwn(); |
6978 | Assert. NotNull( ownVar, "No Query Result") ; |
6979 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
6980 | Assert. NotNull( ownVar. RelField, "No related object") ; |
6981 | ····} |
6982 | ····[Test] |
6983 | ····public void TestChangeKeyHolderRightNoTouch() |
6984 | ····{ |
6985 | ········CreateObjects(); |
6986 | ········QueryOther(); |
6987 | Assert. NotNull( otherVar, "No Query Result") ; |
6988 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6989 | ········otherVar.Dummy = 4711; |
6990 | ········pm.Save(); |
6991 | ········pm.UnloadCache(); |
6992 | ········QueryOther(); |
6993 | Assert. NotNull( otherVar, "No Query Result") ; |
6994 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
6995 | Assert. NotNull( otherVar. RelField, "No related object") ; |
6996 | ····} |
6997 | ····[Test] |
6998 | ····public void TestRelationHash() |
6999 | ····{ |
7000 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconTblAutoLeft)); |
7001 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7002 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconTblAutoRightBase)); |
7003 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7004 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7005 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7006 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi11OthpconTblAutoRightDerived)); |
7007 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7008 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7009 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7010 | ····} |
7011 | ····void CreateObjects() |
7012 | ····{ |
7013 | ········pm.MakePersistent(ownVar); |
7014 | ········ownVar.AssignRelation(otherVar); |
7015 | ········pm.Save(); |
7016 | ········pm.UnloadCache(); |
7017 | ····} |
7018 | ····void QueryOwn() |
7019 | ····{ |
7020 | ········var q = new NDOQuery<CmpBi11OthpconTblAutoLeft>(pm); |
7021 | ········ownVar = q.ExecuteSingle(); |
7022 | ····} |
7023 | ····void QueryOther() |
7024 | ····{ |
7025 | ········var q = new NDOQuery<CmpBi11OthpconTblAutoRightBase>(pm); |
7026 | ········otherVar = q.ExecuteSingle(); |
7027 | ····} |
7028 | } |
7029 | |
7030 | |
7031 | [TestFixture] |
7032 | public class TestCmpDirnOthpconTblAuto |
7033 | { |
7034 | ····CmpDirnOthpconTblAutoLeft ownVar; |
7035 | ····CmpDirnOthpconTblAutoRightBase otherVar; |
7036 | ····PersistenceManager pm; |
7037 | ····[SetUp] |
7038 | ····public void Setup() |
7039 | ····{ |
7040 | ········pm = PmFactory.NewPersistenceManager(); |
7041 | ········ownVar = new CmpDirnOthpconTblAutoLeft(); |
7042 | ········otherVar = new CmpDirnOthpconTblAutoRightDerived(); |
7043 | ····} |
7044 | ····[TearDown] |
7045 | ····public void TearDown() |
7046 | ····{ |
7047 | ········try |
7048 | ········{ |
7049 | ············pm.UnloadCache(); |
7050 | ············var l = pm.Objects<CmpDirnOthpconTblAutoLeft>().ResultTable; |
7051 | ············pm.Delete(l); |
7052 | ············pm.Save(); |
7053 | ············pm.UnloadCache(); |
7054 | ············decimal count; |
7055 | ············count = (decimal) new NDOQuery<CmpDirnOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7056 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7057 | ············count = (decimal) new NDOQuery<CmpDirnOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7058 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7059 | ········} |
7060 | ········catch (Exception) |
7061 | ········{ |
7062 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7063 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7064 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7065 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
7066 | ········} |
7067 | ····} |
7068 | ····[Test] |
7069 | ····public void TestSaveReload() |
7070 | ····{ |
7071 | ········CreateObjects(); |
7072 | ········QueryOwn(); |
7073 | Assert. NotNull( ownVar, "No Query Result") ; |
7074 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7075 | ····} |
7076 | ····[Test] |
7077 | ····public void TestSaveReloadNull() |
7078 | ····{ |
7079 | ········CreateObjects(); |
7080 | ········QueryOwn(); |
7081 | Assert. NotNull( ownVar, "No Query Result") ; |
7082 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7083 | ········ownVar.RelField = new List<CmpDirnOthpconTblAutoRightBase>(); |
7084 | ········pm.Save(); |
7085 | ········pm.UnloadCache(); |
7086 | ········QueryOwn(); |
7087 | Assert. NotNull( ownVar, "No Query Result") ; |
7088 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7089 | ····} |
7090 | ····[Test] |
7091 | ····public void TestSaveReloadRemove() |
7092 | ····{ |
7093 | ········CreateObjects(); |
7094 | ········QueryOwn(); |
7095 | Assert. NotNull( ownVar, "No Query Result") ; |
7096 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7097 | ········ownVar.RemoveRelatedObject(); |
7098 | ········pm.Save(); |
7099 | ········pm.UnloadCache(); |
7100 | ········QueryOwn(); |
7101 | Assert. NotNull( ownVar, "No Query Result") ; |
7102 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7103 | ····} |
7104 | ····void CreateObjects() |
7105 | ····{ |
7106 | ········pm.MakePersistent(ownVar); |
7107 | ········ownVar.AssignRelation(otherVar); |
7108 | ········pm.Save(); |
7109 | ········pm.UnloadCache(); |
7110 | ····} |
7111 | ····void QueryOwn() |
7112 | ····{ |
7113 | ········var q = new NDOQuery<CmpDirnOthpconTblAutoLeft>(pm); |
7114 | ········ownVar = q.ExecuteSingle(); |
7115 | ····} |
7116 | ····void QueryOther() |
7117 | ····{ |
7118 | ········var q = new NDOQuery<CmpDirnOthpconTblAutoRightBase>(pm); |
7119 | ········otherVar = q.ExecuteSingle(); |
7120 | ····} |
7121 | } |
7122 | |
7123 | |
7124 | [TestFixture] |
7125 | public class TestCmpBin1OthpconTblAuto |
7126 | { |
7127 | ····CmpBin1OthpconTblAutoLeft ownVar; |
7128 | ····CmpBin1OthpconTblAutoRightBase otherVar; |
7129 | ····PersistenceManager pm; |
7130 | ····[SetUp] |
7131 | ····public void Setup() |
7132 | ····{ |
7133 | ········pm = PmFactory.NewPersistenceManager(); |
7134 | ········ownVar = new CmpBin1OthpconTblAutoLeft(); |
7135 | ········otherVar = new CmpBin1OthpconTblAutoRightDerived(); |
7136 | ····} |
7137 | ····[TearDown] |
7138 | ····public void TearDown() |
7139 | ····{ |
7140 | ········try |
7141 | ········{ |
7142 | ············pm.UnloadCache(); |
7143 | ············var l = pm.Objects<CmpBin1OthpconTblAutoLeft>().ResultTable; |
7144 | ············pm.Delete(l); |
7145 | ············pm.Save(); |
7146 | ············pm.UnloadCache(); |
7147 | ············decimal count; |
7148 | ············count = (decimal) new NDOQuery<CmpBin1OthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7149 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7150 | ············count = (decimal) new NDOQuery<CmpBin1OthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7151 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7152 | ········} |
7153 | ········catch (Exception) |
7154 | ········{ |
7155 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7156 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7157 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7158 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
7159 | ········} |
7160 | ····} |
7161 | ····[Test] |
7162 | ····public void TestSaveReload() |
7163 | ····{ |
7164 | ········CreateObjects(); |
7165 | ········QueryOwn(); |
7166 | Assert. NotNull( ownVar, "No Query Result") ; |
7167 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7168 | ····} |
7169 | ····[Test] |
7170 | ····public void TestSaveReloadNull() |
7171 | ····{ |
7172 | ········CreateObjects(); |
7173 | ········QueryOwn(); |
7174 | Assert. NotNull( ownVar, "No Query Result") ; |
7175 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7176 | ········ownVar.RelField = new List<CmpBin1OthpconTblAutoRightBase>(); |
7177 | ········pm.Save(); |
7178 | ········pm.UnloadCache(); |
7179 | ········QueryOwn(); |
7180 | Assert. NotNull( ownVar, "No Query Result") ; |
7181 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7182 | ····} |
7183 | ····[Test] |
7184 | ····public void TestSaveReloadRemove() |
7185 | ····{ |
7186 | ········CreateObjects(); |
7187 | ········QueryOwn(); |
7188 | Assert. NotNull( ownVar, "No Query Result") ; |
7189 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7190 | ········ownVar.RemoveRelatedObject(); |
7191 | ········pm.Save(); |
7192 | ········pm.UnloadCache(); |
7193 | ········QueryOwn(); |
7194 | Assert. NotNull( ownVar, "No Query Result") ; |
7195 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7196 | ····} |
7197 | ····[Test] |
7198 | ····public void TestChangeKeyHolderRight() |
7199 | ····{ |
7200 | ········CreateObjects(); |
7201 | ········QueryOther(); |
7202 | Assert. NotNull( otherVar, "No Query Result") ; |
7203 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7204 | ········int x = otherVar.RelField.Dummy; |
7205 | ········otherVar.Dummy = 4711; |
7206 | ········pm.Save(); |
7207 | ········pm.UnloadCache(); |
7208 | ········QueryOther(); |
7209 | Assert. NotNull( otherVar, "No Query Result") ; |
7210 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
7211 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7212 | ····} |
7213 | ····[Test] |
7214 | ····public void TestChangeKeyHolderRightNoTouch() |
7215 | ····{ |
7216 | ········CreateObjects(); |
7217 | ········QueryOther(); |
7218 | Assert. NotNull( otherVar, "No Query Result") ; |
7219 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7220 | ········otherVar.Dummy = 4711; |
7221 | ········pm.Save(); |
7222 | ········pm.UnloadCache(); |
7223 | ········QueryOther(); |
7224 | Assert. NotNull( otherVar, "No Query Result") ; |
7225 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
7226 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7227 | ····} |
7228 | ····[Test] |
7229 | ····public void TestRelationHash() |
7230 | ····{ |
7231 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OthpconTblAutoLeft)); |
7232 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7233 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1OthpconTblAutoRightBase)); |
7234 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7235 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7236 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7237 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBin1OthpconTblAutoRightDerived)); |
7238 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7239 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7240 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7241 | ····} |
7242 | ····void CreateObjects() |
7243 | ····{ |
7244 | ········pm.MakePersistent(ownVar); |
7245 | ········ownVar.AssignRelation(otherVar); |
7246 | ········pm.Save(); |
7247 | ········pm.UnloadCache(); |
7248 | ····} |
7249 | ····void QueryOwn() |
7250 | ····{ |
7251 | ········var q = new NDOQuery<CmpBin1OthpconTblAutoLeft>(pm); |
7252 | ········ownVar = q.ExecuteSingle(); |
7253 | ····} |
7254 | ····void QueryOther() |
7255 | ····{ |
7256 | ········var q = new NDOQuery<CmpBin1OthpconTblAutoRightBase>(pm); |
7257 | ········otherVar = q.ExecuteSingle(); |
7258 | ····} |
7259 | } |
7260 | |
7261 | |
7262 | [TestFixture] |
7263 | public class TestCmpBi1nOthpconNoTblAuto |
7264 | { |
7265 | ····CmpBi1nOthpconNoTblAutoLeft ownVar; |
7266 | ····CmpBi1nOthpconNoTblAutoRightBase otherVar; |
7267 | ····PersistenceManager pm; |
7268 | ····[SetUp] |
7269 | ····public void Setup() |
7270 | ····{ |
7271 | ········pm = PmFactory.NewPersistenceManager(); |
7272 | ········ownVar = new CmpBi1nOthpconNoTblAutoLeft(); |
7273 | ········otherVar = new CmpBi1nOthpconNoTblAutoRightDerived(); |
7274 | ····} |
7275 | ····[TearDown] |
7276 | ····public void TearDown() |
7277 | ····{ |
7278 | ········try |
7279 | ········{ |
7280 | ············pm.UnloadCache(); |
7281 | ············var l = pm.Objects<CmpBi1nOthpconNoTblAutoLeft>().ResultTable; |
7282 | ············pm.Delete(l); |
7283 | ············pm.Save(); |
7284 | ············pm.UnloadCache(); |
7285 | ············decimal count; |
7286 | ············count = (decimal) new NDOQuery<CmpBi1nOthpconNoTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7287 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7288 | ············count = (decimal) new NDOQuery<CmpBi1nOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7289 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7290 | ········} |
7291 | ········catch (Exception) |
7292 | ········{ |
7293 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7294 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7295 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7296 | ········} |
7297 | ····} |
7298 | ····[Test] |
7299 | ····public void TestSaveReload() |
7300 | ····{ |
7301 | ········bool thrown = false; |
7302 | ········try |
7303 | ········{ |
7304 | ············CreateObjects(); |
7305 | ············QueryOwn(); |
7306 | Assert. NotNull( ownVar, "No Query Result") ; |
7307 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7308 | ········} |
7309 | ········catch (NDOException) |
7310 | ········{ |
7311 | ············thrown = true; |
7312 | ········} |
7313 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
7314 | ····} |
7315 | ····[Test] |
7316 | ····public void TestSaveReloadNull() |
7317 | ····{ |
7318 | ········bool thrown = false; |
7319 | ········try |
7320 | ········{ |
7321 | ············CreateObjects(); |
7322 | ············QueryOwn(); |
7323 | Assert. NotNull( ownVar, "No Query Result") ; |
7324 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7325 | ············ownVar.RelField = null; |
7326 | ············pm.Save(); |
7327 | ············pm.UnloadCache(); |
7328 | ············QueryOwn(); |
7329 | Assert. NotNull( ownVar, "No Query Result") ; |
7330 | Assert. Null( ownVar. RelField, "There should be no object") ; |
7331 | ········} |
7332 | ········catch (NDOException) |
7333 | ········{ |
7334 | ············thrown = true; |
7335 | ········} |
7336 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
7337 | ····} |
7338 | ····[Test] |
7339 | ····public void TestRelationHash() |
7340 | ····{ |
7341 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconNoTblAutoLeft)); |
7342 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7343 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconNoTblAutoRightBase)); |
7344 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7345 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7346 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7347 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconNoTblAutoRightDerived)); |
7348 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7349 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7350 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7351 | ····} |
7352 | ····void CreateObjects() |
7353 | ····{ |
7354 | ········pm.MakePersistent(ownVar); |
7355 | ········pm.Save(); |
7356 | ········ownVar.AssignRelation(otherVar); |
7357 | ········pm.Save(); |
7358 | ········pm.UnloadCache(); |
7359 | ····} |
7360 | ····void QueryOwn() |
7361 | ····{ |
7362 | ········var q = new NDOQuery<CmpBi1nOthpconNoTblAutoLeft>(pm); |
7363 | ········ownVar = q.ExecuteSingle(); |
7364 | ····} |
7365 | ····void QueryOther() |
7366 | ····{ |
7367 | ········var q = new NDOQuery<CmpBi1nOthpconNoTblAutoRightBase>(pm); |
7368 | ········otherVar = q.ExecuteSingle(); |
7369 | ····} |
7370 | } |
7371 | |
7372 | |
7373 | [TestFixture] |
7374 | public class TestCmpBi1nOthpconTblAuto |
7375 | { |
7376 | ····CmpBi1nOthpconTblAutoLeft ownVar; |
7377 | ····CmpBi1nOthpconTblAutoRightBase otherVar; |
7378 | ····PersistenceManager pm; |
7379 | ····[SetUp] |
7380 | ····public void Setup() |
7381 | ····{ |
7382 | ········pm = PmFactory.NewPersistenceManager(); |
7383 | ········ownVar = new CmpBi1nOthpconTblAutoLeft(); |
7384 | ········otherVar = new CmpBi1nOthpconTblAutoRightDerived(); |
7385 | ····} |
7386 | ····[TearDown] |
7387 | ····public void TearDown() |
7388 | ····{ |
7389 | ········try |
7390 | ········{ |
7391 | ············pm.UnloadCache(); |
7392 | ············var l = pm.Objects<CmpBi1nOthpconTblAutoLeft>().ResultTable; |
7393 | ············pm.Delete(l); |
7394 | ············pm.Save(); |
7395 | ············pm.UnloadCache(); |
7396 | ············decimal count; |
7397 | ············count = (decimal) new NDOQuery<CmpBi1nOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7398 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7399 | ············count = (decimal) new NDOQuery<CmpBi1nOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7400 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7401 | ········} |
7402 | ········catch (Exception) |
7403 | ········{ |
7404 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7405 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7406 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7407 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
7408 | ········} |
7409 | ····} |
7410 | ····[Test] |
7411 | ····public void TestSaveReload() |
7412 | ····{ |
7413 | ········CreateObjects(); |
7414 | ········QueryOwn(); |
7415 | Assert. NotNull( ownVar, "No Query Result") ; |
7416 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7417 | ····} |
7418 | ····[Test] |
7419 | ····public void TestSaveReloadNull() |
7420 | ····{ |
7421 | ········CreateObjects(); |
7422 | ········QueryOwn(); |
7423 | Assert. NotNull( ownVar, "No Query Result") ; |
7424 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7425 | ········ownVar.RelField = null; |
7426 | ········pm.Save(); |
7427 | ········pm.UnloadCache(); |
7428 | ········QueryOwn(); |
7429 | Assert. NotNull( ownVar, "No Query Result") ; |
7430 | Assert. Null( ownVar. RelField, "There should be no object") ; |
7431 | ····} |
7432 | ····[Test] |
7433 | ····public void TestChangeKeyHolderLeft() |
7434 | ····{ |
7435 | ········CreateObjects(); |
7436 | ········QueryOwn(); |
7437 | Assert. NotNull( ownVar, "No Query Result") ; |
7438 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7439 | ········int x = ownVar.RelField.Dummy; |
7440 | ········ownVar.Dummy = 4711; |
7441 | ········pm.Save(); |
7442 | ········pm.UnloadCache(); |
7443 | ········QueryOwn(); |
7444 | Assert. NotNull( ownVar, "No Query Result") ; |
7445 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7446 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7447 | ····} |
7448 | ····[Test] |
7449 | ····public void TestChangeKeyHolderLeftNoTouch() |
7450 | ····{ |
7451 | ········CreateObjects(); |
7452 | ········QueryOwn(); |
7453 | Assert. NotNull( ownVar, "No Query Result") ; |
7454 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7455 | ········ownVar.Dummy = 4711; |
7456 | ········pm.Save(); |
7457 | ········pm.UnloadCache(); |
7458 | ········QueryOwn(); |
7459 | Assert. NotNull( ownVar, "No Query Result") ; |
7460 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7461 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7462 | ····} |
7463 | ····[Test] |
7464 | ····public void TestRelationHash() |
7465 | ····{ |
7466 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconTblAutoLeft)); |
7467 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7468 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconTblAutoRightBase)); |
7469 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7470 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7471 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7472 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOthpconTblAutoRightDerived)); |
7473 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7474 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7475 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7476 | ····} |
7477 | ····void CreateObjects() |
7478 | ····{ |
7479 | ········pm.MakePersistent(ownVar); |
7480 | ········ownVar.AssignRelation(otherVar); |
7481 | ········pm.Save(); |
7482 | ········pm.UnloadCache(); |
7483 | ····} |
7484 | ····void QueryOwn() |
7485 | ····{ |
7486 | ········var q = new NDOQuery<CmpBi1nOthpconTblAutoLeft>(pm); |
7487 | ········ownVar = q.ExecuteSingle(); |
7488 | ····} |
7489 | ····void QueryOther() |
7490 | ····{ |
7491 | ········var q = new NDOQuery<CmpBi1nOthpconTblAutoRightBase>(pm); |
7492 | ········otherVar = q.ExecuteSingle(); |
7493 | ····} |
7494 | } |
7495 | |
7496 | |
7497 | [TestFixture] |
7498 | public class TestCmpBinnOthpconTblAuto |
7499 | { |
7500 | ····CmpBinnOthpconTblAutoLeft ownVar; |
7501 | ····CmpBinnOthpconTblAutoRightBase otherVar; |
7502 | ····PersistenceManager pm; |
7503 | ····[SetUp] |
7504 | ····public void Setup() |
7505 | ····{ |
7506 | ········pm = PmFactory.NewPersistenceManager(); |
7507 | ········ownVar = new CmpBinnOthpconTblAutoLeft(); |
7508 | ········otherVar = new CmpBinnOthpconTblAutoRightDerived(); |
7509 | ····} |
7510 | ····[TearDown] |
7511 | ····public void TearDown() |
7512 | ····{ |
7513 | ········try |
7514 | ········{ |
7515 | ············pm.UnloadCache(); |
7516 | ············var l = pm.Objects<CmpBinnOthpconTblAutoLeft>().ResultTable; |
7517 | ············pm.Delete(l); |
7518 | ············pm.Save(); |
7519 | ············pm.UnloadCache(); |
7520 | ············decimal count; |
7521 | ············count = (decimal) new NDOQuery<CmpBinnOthpconTblAutoLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7522 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7523 | ············count = (decimal) new NDOQuery<CmpBinnOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7524 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7525 | ········} |
7526 | ········catch (Exception) |
7527 | ········{ |
7528 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7529 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7530 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7531 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
7532 | ········} |
7533 | ····} |
7534 | ····[Test] |
7535 | ····public void TestSaveReload() |
7536 | ····{ |
7537 | ········CreateObjects(); |
7538 | ········QueryOwn(); |
7539 | Assert. NotNull( ownVar, "No Query Result") ; |
7540 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7541 | ····} |
7542 | ····[Test] |
7543 | ····public void TestSaveReloadNull() |
7544 | ····{ |
7545 | ········CreateObjects(); |
7546 | ········QueryOwn(); |
7547 | Assert. NotNull( ownVar, "No Query Result") ; |
7548 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7549 | ········ownVar.RelField = new List<CmpBinnOthpconTblAutoRightBase>(); |
7550 | ········pm.Save(); |
7551 | ········pm.UnloadCache(); |
7552 | ········QueryOwn(); |
7553 | Assert. NotNull( ownVar, "No Query Result") ; |
7554 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7555 | ····} |
7556 | ····[Test] |
7557 | ····public void TestSaveReloadRemove() |
7558 | ····{ |
7559 | ········CreateObjects(); |
7560 | ········QueryOwn(); |
7561 | Assert. NotNull( ownVar, "No Query Result") ; |
7562 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
7563 | ········ownVar.RemoveRelatedObject(); |
7564 | ········pm.Save(); |
7565 | ········pm.UnloadCache(); |
7566 | ········QueryOwn(); |
7567 | Assert. NotNull( ownVar, "No Query Result") ; |
7568 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
7569 | ····} |
7570 | ····[Test] |
7571 | ····public void TestRelationHash() |
7572 | ····{ |
7573 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBinnOthpconTblAutoLeft)); |
7574 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7575 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBinnOthpconTblAutoRightBase)); |
7576 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7577 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7578 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7579 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBinnOthpconTblAutoRightDerived)); |
7580 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7581 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7582 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7583 | ····} |
7584 | ····void CreateObjects() |
7585 | ····{ |
7586 | ········pm.MakePersistent(ownVar); |
7587 | ········ownVar.AssignRelation(otherVar); |
7588 | ········pm.Save(); |
7589 | ········pm.UnloadCache(); |
7590 | ····} |
7591 | ····void QueryOwn() |
7592 | ····{ |
7593 | ········var q = new NDOQuery<CmpBinnOthpconTblAutoLeft>(pm); |
7594 | ········ownVar = q.ExecuteSingle(); |
7595 | ····} |
7596 | ····void QueryOther() |
7597 | ····{ |
7598 | ········var q = new NDOQuery<CmpBinnOthpconTblAutoRightBase>(pm); |
7599 | ········otherVar = q.ExecuteSingle(); |
7600 | ····} |
7601 | } |
7602 | |
7603 | |
7604 | [TestFixture] |
7605 | public class TestAgrDir1OwnpconOthpconNoTblAuto |
7606 | { |
7607 | ····AgrDir1OwnpconOthpconNoTblAutoLeftBase ownVar; |
7608 | ····AgrDir1OwnpconOthpconNoTblAutoRightBase otherVar; |
7609 | ····PersistenceManager pm; |
7610 | ····[SetUp] |
7611 | ····public void Setup() |
7612 | ····{ |
7613 | ········pm = PmFactory.NewPersistenceManager(); |
7614 | ········ownVar = new AgrDir1OwnpconOthpconNoTblAutoLeftDerived(); |
7615 | ········otherVar = new AgrDir1OwnpconOthpconNoTblAutoRightDerived(); |
7616 | ····} |
7617 | ····[TearDown] |
7618 | ····public void TearDown() |
7619 | ····{ |
7620 | ········try |
7621 | ········{ |
7622 | ············pm.UnloadCache(); |
7623 | ············var l = pm.Objects<AgrDir1OwnpconOthpconNoTblAutoLeftBase>().ResultTable; |
7624 | ············pm.Delete(l); |
7625 | ············pm.Save(); |
7626 | ············pm.UnloadCache(); |
7627 | ············var m = pm.Objects<AgrDir1OwnpconOthpconNoTblAutoRightBase>().ResultTable; |
7628 | ············pm.Delete(m); |
7629 | ············pm.Save(); |
7630 | ············pm.UnloadCache(); |
7631 | ············decimal count; |
7632 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconOthpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7633 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7634 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7635 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7636 | ········} |
7637 | ········catch (Exception) |
7638 | ········{ |
7639 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7640 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7641 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7642 | ········} |
7643 | ····} |
7644 | ····[Test] |
7645 | ····public void TestSaveReload() |
7646 | ····{ |
7647 | ········CreateObjects(); |
7648 | ········QueryOwn(); |
7649 | Assert. NotNull( ownVar, "No Query Result") ; |
7650 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7651 | ····} |
7652 | ····[Test] |
7653 | ····public void TestSaveReloadNull() |
7654 | ····{ |
7655 | ········CreateObjects(); |
7656 | ········QueryOwn(); |
7657 | Assert. NotNull( ownVar, "No Query Result") ; |
7658 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7659 | ········ownVar.RelField = null; |
7660 | ········pm.Save(); |
7661 | ········pm.UnloadCache(); |
7662 | ········QueryOwn(); |
7663 | Assert. NotNull( ownVar, "No Query Result") ; |
7664 | Assert. Null( ownVar. RelField, "There should be no object") ; |
7665 | ····} |
7666 | ····[Test] |
7667 | ····public void TestChangeKeyHolderLeft() |
7668 | ····{ |
7669 | ········CreateObjects(); |
7670 | ········QueryOwn(); |
7671 | Assert. NotNull( ownVar, "No Query Result") ; |
7672 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7673 | ········int x = ownVar.RelField.Dummy; |
7674 | ········ownVar.Dummy = 4711; |
7675 | ········pm.Save(); |
7676 | ········pm.UnloadCache(); |
7677 | ········QueryOwn(); |
7678 | Assert. NotNull( ownVar, "No Query Result") ; |
7679 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7680 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7681 | ····} |
7682 | ····[Test] |
7683 | ····public void TestChangeKeyHolderLeftNoTouch() |
7684 | ····{ |
7685 | ········CreateObjects(); |
7686 | ········QueryOwn(); |
7687 | Assert. NotNull( ownVar, "No Query Result") ; |
7688 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7689 | ········ownVar.Dummy = 4711; |
7690 | ········pm.Save(); |
7691 | ········pm.UnloadCache(); |
7692 | ········QueryOwn(); |
7693 | Assert. NotNull( ownVar, "No Query Result") ; |
7694 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7695 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7696 | ····} |
7697 | ····[Test] |
7698 | ····public void TestUpdateOrder() |
7699 | ····{ |
7700 | ········NDO.Mapping.NDOMapping mapping = pm.NDOMapping; |
7701 | ········MethodInfo mi = mapping.GetType().GetMethod("GetUpdateOrder"); |
7702 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconOthpconNoTblAutoLeftBase)})) |
7703 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconOthpconNoTblAutoRightBase)})), "Wrong order #1"); |
7704 | ········Assert.That(((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconOthpconNoTblAutoLeftDerived)})) |
7705 | ················> ((int)mi.Invoke(mapping, new object[]{typeof(AgrDir1OwnpconOthpconNoTblAutoRightDerived)})), "Wrong order #2"); |
7706 | ········Debug.WriteLine("AgrDir1OwnpconOthpconNoTblAutoLeftBase"); |
7707 | ····} |
7708 | ····void CreateObjects() |
7709 | ····{ |
7710 | ········pm.MakePersistent(ownVar); |
7711 | ········pm.Save(); |
7712 | ········pm.MakePersistent(otherVar); |
7713 | ········pm.Save(); |
7714 | ········ownVar.AssignRelation(otherVar); |
7715 | ········pm.Save(); |
7716 | ········pm.UnloadCache(); |
7717 | ····} |
7718 | ····void QueryOwn() |
7719 | ····{ |
7720 | ········var q = new NDOQuery<AgrDir1OwnpconOthpconNoTblAutoLeftBase>(pm); |
7721 | ········ownVar = q.ExecuteSingle(); |
7722 | ····} |
7723 | ····void QueryOther() |
7724 | ····{ |
7725 | ········var q = new NDOQuery<AgrDir1OwnpconOthpconNoTblAutoRightBase>(pm); |
7726 | ········otherVar = q.ExecuteSingle(); |
7727 | ····} |
7728 | } |
7729 | |
7730 | |
7731 | [TestFixture] |
7732 | public class TestAgrDir1OwnpconOthpconTblAuto |
7733 | { |
7734 | ····AgrDir1OwnpconOthpconTblAutoLeftBase ownVar; |
7735 | ····AgrDir1OwnpconOthpconTblAutoRightBase otherVar; |
7736 | ····PersistenceManager pm; |
7737 | ····[SetUp] |
7738 | ····public void Setup() |
7739 | ····{ |
7740 | ········pm = PmFactory.NewPersistenceManager(); |
7741 | ········ownVar = new AgrDir1OwnpconOthpconTblAutoLeftDerived(); |
7742 | ········otherVar = new AgrDir1OwnpconOthpconTblAutoRightDerived(); |
7743 | ····} |
7744 | ····[TearDown] |
7745 | ····public void TearDown() |
7746 | ····{ |
7747 | ········try |
7748 | ········{ |
7749 | ············pm.UnloadCache(); |
7750 | ············var l = pm.Objects<AgrDir1OwnpconOthpconTblAutoLeftBase>().ResultTable; |
7751 | ············pm.Delete(l); |
7752 | ············pm.Save(); |
7753 | ············pm.UnloadCache(); |
7754 | ············var m = pm.Objects<AgrDir1OwnpconOthpconTblAutoRightBase>().ResultTable; |
7755 | ············pm.Delete(m); |
7756 | ············pm.Save(); |
7757 | ············pm.UnloadCache(); |
7758 | ············decimal count; |
7759 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7760 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7761 | ············count = (decimal) new NDOQuery<AgrDir1OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7762 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7763 | ········} |
7764 | ········catch (Exception) |
7765 | ········{ |
7766 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7767 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7768 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7769 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
7770 | ········} |
7771 | ····} |
7772 | ····[Test] |
7773 | ····public void TestSaveReload() |
7774 | ····{ |
7775 | ········CreateObjects(); |
7776 | ········QueryOwn(); |
7777 | Assert. NotNull( ownVar, "No Query Result") ; |
7778 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7779 | ····} |
7780 | ····[Test] |
7781 | ····public void TestSaveReloadNull() |
7782 | ····{ |
7783 | ········CreateObjects(); |
7784 | ········QueryOwn(); |
7785 | Assert. NotNull( ownVar, "No Query Result") ; |
7786 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7787 | ········ownVar.RelField = null; |
7788 | ········pm.Save(); |
7789 | ········pm.UnloadCache(); |
7790 | ········QueryOwn(); |
7791 | Assert. NotNull( ownVar, "No Query Result") ; |
7792 | Assert. Null( ownVar. RelField, "There should be no object") ; |
7793 | ····} |
7794 | ····[Test] |
7795 | ····public void TestChangeKeyHolderLeft() |
7796 | ····{ |
7797 | ········CreateObjects(); |
7798 | ········QueryOwn(); |
7799 | Assert. NotNull( ownVar, "No Query Result") ; |
7800 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7801 | ········int x = ownVar.RelField.Dummy; |
7802 | ········ownVar.Dummy = 4711; |
7803 | ········pm.Save(); |
7804 | ········pm.UnloadCache(); |
7805 | ········QueryOwn(); |
7806 | Assert. NotNull( ownVar, "No Query Result") ; |
7807 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7808 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7809 | ····} |
7810 | ····[Test] |
7811 | ····public void TestChangeKeyHolderLeftNoTouch() |
7812 | ····{ |
7813 | ········CreateObjects(); |
7814 | ········QueryOwn(); |
7815 | Assert. NotNull( ownVar, "No Query Result") ; |
7816 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7817 | ········ownVar.Dummy = 4711; |
7818 | ········pm.Save(); |
7819 | ········pm.UnloadCache(); |
7820 | ········QueryOwn(); |
7821 | Assert. NotNull( ownVar, "No Query Result") ; |
7822 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7823 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7824 | ····} |
7825 | ····void CreateObjects() |
7826 | ····{ |
7827 | ········pm.MakePersistent(ownVar); |
7828 | ········pm.MakePersistent(otherVar); |
7829 | ········ownVar.AssignRelation(otherVar); |
7830 | ········pm.Save(); |
7831 | ········pm.UnloadCache(); |
7832 | ····} |
7833 | ····void QueryOwn() |
7834 | ····{ |
7835 | ········var q = new NDOQuery<AgrDir1OwnpconOthpconTblAutoLeftBase>(pm); |
7836 | ········ownVar = q.ExecuteSingle(); |
7837 | ····} |
7838 | ····void QueryOther() |
7839 | ····{ |
7840 | ········var q = new NDOQuery<AgrDir1OwnpconOthpconTblAutoRightBase>(pm); |
7841 | ········otherVar = q.ExecuteSingle(); |
7842 | ····} |
7843 | } |
7844 | |
7845 | |
7846 | [TestFixture] |
7847 | public class TestAgrBi11OwnpconOthpconNoTblAuto |
7848 | { |
7849 | ····AgrBi11OwnpconOthpconNoTblAutoLeftBase ownVar; |
7850 | ····AgrBi11OwnpconOthpconNoTblAutoRightBase otherVar; |
7851 | ····PersistenceManager pm; |
7852 | ····[SetUp] |
7853 | ····public void Setup() |
7854 | ····{ |
7855 | ········pm = PmFactory.NewPersistenceManager(); |
7856 | ········ownVar = new AgrBi11OwnpconOthpconNoTblAutoLeftDerived(); |
7857 | ········otherVar = new AgrBi11OwnpconOthpconNoTblAutoRightDerived(); |
7858 | ····} |
7859 | ····[TearDown] |
7860 | ····public void TearDown() |
7861 | ····{ |
7862 | ········try |
7863 | ········{ |
7864 | ············pm.UnloadCache(); |
7865 | ············var l = pm.Objects<AgrBi11OwnpconOthpconNoTblAutoLeftBase>().ResultTable; |
7866 | ············pm.Delete(l); |
7867 | ············pm.Save(); |
7868 | ············pm.UnloadCache(); |
7869 | ············var m = pm.Objects<AgrBi11OwnpconOthpconNoTblAutoRightBase>().ResultTable; |
7870 | ············pm.Delete(m); |
7871 | ············pm.Save(); |
7872 | ············pm.UnloadCache(); |
7873 | ············decimal count; |
7874 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconOthpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7875 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
7876 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
7877 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
7878 | ········} |
7879 | ········catch (Exception) |
7880 | ········{ |
7881 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
7882 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
7883 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
7884 | ········} |
7885 | ····} |
7886 | ····[Test] |
7887 | ····public void TestSaveReload() |
7888 | ····{ |
7889 | ········CreateObjects(); |
7890 | ········QueryOwn(); |
7891 | Assert. NotNull( ownVar, "No Query Result") ; |
7892 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7893 | ····} |
7894 | ····[Test] |
7895 | ····public void TestSaveReloadNull() |
7896 | ····{ |
7897 | ········CreateObjects(); |
7898 | ········QueryOwn(); |
7899 | Assert. NotNull( ownVar, "No Query Result") ; |
7900 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7901 | ········ownVar.RelField = null; |
7902 | ········pm.Save(); |
7903 | ········pm.UnloadCache(); |
7904 | ········QueryOwn(); |
7905 | Assert. NotNull( ownVar, "No Query Result") ; |
7906 | Assert. Null( ownVar. RelField, "There should be no object") ; |
7907 | ····} |
7908 | ····[Test] |
7909 | ····public void TestChangeKeyHolderLeft() |
7910 | ····{ |
7911 | ········CreateObjects(); |
7912 | ········QueryOwn(); |
7913 | Assert. NotNull( ownVar, "No Query Result") ; |
7914 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7915 | ········int x = ownVar.RelField.Dummy; |
7916 | ········ownVar.Dummy = 4711; |
7917 | ········pm.Save(); |
7918 | ········pm.UnloadCache(); |
7919 | ········QueryOwn(); |
7920 | Assert. NotNull( ownVar, "No Query Result") ; |
7921 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7922 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7923 | ····} |
7924 | ····[Test] |
7925 | ····public void TestChangeKeyHolderRight() |
7926 | ····{ |
7927 | ········CreateObjects(); |
7928 | ········QueryOther(); |
7929 | Assert. NotNull( otherVar, "No Query Result") ; |
7930 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7931 | ········int x = otherVar.RelField.Dummy; |
7932 | ········otherVar.Dummy = 4711; |
7933 | ········pm.Save(); |
7934 | ········pm.UnloadCache(); |
7935 | ········QueryOther(); |
7936 | Assert. NotNull( otherVar, "No Query Result") ; |
7937 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
7938 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7939 | ····} |
7940 | ····[Test] |
7941 | ····public void TestChangeKeyHolderLeftNoTouch() |
7942 | ····{ |
7943 | ········CreateObjects(); |
7944 | ········QueryOwn(); |
7945 | Assert. NotNull( ownVar, "No Query Result") ; |
7946 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7947 | ········ownVar.Dummy = 4711; |
7948 | ········pm.Save(); |
7949 | ········pm.UnloadCache(); |
7950 | ········QueryOwn(); |
7951 | Assert. NotNull( ownVar, "No Query Result") ; |
7952 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
7953 | Assert. NotNull( ownVar. RelField, "No related object") ; |
7954 | ····} |
7955 | ····[Test] |
7956 | ····public void TestChangeKeyHolderRightNoTouch() |
7957 | ····{ |
7958 | ········CreateObjects(); |
7959 | ········QueryOther(); |
7960 | Assert. NotNull( otherVar, "No Query Result") ; |
7961 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7962 | ········otherVar.Dummy = 4711; |
7963 | ········pm.Save(); |
7964 | ········pm.UnloadCache(); |
7965 | ········QueryOther(); |
7966 | Assert. NotNull( otherVar, "No Query Result") ; |
7967 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
7968 | Assert. NotNull( otherVar. RelField, "No related object") ; |
7969 | ····} |
7970 | ····[Test] |
7971 | ····public void TestRelationHash() |
7972 | ····{ |
7973 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconNoTblAutoLeftBase)); |
7974 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
7975 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconNoTblAutoRightBase)); |
7976 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
7977 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
7978 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
7979 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconNoTblAutoLeftDerived)); |
7980 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
7981 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
7982 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
7983 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconNoTblAutoRightDerived)); |
7984 | ········Relation relderRight = clderRight.FindRelation("relField"); |
7985 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
7986 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
7987 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
7988 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
7989 | ····} |
7990 | ····void CreateObjects() |
7991 | ····{ |
7992 | ········pm.MakePersistent(ownVar); |
7993 | ········pm.Save(); |
7994 | ········pm.MakePersistent(otherVar); |
7995 | ········pm.Save(); |
7996 | ········pm.Save(); |
7997 | ········ownVar.AssignRelation(otherVar); |
7998 | ········pm.Save(); |
7999 | ········pm.UnloadCache(); |
8000 | ····} |
8001 | ····void QueryOwn() |
8002 | ····{ |
8003 | ········var q = new NDOQuery<AgrBi11OwnpconOthpconNoTblAutoLeftBase>(pm); |
8004 | ········ownVar = q.ExecuteSingle(); |
8005 | ····} |
8006 | ····void QueryOther() |
8007 | ····{ |
8008 | ········var q = new NDOQuery<AgrBi11OwnpconOthpconNoTblAutoRightBase>(pm); |
8009 | ········otherVar = q.ExecuteSingle(); |
8010 | ····} |
8011 | } |
8012 | |
8013 | |
8014 | [TestFixture] |
8015 | public class TestAgrBi11OwnpconOthpconTblAuto |
8016 | { |
8017 | ····AgrBi11OwnpconOthpconTblAutoLeftBase ownVar; |
8018 | ····AgrBi11OwnpconOthpconTblAutoRightBase otherVar; |
8019 | ····PersistenceManager pm; |
8020 | ····[SetUp] |
8021 | ····public void Setup() |
8022 | ····{ |
8023 | ········pm = PmFactory.NewPersistenceManager(); |
8024 | ········ownVar = new AgrBi11OwnpconOthpconTblAutoLeftDerived(); |
8025 | ········otherVar = new AgrBi11OwnpconOthpconTblAutoRightDerived(); |
8026 | ····} |
8027 | ····[TearDown] |
8028 | ····public void TearDown() |
8029 | ····{ |
8030 | ········try |
8031 | ········{ |
8032 | ············pm.UnloadCache(); |
8033 | ············var l = pm.Objects<AgrBi11OwnpconOthpconTblAutoLeftBase>().ResultTable; |
8034 | ············pm.Delete(l); |
8035 | ············pm.Save(); |
8036 | ············pm.UnloadCache(); |
8037 | ············var m = pm.Objects<AgrBi11OwnpconOthpconTblAutoRightBase>().ResultTable; |
8038 | ············pm.Delete(m); |
8039 | ············pm.Save(); |
8040 | ············pm.UnloadCache(); |
8041 | ············decimal count; |
8042 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8043 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8044 | ············count = (decimal) new NDOQuery<AgrBi11OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8045 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8046 | ········} |
8047 | ········catch (Exception) |
8048 | ········{ |
8049 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8050 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8051 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8052 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8053 | ········} |
8054 | ····} |
8055 | ····[Test] |
8056 | ····public void TestSaveReload() |
8057 | ····{ |
8058 | ········CreateObjects(); |
8059 | ········QueryOwn(); |
8060 | Assert. NotNull( ownVar, "No Query Result") ; |
8061 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8062 | ····} |
8063 | ····[Test] |
8064 | ····public void TestSaveReloadNull() |
8065 | ····{ |
8066 | ········CreateObjects(); |
8067 | ········QueryOwn(); |
8068 | Assert. NotNull( ownVar, "No Query Result") ; |
8069 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8070 | ········ownVar.RelField = null; |
8071 | ········pm.Save(); |
8072 | ········pm.UnloadCache(); |
8073 | ········QueryOwn(); |
8074 | Assert. NotNull( ownVar, "No Query Result") ; |
8075 | Assert. Null( ownVar. RelField, "There should be no object") ; |
8076 | ····} |
8077 | ····[Test] |
8078 | ····public void TestChangeKeyHolderLeft() |
8079 | ····{ |
8080 | ········CreateObjects(); |
8081 | ········QueryOwn(); |
8082 | Assert. NotNull( ownVar, "No Query Result") ; |
8083 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8084 | ········int x = ownVar.RelField.Dummy; |
8085 | ········ownVar.Dummy = 4711; |
8086 | ········pm.Save(); |
8087 | ········pm.UnloadCache(); |
8088 | ········QueryOwn(); |
8089 | Assert. NotNull( ownVar, "No Query Result") ; |
8090 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8091 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8092 | ····} |
8093 | ····[Test] |
8094 | ····public void TestChangeKeyHolderRight() |
8095 | ····{ |
8096 | ········CreateObjects(); |
8097 | ········QueryOther(); |
8098 | Assert. NotNull( otherVar, "No Query Result") ; |
8099 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8100 | ········int x = otherVar.RelField.Dummy; |
8101 | ········otherVar.Dummy = 4711; |
8102 | ········pm.Save(); |
8103 | ········pm.UnloadCache(); |
8104 | ········QueryOther(); |
8105 | Assert. NotNull( otherVar, "No Query Result") ; |
8106 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
8107 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8108 | ····} |
8109 | ····[Test] |
8110 | ····public void TestChangeKeyHolderLeftNoTouch() |
8111 | ····{ |
8112 | ········CreateObjects(); |
8113 | ········QueryOwn(); |
8114 | Assert. NotNull( ownVar, "No Query Result") ; |
8115 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8116 | ········ownVar.Dummy = 4711; |
8117 | ········pm.Save(); |
8118 | ········pm.UnloadCache(); |
8119 | ········QueryOwn(); |
8120 | Assert. NotNull( ownVar, "No Query Result") ; |
8121 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8122 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8123 | ····} |
8124 | ····[Test] |
8125 | ····public void TestChangeKeyHolderRightNoTouch() |
8126 | ····{ |
8127 | ········CreateObjects(); |
8128 | ········QueryOther(); |
8129 | Assert. NotNull( otherVar, "No Query Result") ; |
8130 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8131 | ········otherVar.Dummy = 4711; |
8132 | ········pm.Save(); |
8133 | ········pm.UnloadCache(); |
8134 | ········QueryOther(); |
8135 | Assert. NotNull( otherVar, "No Query Result") ; |
8136 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
8137 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8138 | ····} |
8139 | ····[Test] |
8140 | ····public void TestRelationHash() |
8141 | ····{ |
8142 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconTblAutoLeftBase)); |
8143 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
8144 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconTblAutoRightBase)); |
8145 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
8146 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
8147 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
8148 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconTblAutoLeftDerived)); |
8149 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
8150 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
8151 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
8152 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi11OwnpconOthpconTblAutoRightDerived)); |
8153 | ········Relation relderRight = clderRight.FindRelation("relField"); |
8154 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
8155 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
8156 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
8157 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
8158 | ····} |
8159 | ····void CreateObjects() |
8160 | ····{ |
8161 | ········pm.MakePersistent(ownVar); |
8162 | ········pm.MakePersistent(otherVar); |
8163 | ········pm.Save(); |
8164 | ········ownVar.AssignRelation(otherVar); |
8165 | ········pm.Save(); |
8166 | ········pm.UnloadCache(); |
8167 | ····} |
8168 | ····void QueryOwn() |
8169 | ····{ |
8170 | ········var q = new NDOQuery<AgrBi11OwnpconOthpconTblAutoLeftBase>(pm); |
8171 | ········ownVar = q.ExecuteSingle(); |
8172 | ····} |
8173 | ····void QueryOther() |
8174 | ····{ |
8175 | ········var q = new NDOQuery<AgrBi11OwnpconOthpconTblAutoRightBase>(pm); |
8176 | ········otherVar = q.ExecuteSingle(); |
8177 | ····} |
8178 | } |
8179 | |
8180 | |
8181 | [TestFixture] |
8182 | public class TestAgrDirnOwnpconOthpconTblAuto |
8183 | { |
8184 | ····AgrDirnOwnpconOthpconTblAutoLeftBase ownVar; |
8185 | ····AgrDirnOwnpconOthpconTblAutoRightBase otherVar; |
8186 | ····PersistenceManager pm; |
8187 | ····[SetUp] |
8188 | ····public void Setup() |
8189 | ····{ |
8190 | ········pm = PmFactory.NewPersistenceManager(); |
8191 | ········ownVar = new AgrDirnOwnpconOthpconTblAutoLeftDerived(); |
8192 | ········otherVar = new AgrDirnOwnpconOthpconTblAutoRightDerived(); |
8193 | ····} |
8194 | ····[TearDown] |
8195 | ····public void TearDown() |
8196 | ····{ |
8197 | ········try |
8198 | ········{ |
8199 | ············pm.UnloadCache(); |
8200 | ············var l = pm.Objects<AgrDirnOwnpconOthpconTblAutoLeftBase>().ResultTable; |
8201 | ············pm.Delete(l); |
8202 | ············pm.Save(); |
8203 | ············pm.UnloadCache(); |
8204 | ············var m = pm.Objects<AgrDirnOwnpconOthpconTblAutoRightBase>().ResultTable; |
8205 | ············pm.Delete(m); |
8206 | ············pm.Save(); |
8207 | ············pm.UnloadCache(); |
8208 | ············decimal count; |
8209 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8210 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8211 | ············count = (decimal) new NDOQuery<AgrDirnOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8212 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8213 | ········} |
8214 | ········catch (Exception) |
8215 | ········{ |
8216 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8217 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8218 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8219 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8220 | ········} |
8221 | ····} |
8222 | ····[Test] |
8223 | ····public void TestSaveReload() |
8224 | ····{ |
8225 | ········CreateObjects(); |
8226 | ········QueryOwn(); |
8227 | Assert. NotNull( ownVar, "No Query Result") ; |
8228 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8229 | ····} |
8230 | ····[Test] |
8231 | ····public void TestSaveReloadNull() |
8232 | ····{ |
8233 | ········CreateObjects(); |
8234 | ········QueryOwn(); |
8235 | Assert. NotNull( ownVar, "No Query Result") ; |
8236 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8237 | ········ownVar.RelField = new List<AgrDirnOwnpconOthpconTblAutoRightBase>(); |
8238 | ········pm.Save(); |
8239 | ········pm.UnloadCache(); |
8240 | ········QueryOwn(); |
8241 | Assert. NotNull( ownVar, "No Query Result") ; |
8242 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8243 | ····} |
8244 | ····[Test] |
8245 | ····public void TestSaveReloadRemove() |
8246 | ····{ |
8247 | ········CreateObjects(); |
8248 | ········QueryOwn(); |
8249 | Assert. NotNull( ownVar, "No Query Result") ; |
8250 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8251 | ········ownVar.RemoveRelatedObject(); |
8252 | ········pm.Save(); |
8253 | ········pm.UnloadCache(); |
8254 | ········QueryOwn(); |
8255 | Assert. NotNull( ownVar, "No Query Result") ; |
8256 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8257 | ····} |
8258 | ····void CreateObjects() |
8259 | ····{ |
8260 | ········pm.MakePersistent(ownVar); |
8261 | ········pm.MakePersistent(otherVar); |
8262 | ········ownVar.AssignRelation(otherVar); |
8263 | ········pm.Save(); |
8264 | ········pm.UnloadCache(); |
8265 | ····} |
8266 | ····void QueryOwn() |
8267 | ····{ |
8268 | ········var q = new NDOQuery<AgrDirnOwnpconOthpconTblAutoLeftBase>(pm); |
8269 | ········ownVar = q.ExecuteSingle(); |
8270 | ····} |
8271 | ····void QueryOther() |
8272 | ····{ |
8273 | ········var q = new NDOQuery<AgrDirnOwnpconOthpconTblAutoRightBase>(pm); |
8274 | ········otherVar = q.ExecuteSingle(); |
8275 | ····} |
8276 | } |
8277 | |
8278 | |
8279 | [TestFixture] |
8280 | public class TestAgrBin1OwnpconOthpconTblAuto |
8281 | { |
8282 | ····AgrBin1OwnpconOthpconTblAutoLeftBase ownVar; |
8283 | ····AgrBin1OwnpconOthpconTblAutoRightBase otherVar; |
8284 | ····PersistenceManager pm; |
8285 | ····[SetUp] |
8286 | ····public void Setup() |
8287 | ····{ |
8288 | ········pm = PmFactory.NewPersistenceManager(); |
8289 | ········ownVar = new AgrBin1OwnpconOthpconTblAutoLeftDerived(); |
8290 | ········otherVar = new AgrBin1OwnpconOthpconTblAutoRightDerived(); |
8291 | ····} |
8292 | ····[TearDown] |
8293 | ····public void TearDown() |
8294 | ····{ |
8295 | ········try |
8296 | ········{ |
8297 | ············pm.UnloadCache(); |
8298 | ············var l = pm.Objects<AgrBin1OwnpconOthpconTblAutoLeftBase>().ResultTable; |
8299 | ············pm.Delete(l); |
8300 | ············pm.Save(); |
8301 | ············pm.UnloadCache(); |
8302 | ············var m = pm.Objects<AgrBin1OwnpconOthpconTblAutoRightBase>().ResultTable; |
8303 | ············pm.Delete(m); |
8304 | ············pm.Save(); |
8305 | ············pm.UnloadCache(); |
8306 | ············decimal count; |
8307 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8308 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8309 | ············count = (decimal) new NDOQuery<AgrBin1OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8310 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8311 | ········} |
8312 | ········catch (Exception) |
8313 | ········{ |
8314 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8315 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8316 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8317 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8318 | ········} |
8319 | ····} |
8320 | ····[Test] |
8321 | ····public void TestSaveReload() |
8322 | ····{ |
8323 | ········CreateObjects(); |
8324 | ········QueryOwn(); |
8325 | Assert. NotNull( ownVar, "No Query Result") ; |
8326 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8327 | ····} |
8328 | ····[Test] |
8329 | ····public void TestSaveReloadNull() |
8330 | ····{ |
8331 | ········CreateObjects(); |
8332 | ········QueryOwn(); |
8333 | Assert. NotNull( ownVar, "No Query Result") ; |
8334 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8335 | ········ownVar.RelField = new List<AgrBin1OwnpconOthpconTblAutoRightBase>(); |
8336 | ········pm.Save(); |
8337 | ········pm.UnloadCache(); |
8338 | ········QueryOwn(); |
8339 | Assert. NotNull( ownVar, "No Query Result") ; |
8340 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8341 | ····} |
8342 | ····[Test] |
8343 | ····public void TestSaveReloadRemove() |
8344 | ····{ |
8345 | ········CreateObjects(); |
8346 | ········QueryOwn(); |
8347 | Assert. NotNull( ownVar, "No Query Result") ; |
8348 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8349 | ········ownVar.RemoveRelatedObject(); |
8350 | ········pm.Save(); |
8351 | ········pm.UnloadCache(); |
8352 | ········QueryOwn(); |
8353 | Assert. NotNull( ownVar, "No Query Result") ; |
8354 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8355 | ····} |
8356 | ····[Test] |
8357 | ····public void TestChangeKeyHolderRight() |
8358 | ····{ |
8359 | ········CreateObjects(); |
8360 | ········QueryOther(); |
8361 | Assert. NotNull( otherVar, "No Query Result") ; |
8362 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8363 | ········int x = otherVar.RelField.Dummy; |
8364 | ········otherVar.Dummy = 4711; |
8365 | ········pm.Save(); |
8366 | ········pm.UnloadCache(); |
8367 | ········QueryOther(); |
8368 | Assert. NotNull( otherVar, "No Query Result") ; |
8369 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
8370 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8371 | ····} |
8372 | ····[Test] |
8373 | ····public void TestChangeKeyHolderRightNoTouch() |
8374 | ····{ |
8375 | ········CreateObjects(); |
8376 | ········QueryOther(); |
8377 | Assert. NotNull( otherVar, "No Query Result") ; |
8378 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8379 | ········otherVar.Dummy = 4711; |
8380 | ········pm.Save(); |
8381 | ········pm.UnloadCache(); |
8382 | ········QueryOther(); |
8383 | Assert. NotNull( otherVar, "No Query Result") ; |
8384 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
8385 | Assert. NotNull( otherVar. RelField, "No related object") ; |
8386 | ····} |
8387 | ····[Test] |
8388 | ····public void TestRelationHash() |
8389 | ····{ |
8390 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconOthpconTblAutoLeftBase)); |
8391 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
8392 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconOthpconTblAutoRightBase)); |
8393 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
8394 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
8395 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
8396 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconOthpconTblAutoLeftDerived)); |
8397 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
8398 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
8399 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
8400 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBin1OwnpconOthpconTblAutoRightDerived)); |
8401 | ········Relation relderRight = clderRight.FindRelation("relField"); |
8402 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
8403 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
8404 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
8405 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
8406 | ····} |
8407 | ····void CreateObjects() |
8408 | ····{ |
8409 | ········pm.MakePersistent(ownVar); |
8410 | ········pm.MakePersistent(otherVar); |
8411 | ········pm.Save(); |
8412 | ········ownVar.AssignRelation(otherVar); |
8413 | ········pm.Save(); |
8414 | ········pm.UnloadCache(); |
8415 | ····} |
8416 | ····void QueryOwn() |
8417 | ····{ |
8418 | ········var q = new NDOQuery<AgrBin1OwnpconOthpconTblAutoLeftBase>(pm); |
8419 | ········ownVar = q.ExecuteSingle(); |
8420 | ····} |
8421 | ····void QueryOther() |
8422 | ····{ |
8423 | ········var q = new NDOQuery<AgrBin1OwnpconOthpconTblAutoRightBase>(pm); |
8424 | ········otherVar = q.ExecuteSingle(); |
8425 | ····} |
8426 | } |
8427 | |
8428 | |
8429 | [TestFixture] |
8430 | public class TestAgrBi1nOwnpconOthpconTblAuto |
8431 | { |
8432 | ····AgrBi1nOwnpconOthpconTblAutoLeftBase ownVar; |
8433 | ····AgrBi1nOwnpconOthpconTblAutoRightBase otherVar; |
8434 | ····PersistenceManager pm; |
8435 | ····[SetUp] |
8436 | ····public void Setup() |
8437 | ····{ |
8438 | ········pm = PmFactory.NewPersistenceManager(); |
8439 | ········ownVar = new AgrBi1nOwnpconOthpconTblAutoLeftDerived(); |
8440 | ········otherVar = new AgrBi1nOwnpconOthpconTblAutoRightDerived(); |
8441 | ····} |
8442 | ····[TearDown] |
8443 | ····public void TearDown() |
8444 | ····{ |
8445 | ········try |
8446 | ········{ |
8447 | ············pm.UnloadCache(); |
8448 | ············var l = pm.Objects<AgrBi1nOwnpconOthpconTblAutoLeftBase>().ResultTable; |
8449 | ············pm.Delete(l); |
8450 | ············pm.Save(); |
8451 | ············pm.UnloadCache(); |
8452 | ············var m = pm.Objects<AgrBi1nOwnpconOthpconTblAutoRightBase>().ResultTable; |
8453 | ············pm.Delete(m); |
8454 | ············pm.Save(); |
8455 | ············pm.UnloadCache(); |
8456 | ············decimal count; |
8457 | ············count = (decimal) new NDOQuery<AgrBi1nOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8458 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8459 | ············count = (decimal) new NDOQuery<AgrBi1nOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8460 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8461 | ········} |
8462 | ········catch (Exception) |
8463 | ········{ |
8464 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8465 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8466 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8467 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8468 | ········} |
8469 | ····} |
8470 | ····[Test] |
8471 | ····public void TestSaveReload() |
8472 | ····{ |
8473 | ········CreateObjects(); |
8474 | ········QueryOwn(); |
8475 | Assert. NotNull( ownVar, "No Query Result") ; |
8476 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8477 | ····} |
8478 | ····[Test] |
8479 | ····public void TestSaveReloadNull() |
8480 | ····{ |
8481 | ········CreateObjects(); |
8482 | ········QueryOwn(); |
8483 | Assert. NotNull( ownVar, "No Query Result") ; |
8484 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8485 | ········ownVar.RelField = null; |
8486 | ········pm.Save(); |
8487 | ········pm.UnloadCache(); |
8488 | ········QueryOwn(); |
8489 | Assert. NotNull( ownVar, "No Query Result") ; |
8490 | Assert. Null( ownVar. RelField, "There should be no object") ; |
8491 | ····} |
8492 | ····[Test] |
8493 | ····public void TestChangeKeyHolderLeft() |
8494 | ····{ |
8495 | ········CreateObjects(); |
8496 | ········QueryOwn(); |
8497 | Assert. NotNull( ownVar, "No Query Result") ; |
8498 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8499 | ········int x = ownVar.RelField.Dummy; |
8500 | ········ownVar.Dummy = 4711; |
8501 | ········pm.Save(); |
8502 | ········pm.UnloadCache(); |
8503 | ········QueryOwn(); |
8504 | Assert. NotNull( ownVar, "No Query Result") ; |
8505 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8506 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8507 | ····} |
8508 | ····[Test] |
8509 | ····public void TestChangeKeyHolderLeftNoTouch() |
8510 | ····{ |
8511 | ········CreateObjects(); |
8512 | ········QueryOwn(); |
8513 | Assert. NotNull( ownVar, "No Query Result") ; |
8514 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8515 | ········ownVar.Dummy = 4711; |
8516 | ········pm.Save(); |
8517 | ········pm.UnloadCache(); |
8518 | ········QueryOwn(); |
8519 | Assert. NotNull( ownVar, "No Query Result") ; |
8520 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8521 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8522 | ····} |
8523 | ····[Test] |
8524 | ····public void TestRelationHash() |
8525 | ····{ |
8526 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconOthpconTblAutoLeftBase)); |
8527 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
8528 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconOthpconTblAutoRightBase)); |
8529 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
8530 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
8531 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
8532 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconOthpconTblAutoLeftDerived)); |
8533 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
8534 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
8535 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
8536 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBi1nOwnpconOthpconTblAutoRightDerived)); |
8537 | ········Relation relderRight = clderRight.FindRelation("relField"); |
8538 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
8539 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
8540 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
8541 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
8542 | ····} |
8543 | ····void CreateObjects() |
8544 | ····{ |
8545 | ········pm.MakePersistent(ownVar); |
8546 | ········pm.MakePersistent(otherVar); |
8547 | ········ownVar.AssignRelation(otherVar); |
8548 | ········pm.Save(); |
8549 | ········pm.UnloadCache(); |
8550 | ····} |
8551 | ····void QueryOwn() |
8552 | ····{ |
8553 | ········var q = new NDOQuery<AgrBi1nOwnpconOthpconTblAutoLeftBase>(pm); |
8554 | ········ownVar = q.ExecuteSingle(); |
8555 | ····} |
8556 | ····void QueryOther() |
8557 | ····{ |
8558 | ········var q = new NDOQuery<AgrBi1nOwnpconOthpconTblAutoRightBase>(pm); |
8559 | ········otherVar = q.ExecuteSingle(); |
8560 | ····} |
8561 | } |
8562 | |
8563 | |
8564 | [TestFixture] |
8565 | public class TestAgrBinnOwnpconOthpconTblAuto |
8566 | { |
8567 | ····AgrBinnOwnpconOthpconTblAutoLeftBase ownVar; |
8568 | ····AgrBinnOwnpconOthpconTblAutoRightBase otherVar; |
8569 | ····PersistenceManager pm; |
8570 | ····[SetUp] |
8571 | ····public void Setup() |
8572 | ····{ |
8573 | ········pm = PmFactory.NewPersistenceManager(); |
8574 | ········ownVar = new AgrBinnOwnpconOthpconTblAutoLeftDerived(); |
8575 | ········otherVar = new AgrBinnOwnpconOthpconTblAutoRightDerived(); |
8576 | ····} |
8577 | ····[TearDown] |
8578 | ····public void TearDown() |
8579 | ····{ |
8580 | ········try |
8581 | ········{ |
8582 | ············pm.UnloadCache(); |
8583 | ············var l = pm.Objects<AgrBinnOwnpconOthpconTblAutoLeftBase>().ResultTable; |
8584 | ············pm.Delete(l); |
8585 | ············pm.Save(); |
8586 | ············pm.UnloadCache(); |
8587 | ············var m = pm.Objects<AgrBinnOwnpconOthpconTblAutoRightBase>().ResultTable; |
8588 | ············pm.Delete(m); |
8589 | ············pm.Save(); |
8590 | ············pm.UnloadCache(); |
8591 | ············decimal count; |
8592 | ············count = (decimal) new NDOQuery<AgrBinnOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8593 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8594 | ············count = (decimal) new NDOQuery<AgrBinnOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8595 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8596 | ········} |
8597 | ········catch (Exception) |
8598 | ········{ |
8599 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8600 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8601 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8602 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8603 | ········} |
8604 | ····} |
8605 | ····[Test] |
8606 | ····public void TestSaveReload() |
8607 | ····{ |
8608 | ········CreateObjects(); |
8609 | ········QueryOwn(); |
8610 | Assert. NotNull( ownVar, "No Query Result") ; |
8611 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8612 | ····} |
8613 | ····[Test] |
8614 | ····public void TestSaveReloadNull() |
8615 | ····{ |
8616 | ········CreateObjects(); |
8617 | ········QueryOwn(); |
8618 | Assert. NotNull( ownVar, "No Query Result") ; |
8619 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8620 | ········ownVar.RelField = new List<AgrBinnOwnpconOthpconTblAutoRightBase>(); |
8621 | ········pm.Save(); |
8622 | ········pm.UnloadCache(); |
8623 | ········QueryOwn(); |
8624 | Assert. NotNull( ownVar, "No Query Result") ; |
8625 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8626 | ····} |
8627 | ····[Test] |
8628 | ····public void TestSaveReloadRemove() |
8629 | ····{ |
8630 | ········CreateObjects(); |
8631 | ········QueryOwn(); |
8632 | Assert. NotNull( ownVar, "No Query Result") ; |
8633 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
8634 | ········ownVar.RemoveRelatedObject(); |
8635 | ········pm.Save(); |
8636 | ········pm.UnloadCache(); |
8637 | ········QueryOwn(); |
8638 | Assert. NotNull( ownVar, "No Query Result") ; |
8639 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
8640 | ····} |
8641 | ····[Test] |
8642 | ····public void TestRelationHash() |
8643 | ····{ |
8644 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconOthpconTblAutoLeftBase)); |
8645 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
8646 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconOthpconTblAutoRightBase)); |
8647 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
8648 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
8649 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
8650 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconOthpconTblAutoLeftDerived)); |
8651 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
8652 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
8653 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
8654 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(AgrBinnOwnpconOthpconTblAutoRightDerived)); |
8655 | ········Relation relderRight = clderRight.FindRelation("relField"); |
8656 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
8657 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
8658 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
8659 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
8660 | ····} |
8661 | ····void CreateObjects() |
8662 | ····{ |
8663 | ········pm.MakePersistent(ownVar); |
8664 | ········pm.MakePersistent(otherVar); |
8665 | ········ownVar.AssignRelation(otherVar); |
8666 | ········pm.Save(); |
8667 | ········pm.UnloadCache(); |
8668 | ····} |
8669 | ····void QueryOwn() |
8670 | ····{ |
8671 | ········var q = new NDOQuery<AgrBinnOwnpconOthpconTblAutoLeftBase>(pm); |
8672 | ········ownVar = q.ExecuteSingle(); |
8673 | ····} |
8674 | ····void QueryOther() |
8675 | ····{ |
8676 | ········var q = new NDOQuery<AgrBinnOwnpconOthpconTblAutoRightBase>(pm); |
8677 | ········otherVar = q.ExecuteSingle(); |
8678 | ····} |
8679 | } |
8680 | |
8681 | |
8682 | [TestFixture] |
8683 | public class TestCmpDir1OwnpconOthpconNoTblAuto |
8684 | { |
8685 | ····CmpDir1OwnpconOthpconNoTblAutoLeftBase ownVar; |
8686 | ····CmpDir1OwnpconOthpconNoTblAutoRightBase otherVar; |
8687 | ····PersistenceManager pm; |
8688 | ····[SetUp] |
8689 | ····public void Setup() |
8690 | ····{ |
8691 | ········pm = PmFactory.NewPersistenceManager(); |
8692 | ········ownVar = new CmpDir1OwnpconOthpconNoTblAutoLeftDerived(); |
8693 | ········otherVar = new CmpDir1OwnpconOthpconNoTblAutoRightDerived(); |
8694 | ····} |
8695 | ····[TearDown] |
8696 | ····public void TearDown() |
8697 | ····{ |
8698 | ········try |
8699 | ········{ |
8700 | ············pm.UnloadCache(); |
8701 | ············var l = pm.Objects<CmpDir1OwnpconOthpconNoTblAutoLeftBase>().ResultTable; |
8702 | ············pm.Delete(l); |
8703 | ············pm.Save(); |
8704 | ············pm.UnloadCache(); |
8705 | ············decimal count; |
8706 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconOthpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8707 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8708 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8709 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8710 | ········} |
8711 | ········catch (Exception) |
8712 | ········{ |
8713 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8714 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8715 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8716 | ········} |
8717 | ····} |
8718 | ····[Test] |
8719 | ····public void TestSaveReload() |
8720 | ····{ |
8721 | ········bool thrown = false; |
8722 | ········try |
8723 | ········{ |
8724 | ············CreateObjects(); |
8725 | ············QueryOwn(); |
8726 | Assert. NotNull( ownVar, "No Query Result") ; |
8727 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8728 | ········} |
8729 | ········catch (NDOException) |
8730 | ········{ |
8731 | ············thrown = true; |
8732 | ········} |
8733 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
8734 | ····} |
8735 | ····[Test] |
8736 | ····public void TestSaveReloadNull() |
8737 | ····{ |
8738 | ········bool thrown = false; |
8739 | ········try |
8740 | ········{ |
8741 | ············CreateObjects(); |
8742 | ············QueryOwn(); |
8743 | Assert. NotNull( ownVar, "No Query Result") ; |
8744 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8745 | ············ownVar.RelField = null; |
8746 | ············pm.Save(); |
8747 | ············pm.UnloadCache(); |
8748 | ············QueryOwn(); |
8749 | Assert. NotNull( ownVar, "No Query Result") ; |
8750 | Assert. Null( ownVar. RelField, "There should be no object") ; |
8751 | ········} |
8752 | ········catch (NDOException) |
8753 | ········{ |
8754 | ············thrown = true; |
8755 | ········} |
8756 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
8757 | ····} |
8758 | ····void CreateObjects() |
8759 | ····{ |
8760 | ········pm.MakePersistent(ownVar); |
8761 | ········pm.Save(); |
8762 | ········ownVar.AssignRelation(otherVar); |
8763 | ········pm.Save(); |
8764 | ········pm.UnloadCache(); |
8765 | ····} |
8766 | ····void QueryOwn() |
8767 | ····{ |
8768 | ········var q = new NDOQuery<CmpDir1OwnpconOthpconNoTblAutoLeftBase>(pm); |
8769 | ········ownVar = q.ExecuteSingle(); |
8770 | ····} |
8771 | ····void QueryOther() |
8772 | ····{ |
8773 | ········var q = new NDOQuery<CmpDir1OwnpconOthpconNoTblAutoRightBase>(pm); |
8774 | ········otherVar = q.ExecuteSingle(); |
8775 | ····} |
8776 | } |
8777 | |
8778 | |
8779 | [TestFixture] |
8780 | public class TestCmpDir1OwnpconOthpconTblAuto |
8781 | { |
8782 | ····CmpDir1OwnpconOthpconTblAutoLeftBase ownVar; |
8783 | ····CmpDir1OwnpconOthpconTblAutoRightBase otherVar; |
8784 | ····PersistenceManager pm; |
8785 | ····[SetUp] |
8786 | ····public void Setup() |
8787 | ····{ |
8788 | ········pm = PmFactory.NewPersistenceManager(); |
8789 | ········ownVar = new CmpDir1OwnpconOthpconTblAutoLeftDerived(); |
8790 | ········otherVar = new CmpDir1OwnpconOthpconTblAutoRightDerived(); |
8791 | ····} |
8792 | ····[TearDown] |
8793 | ····public void TearDown() |
8794 | ····{ |
8795 | ········try |
8796 | ········{ |
8797 | ············pm.UnloadCache(); |
8798 | ············var l = pm.Objects<CmpDir1OwnpconOthpconTblAutoLeftBase>().ResultTable; |
8799 | ············pm.Delete(l); |
8800 | ············pm.Save(); |
8801 | ············pm.UnloadCache(); |
8802 | ············decimal count; |
8803 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8804 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8805 | ············count = (decimal) new NDOQuery<CmpDir1OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8806 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8807 | ········} |
8808 | ········catch (Exception) |
8809 | ········{ |
8810 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8811 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8812 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8813 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
8814 | ········} |
8815 | ····} |
8816 | ····[Test] |
8817 | ····public void TestSaveReload() |
8818 | ····{ |
8819 | ········CreateObjects(); |
8820 | ········QueryOwn(); |
8821 | Assert. NotNull( ownVar, "No Query Result") ; |
8822 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8823 | ····} |
8824 | ····[Test] |
8825 | ····public void TestSaveReloadNull() |
8826 | ····{ |
8827 | ········CreateObjects(); |
8828 | ········QueryOwn(); |
8829 | Assert. NotNull( ownVar, "No Query Result") ; |
8830 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8831 | ········ownVar.RelField = null; |
8832 | ········pm.Save(); |
8833 | ········pm.UnloadCache(); |
8834 | ········QueryOwn(); |
8835 | Assert. NotNull( ownVar, "No Query Result") ; |
8836 | Assert. Null( ownVar. RelField, "There should be no object") ; |
8837 | ····} |
8838 | ····[Test] |
8839 | ····public void TestChangeKeyHolderLeft() |
8840 | ····{ |
8841 | ········CreateObjects(); |
8842 | ········QueryOwn(); |
8843 | Assert. NotNull( ownVar, "No Query Result") ; |
8844 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8845 | ········int x = ownVar.RelField.Dummy; |
8846 | ········ownVar.Dummy = 4711; |
8847 | ········pm.Save(); |
8848 | ········pm.UnloadCache(); |
8849 | ········QueryOwn(); |
8850 | Assert. NotNull( ownVar, "No Query Result") ; |
8851 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8852 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8853 | ····} |
8854 | ····[Test] |
8855 | ····public void TestChangeKeyHolderLeftNoTouch() |
8856 | ····{ |
8857 | ········CreateObjects(); |
8858 | ········QueryOwn(); |
8859 | Assert. NotNull( ownVar, "No Query Result") ; |
8860 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8861 | ········ownVar.Dummy = 4711; |
8862 | ········pm.Save(); |
8863 | ········pm.UnloadCache(); |
8864 | ········QueryOwn(); |
8865 | Assert. NotNull( ownVar, "No Query Result") ; |
8866 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
8867 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8868 | ····} |
8869 | ····void CreateObjects() |
8870 | ····{ |
8871 | ········pm.MakePersistent(ownVar); |
8872 | ········ownVar.AssignRelation(otherVar); |
8873 | ········pm.Save(); |
8874 | ········pm.UnloadCache(); |
8875 | ····} |
8876 | ····void QueryOwn() |
8877 | ····{ |
8878 | ········var q = new NDOQuery<CmpDir1OwnpconOthpconTblAutoLeftBase>(pm); |
8879 | ········ownVar = q.ExecuteSingle(); |
8880 | ····} |
8881 | ····void QueryOther() |
8882 | ····{ |
8883 | ········var q = new NDOQuery<CmpDir1OwnpconOthpconTblAutoRightBase>(pm); |
8884 | ········otherVar = q.ExecuteSingle(); |
8885 | ····} |
8886 | } |
8887 | |
8888 | |
8889 | [TestFixture] |
8890 | public class TestCmpBi11OwnpconOthpconNoTblAuto |
8891 | { |
8892 | ····CmpBi11OwnpconOthpconNoTblAutoLeftBase ownVar; |
8893 | ····CmpBi11OwnpconOthpconNoTblAutoRightBase otherVar; |
8894 | ····PersistenceManager pm; |
8895 | ····[SetUp] |
8896 | ····public void Setup() |
8897 | ····{ |
8898 | ········pm = PmFactory.NewPersistenceManager(); |
8899 | ········ownVar = new CmpBi11OwnpconOthpconNoTblAutoLeftDerived(); |
8900 | ········otherVar = new CmpBi11OwnpconOthpconNoTblAutoRightDerived(); |
8901 | ····} |
8902 | ····[TearDown] |
8903 | ····public void TearDown() |
8904 | ····{ |
8905 | ········try |
8906 | ········{ |
8907 | ············pm.UnloadCache(); |
8908 | ············var l = pm.Objects<CmpBi11OwnpconOthpconNoTblAutoLeftBase>().ResultTable; |
8909 | ············pm.Delete(l); |
8910 | ············pm.Save(); |
8911 | ············pm.UnloadCache(); |
8912 | ············decimal count; |
8913 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconOthpconNoTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8914 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
8915 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconOthpconNoTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
8916 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
8917 | ········} |
8918 | ········catch (Exception) |
8919 | ········{ |
8920 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
8921 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
8922 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
8923 | ········} |
8924 | ····} |
8925 | ····[Test] |
8926 | ····public void TestSaveReload() |
8927 | ····{ |
8928 | ········bool thrown = false; |
8929 | ········try |
8930 | ········{ |
8931 | ············CreateObjects(); |
8932 | ············QueryOwn(); |
8933 | Assert. NotNull( ownVar, "No Query Result") ; |
8934 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8935 | ········} |
8936 | ········catch (NDOException) |
8937 | ········{ |
8938 | ············thrown = true; |
8939 | ········} |
8940 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
8941 | ····} |
8942 | ····[Test] |
8943 | ····public void TestSaveReloadNull() |
8944 | ····{ |
8945 | ········bool thrown = false; |
8946 | ········try |
8947 | ········{ |
8948 | ············CreateObjects(); |
8949 | ············QueryOwn(); |
8950 | Assert. NotNull( ownVar, "No Query Result") ; |
8951 | Assert. NotNull( ownVar. RelField, "No related object") ; |
8952 | ············ownVar.RelField = null; |
8953 | ············pm.Save(); |
8954 | ············pm.UnloadCache(); |
8955 | ············QueryOwn(); |
8956 | Assert. NotNull( ownVar, "No Query Result") ; |
8957 | Assert. Null( ownVar. RelField, "There should be no object") ; |
8958 | ········} |
8959 | ········catch (NDOException) |
8960 | ········{ |
8961 | ············thrown = true; |
8962 | ········} |
8963 | Assert. AreEqual( true, thrown, "NDOException should have been thrown") ; |
8964 | ····} |
8965 | ····[Test] |
8966 | ····public void TestRelationHash() |
8967 | ····{ |
8968 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconNoTblAutoLeftBase)); |
8969 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
8970 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconNoTblAutoRightBase)); |
8971 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
8972 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
8973 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
8974 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconNoTblAutoLeftDerived)); |
8975 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
8976 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
8977 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
8978 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconNoTblAutoRightDerived)); |
8979 | ········Relation relderRight = clderRight.FindRelation("relField"); |
8980 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
8981 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
8982 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
8983 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
8984 | ····} |
8985 | ····void CreateObjects() |
8986 | ····{ |
8987 | ········pm.MakePersistent(ownVar); |
8988 | ········pm.Save(); |
8989 | ········ownVar.AssignRelation(otherVar); |
8990 | ········pm.Save(); |
8991 | ········pm.UnloadCache(); |
8992 | ····} |
8993 | ····void QueryOwn() |
8994 | ····{ |
8995 | ········var q = new NDOQuery<CmpBi11OwnpconOthpconNoTblAutoLeftBase>(pm); |
8996 | ········ownVar = q.ExecuteSingle(); |
8997 | ····} |
8998 | ····void QueryOther() |
8999 | ····{ |
9000 | ········var q = new NDOQuery<CmpBi11OwnpconOthpconNoTblAutoRightBase>(pm); |
9001 | ········otherVar = q.ExecuteSingle(); |
9002 | ····} |
9003 | } |
9004 | |
9005 | |
9006 | [TestFixture] |
9007 | public class TestCmpBi11OwnpconOthpconTblAuto |
9008 | { |
9009 | ····CmpBi11OwnpconOthpconTblAutoLeftBase ownVar; |
9010 | ····CmpBi11OwnpconOthpconTblAutoRightBase otherVar; |
9011 | ····PersistenceManager pm; |
9012 | ····[SetUp] |
9013 | ····public void Setup() |
9014 | ····{ |
9015 | ········pm = PmFactory.NewPersistenceManager(); |
9016 | ········ownVar = new CmpBi11OwnpconOthpconTblAutoLeftDerived(); |
9017 | ········otherVar = new CmpBi11OwnpconOthpconTblAutoRightDerived(); |
9018 | ····} |
9019 | ····[TearDown] |
9020 | ····public void TearDown() |
9021 | ····{ |
9022 | ········try |
9023 | ········{ |
9024 | ············pm.UnloadCache(); |
9025 | ············var l = pm.Objects<CmpBi11OwnpconOthpconTblAutoLeftBase>().ResultTable; |
9026 | ············pm.Delete(l); |
9027 | ············pm.Save(); |
9028 | ············pm.UnloadCache(); |
9029 | ············decimal count; |
9030 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9031 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9032 | ············count = (decimal) new NDOQuery<CmpBi11OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9033 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9034 | ········} |
9035 | ········catch (Exception) |
9036 | ········{ |
9037 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9038 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9039 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9040 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9041 | ········} |
9042 | ····} |
9043 | ····[Test] |
9044 | ····public void TestSaveReload() |
9045 | ····{ |
9046 | ········CreateObjects(); |
9047 | ········QueryOwn(); |
9048 | Assert. NotNull( ownVar, "No Query Result") ; |
9049 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9050 | ····} |
9051 | ····[Test] |
9052 | ····public void TestSaveReloadNull() |
9053 | ····{ |
9054 | ········CreateObjects(); |
9055 | ········QueryOwn(); |
9056 | Assert. NotNull( ownVar, "No Query Result") ; |
9057 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9058 | ········ownVar.RelField = null; |
9059 | ········pm.Save(); |
9060 | ········pm.UnloadCache(); |
9061 | ········QueryOwn(); |
9062 | Assert. NotNull( ownVar, "No Query Result") ; |
9063 | Assert. Null( ownVar. RelField, "There should be no object") ; |
9064 | ····} |
9065 | ····[Test] |
9066 | ····public void TestChangeKeyHolderLeft() |
9067 | ····{ |
9068 | ········CreateObjects(); |
9069 | ········QueryOwn(); |
9070 | Assert. NotNull( ownVar, "No Query Result") ; |
9071 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9072 | ········int x = ownVar.RelField.Dummy; |
9073 | ········ownVar.Dummy = 4711; |
9074 | ········pm.Save(); |
9075 | ········pm.UnloadCache(); |
9076 | ········QueryOwn(); |
9077 | Assert. NotNull( ownVar, "No Query Result") ; |
9078 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9079 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9080 | ····} |
9081 | ····[Test] |
9082 | ····public void TestChangeKeyHolderRight() |
9083 | ····{ |
9084 | ········CreateObjects(); |
9085 | ········QueryOther(); |
9086 | Assert. NotNull( otherVar, "No Query Result") ; |
9087 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9088 | ········int x = otherVar.RelField.Dummy; |
9089 | ········otherVar.Dummy = 4711; |
9090 | ········pm.Save(); |
9091 | ········pm.UnloadCache(); |
9092 | ········QueryOther(); |
9093 | Assert. NotNull( otherVar, "No Query Result") ; |
9094 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9095 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9096 | ····} |
9097 | ····[Test] |
9098 | ····public void TestChangeKeyHolderLeftNoTouch() |
9099 | ····{ |
9100 | ········CreateObjects(); |
9101 | ········QueryOwn(); |
9102 | Assert. NotNull( ownVar, "No Query Result") ; |
9103 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9104 | ········ownVar.Dummy = 4711; |
9105 | ········pm.Save(); |
9106 | ········pm.UnloadCache(); |
9107 | ········QueryOwn(); |
9108 | Assert. NotNull( ownVar, "No Query Result") ; |
9109 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9110 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9111 | ····} |
9112 | ····[Test] |
9113 | ····public void TestChangeKeyHolderRightNoTouch() |
9114 | ····{ |
9115 | ········CreateObjects(); |
9116 | ········QueryOther(); |
9117 | Assert. NotNull( otherVar, "No Query Result") ; |
9118 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9119 | ········otherVar.Dummy = 4711; |
9120 | ········pm.Save(); |
9121 | ········pm.UnloadCache(); |
9122 | ········QueryOther(); |
9123 | Assert. NotNull( otherVar, "No Query Result") ; |
9124 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9125 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9126 | ····} |
9127 | ····[Test] |
9128 | ····public void TestRelationHash() |
9129 | ····{ |
9130 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconTblAutoLeftBase)); |
9131 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
9132 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconTblAutoRightBase)); |
9133 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
9134 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
9135 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
9136 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconTblAutoLeftDerived)); |
9137 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
9138 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
9139 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
9140 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi11OwnpconOthpconTblAutoRightDerived)); |
9141 | ········Relation relderRight = clderRight.FindRelation("relField"); |
9142 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
9143 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
9144 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
9145 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
9146 | ····} |
9147 | ····void CreateObjects() |
9148 | ····{ |
9149 | ········pm.MakePersistent(ownVar); |
9150 | ········ownVar.AssignRelation(otherVar); |
9151 | ········pm.Save(); |
9152 | ········pm.UnloadCache(); |
9153 | ····} |
9154 | ····void QueryOwn() |
9155 | ····{ |
9156 | ········var q = new NDOQuery<CmpBi11OwnpconOthpconTblAutoLeftBase>(pm); |
9157 | ········ownVar = q.ExecuteSingle(); |
9158 | ····} |
9159 | ····void QueryOther() |
9160 | ····{ |
9161 | ········var q = new NDOQuery<CmpBi11OwnpconOthpconTblAutoRightBase>(pm); |
9162 | ········otherVar = q.ExecuteSingle(); |
9163 | ····} |
9164 | } |
9165 | |
9166 | |
9167 | [TestFixture] |
9168 | public class TestCmpDirnOwnpconOthpconTblAuto |
9169 | { |
9170 | ····CmpDirnOwnpconOthpconTblAutoLeftBase ownVar; |
9171 | ····CmpDirnOwnpconOthpconTblAutoRightBase otherVar; |
9172 | ····PersistenceManager pm; |
9173 | ····[SetUp] |
9174 | ····public void Setup() |
9175 | ····{ |
9176 | ········pm = PmFactory.NewPersistenceManager(); |
9177 | ········ownVar = new CmpDirnOwnpconOthpconTblAutoLeftDerived(); |
9178 | ········otherVar = new CmpDirnOwnpconOthpconTblAutoRightDerived(); |
9179 | ····} |
9180 | ····[TearDown] |
9181 | ····public void TearDown() |
9182 | ····{ |
9183 | ········try |
9184 | ········{ |
9185 | ············pm.UnloadCache(); |
9186 | ············var l = pm.Objects<CmpDirnOwnpconOthpconTblAutoLeftBase>().ResultTable; |
9187 | ············pm.Delete(l); |
9188 | ············pm.Save(); |
9189 | ············pm.UnloadCache(); |
9190 | ············decimal count; |
9191 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9192 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9193 | ············count = (decimal) new NDOQuery<CmpDirnOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9194 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9195 | ········} |
9196 | ········catch (Exception) |
9197 | ········{ |
9198 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9199 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9200 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9201 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9202 | ········} |
9203 | ····} |
9204 | ····[Test] |
9205 | ····public void TestSaveReload() |
9206 | ····{ |
9207 | ········CreateObjects(); |
9208 | ········QueryOwn(); |
9209 | Assert. NotNull( ownVar, "No Query Result") ; |
9210 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9211 | ····} |
9212 | ····[Test] |
9213 | ····public void TestSaveReloadNull() |
9214 | ····{ |
9215 | ········CreateObjects(); |
9216 | ········QueryOwn(); |
9217 | Assert. NotNull( ownVar, "No Query Result") ; |
9218 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9219 | ········ownVar.RelField = new List<CmpDirnOwnpconOthpconTblAutoRightBase>(); |
9220 | ········pm.Save(); |
9221 | ········pm.UnloadCache(); |
9222 | ········QueryOwn(); |
9223 | Assert. NotNull( ownVar, "No Query Result") ; |
9224 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9225 | ····} |
9226 | ····[Test] |
9227 | ····public void TestSaveReloadRemove() |
9228 | ····{ |
9229 | ········CreateObjects(); |
9230 | ········QueryOwn(); |
9231 | Assert. NotNull( ownVar, "No Query Result") ; |
9232 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9233 | ········ownVar.RemoveRelatedObject(); |
9234 | ········pm.Save(); |
9235 | ········pm.UnloadCache(); |
9236 | ········QueryOwn(); |
9237 | Assert. NotNull( ownVar, "No Query Result") ; |
9238 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9239 | ····} |
9240 | ····void CreateObjects() |
9241 | ····{ |
9242 | ········pm.MakePersistent(ownVar); |
9243 | ········ownVar.AssignRelation(otherVar); |
9244 | ········pm.Save(); |
9245 | ········pm.UnloadCache(); |
9246 | ····} |
9247 | ····void QueryOwn() |
9248 | ····{ |
9249 | ········var q = new NDOQuery<CmpDirnOwnpconOthpconTblAutoLeftBase>(pm); |
9250 | ········ownVar = q.ExecuteSingle(); |
9251 | ····} |
9252 | ····void QueryOther() |
9253 | ····{ |
9254 | ········var q = new NDOQuery<CmpDirnOwnpconOthpconTblAutoRightBase>(pm); |
9255 | ········otherVar = q.ExecuteSingle(); |
9256 | ····} |
9257 | } |
9258 | |
9259 | |
9260 | [TestFixture] |
9261 | public class TestCmpBin1OwnpconOthpconTblAuto |
9262 | { |
9263 | ····CmpBin1OwnpconOthpconTblAutoLeftBase ownVar; |
9264 | ····CmpBin1OwnpconOthpconTblAutoRightBase otherVar; |
9265 | ····PersistenceManager pm; |
9266 | ····[SetUp] |
9267 | ····public void Setup() |
9268 | ····{ |
9269 | ········pm = PmFactory.NewPersistenceManager(); |
9270 | ········ownVar = new CmpBin1OwnpconOthpconTblAutoLeftDerived(); |
9271 | ········otherVar = new CmpBin1OwnpconOthpconTblAutoRightDerived(); |
9272 | ····} |
9273 | ····[TearDown] |
9274 | ····public void TearDown() |
9275 | ····{ |
9276 | ········try |
9277 | ········{ |
9278 | ············pm.UnloadCache(); |
9279 | ············var l = pm.Objects<CmpBin1OwnpconOthpconTblAutoLeftBase>().ResultTable; |
9280 | ············pm.Delete(l); |
9281 | ············pm.Save(); |
9282 | ············pm.UnloadCache(); |
9283 | ············decimal count; |
9284 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9285 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9286 | ············count = (decimal) new NDOQuery<CmpBin1OwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9287 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9288 | ········} |
9289 | ········catch (Exception) |
9290 | ········{ |
9291 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9292 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9293 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9294 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9295 | ········} |
9296 | ····} |
9297 | ····[Test] |
9298 | ····public void TestSaveReload() |
9299 | ····{ |
9300 | ········CreateObjects(); |
9301 | ········QueryOwn(); |
9302 | Assert. NotNull( ownVar, "No Query Result") ; |
9303 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9304 | ····} |
9305 | ····[Test] |
9306 | ····public void TestSaveReloadNull() |
9307 | ····{ |
9308 | ········CreateObjects(); |
9309 | ········QueryOwn(); |
9310 | Assert. NotNull( ownVar, "No Query Result") ; |
9311 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9312 | ········ownVar.RelField = new List<CmpBin1OwnpconOthpconTblAutoRightBase>(); |
9313 | ········pm.Save(); |
9314 | ········pm.UnloadCache(); |
9315 | ········QueryOwn(); |
9316 | Assert. NotNull( ownVar, "No Query Result") ; |
9317 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9318 | ····} |
9319 | ····[Test] |
9320 | ····public void TestSaveReloadRemove() |
9321 | ····{ |
9322 | ········CreateObjects(); |
9323 | ········QueryOwn(); |
9324 | Assert. NotNull( ownVar, "No Query Result") ; |
9325 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9326 | ········ownVar.RemoveRelatedObject(); |
9327 | ········pm.Save(); |
9328 | ········pm.UnloadCache(); |
9329 | ········QueryOwn(); |
9330 | Assert. NotNull( ownVar, "No Query Result") ; |
9331 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9332 | ····} |
9333 | ····[Test] |
9334 | ····public void TestChangeKeyHolderRight() |
9335 | ····{ |
9336 | ········CreateObjects(); |
9337 | ········QueryOther(); |
9338 | Assert. NotNull( otherVar, "No Query Result") ; |
9339 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9340 | ········int x = otherVar.RelField.Dummy; |
9341 | ········otherVar.Dummy = 4711; |
9342 | ········pm.Save(); |
9343 | ········pm.UnloadCache(); |
9344 | ········QueryOther(); |
9345 | Assert. NotNull( otherVar, "No Query Result") ; |
9346 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9347 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9348 | ····} |
9349 | ····[Test] |
9350 | ····public void TestChangeKeyHolderRightNoTouch() |
9351 | ····{ |
9352 | ········CreateObjects(); |
9353 | ········QueryOther(); |
9354 | Assert. NotNull( otherVar, "No Query Result") ; |
9355 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9356 | ········otherVar.Dummy = 4711; |
9357 | ········pm.Save(); |
9358 | ········pm.UnloadCache(); |
9359 | ········QueryOther(); |
9360 | Assert. NotNull( otherVar, "No Query Result") ; |
9361 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9362 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9363 | ····} |
9364 | ····[Test] |
9365 | ····public void TestRelationHash() |
9366 | ····{ |
9367 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconOthpconTblAutoLeftBase)); |
9368 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
9369 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconOthpconTblAutoRightBase)); |
9370 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
9371 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
9372 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
9373 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconOthpconTblAutoLeftDerived)); |
9374 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
9375 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
9376 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
9377 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBin1OwnpconOthpconTblAutoRightDerived)); |
9378 | ········Relation relderRight = clderRight.FindRelation("relField"); |
9379 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
9380 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
9381 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
9382 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
9383 | ····} |
9384 | ····void CreateObjects() |
9385 | ····{ |
9386 | ········pm.MakePersistent(ownVar); |
9387 | ········ownVar.AssignRelation(otherVar); |
9388 | ········pm.Save(); |
9389 | ········pm.UnloadCache(); |
9390 | ····} |
9391 | ····void QueryOwn() |
9392 | ····{ |
9393 | ········var q = new NDOQuery<CmpBin1OwnpconOthpconTblAutoLeftBase>(pm); |
9394 | ········ownVar = q.ExecuteSingle(); |
9395 | ····} |
9396 | ····void QueryOther() |
9397 | ····{ |
9398 | ········var q = new NDOQuery<CmpBin1OwnpconOthpconTblAutoRightBase>(pm); |
9399 | ········otherVar = q.ExecuteSingle(); |
9400 | ····} |
9401 | } |
9402 | |
9403 | |
9404 | [TestFixture] |
9405 | public class TestCmpBi1nOwnpconOthpconTblAuto |
9406 | { |
9407 | ····CmpBi1nOwnpconOthpconTblAutoLeftBase ownVar; |
9408 | ····CmpBi1nOwnpconOthpconTblAutoRightBase otherVar; |
9409 | ····PersistenceManager pm; |
9410 | ····[SetUp] |
9411 | ····public void Setup() |
9412 | ····{ |
9413 | ········pm = PmFactory.NewPersistenceManager(); |
9414 | ········ownVar = new CmpBi1nOwnpconOthpconTblAutoLeftDerived(); |
9415 | ········otherVar = new CmpBi1nOwnpconOthpconTblAutoRightDerived(); |
9416 | ····} |
9417 | ····[TearDown] |
9418 | ····public void TearDown() |
9419 | ····{ |
9420 | ········try |
9421 | ········{ |
9422 | ············pm.UnloadCache(); |
9423 | ············var l = pm.Objects<CmpBi1nOwnpconOthpconTblAutoLeftBase>().ResultTable; |
9424 | ············pm.Delete(l); |
9425 | ············pm.Save(); |
9426 | ············pm.UnloadCache(); |
9427 | ············decimal count; |
9428 | ············count = (decimal) new NDOQuery<CmpBi1nOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9429 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9430 | ············count = (decimal) new NDOQuery<CmpBi1nOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9431 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9432 | ········} |
9433 | ········catch (Exception) |
9434 | ········{ |
9435 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9436 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9437 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9438 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9439 | ········} |
9440 | ····} |
9441 | ····[Test] |
9442 | ····public void TestSaveReload() |
9443 | ····{ |
9444 | ········CreateObjects(); |
9445 | ········QueryOwn(); |
9446 | Assert. NotNull( ownVar, "No Query Result") ; |
9447 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9448 | ····} |
9449 | ····[Test] |
9450 | ····public void TestSaveReloadNull() |
9451 | ····{ |
9452 | ········CreateObjects(); |
9453 | ········QueryOwn(); |
9454 | Assert. NotNull( ownVar, "No Query Result") ; |
9455 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9456 | ········ownVar.RelField = null; |
9457 | ········pm.Save(); |
9458 | ········pm.UnloadCache(); |
9459 | ········QueryOwn(); |
9460 | Assert. NotNull( ownVar, "No Query Result") ; |
9461 | Assert. Null( ownVar. RelField, "There should be no object") ; |
9462 | ····} |
9463 | ····[Test] |
9464 | ····public void TestChangeKeyHolderLeft() |
9465 | ····{ |
9466 | ········CreateObjects(); |
9467 | ········QueryOwn(); |
9468 | Assert. NotNull( ownVar, "No Query Result") ; |
9469 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9470 | ········int x = ownVar.RelField.Dummy; |
9471 | ········ownVar.Dummy = 4711; |
9472 | ········pm.Save(); |
9473 | ········pm.UnloadCache(); |
9474 | ········QueryOwn(); |
9475 | Assert. NotNull( ownVar, "No Query Result") ; |
9476 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9477 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9478 | ····} |
9479 | ····[Test] |
9480 | ····public void TestChangeKeyHolderLeftNoTouch() |
9481 | ····{ |
9482 | ········CreateObjects(); |
9483 | ········QueryOwn(); |
9484 | Assert. NotNull( ownVar, "No Query Result") ; |
9485 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9486 | ········ownVar.Dummy = 4711; |
9487 | ········pm.Save(); |
9488 | ········pm.UnloadCache(); |
9489 | ········QueryOwn(); |
9490 | Assert. NotNull( ownVar, "No Query Result") ; |
9491 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9492 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9493 | ····} |
9494 | ····[Test] |
9495 | ····public void TestRelationHash() |
9496 | ····{ |
9497 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconOthpconTblAutoLeftBase)); |
9498 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
9499 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconOthpconTblAutoRightBase)); |
9500 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
9501 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
9502 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
9503 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconOthpconTblAutoLeftDerived)); |
9504 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
9505 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
9506 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
9507 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBi1nOwnpconOthpconTblAutoRightDerived)); |
9508 | ········Relation relderRight = clderRight.FindRelation("relField"); |
9509 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
9510 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
9511 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
9512 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
9513 | ····} |
9514 | ····void CreateObjects() |
9515 | ····{ |
9516 | ········pm.MakePersistent(ownVar); |
9517 | ········ownVar.AssignRelation(otherVar); |
9518 | ········pm.Save(); |
9519 | ········pm.UnloadCache(); |
9520 | ····} |
9521 | ····void QueryOwn() |
9522 | ····{ |
9523 | ········var q = new NDOQuery<CmpBi1nOwnpconOthpconTblAutoLeftBase>(pm); |
9524 | ········ownVar = q.ExecuteSingle(); |
9525 | ····} |
9526 | ····void QueryOther() |
9527 | ····{ |
9528 | ········var q = new NDOQuery<CmpBi1nOwnpconOthpconTblAutoRightBase>(pm); |
9529 | ········otherVar = q.ExecuteSingle(); |
9530 | ····} |
9531 | } |
9532 | |
9533 | |
9534 | [TestFixture] |
9535 | public class TestCmpBinnOwnpconOthpconTblAuto |
9536 | { |
9537 | ····CmpBinnOwnpconOthpconTblAutoLeftBase ownVar; |
9538 | ····CmpBinnOwnpconOthpconTblAutoRightBase otherVar; |
9539 | ····PersistenceManager pm; |
9540 | ····[SetUp] |
9541 | ····public void Setup() |
9542 | ····{ |
9543 | ········pm = PmFactory.NewPersistenceManager(); |
9544 | ········ownVar = new CmpBinnOwnpconOthpconTblAutoLeftDerived(); |
9545 | ········otherVar = new CmpBinnOwnpconOthpconTblAutoRightDerived(); |
9546 | ····} |
9547 | ····[TearDown] |
9548 | ····public void TearDown() |
9549 | ····{ |
9550 | ········try |
9551 | ········{ |
9552 | ············pm.UnloadCache(); |
9553 | ············var l = pm.Objects<CmpBinnOwnpconOthpconTblAutoLeftBase>().ResultTable; |
9554 | ············pm.Delete(l); |
9555 | ············pm.Save(); |
9556 | ············pm.UnloadCache(); |
9557 | ············decimal count; |
9558 | ············count = (decimal) new NDOQuery<CmpBinnOwnpconOthpconTblAutoLeftBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9559 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9560 | ············count = (decimal) new NDOQuery<CmpBinnOwnpconOthpconTblAutoRightBase>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9561 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9562 | ········} |
9563 | ········catch (Exception) |
9564 | ········{ |
9565 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9566 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9567 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9568 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9569 | ········} |
9570 | ····} |
9571 | ····[Test] |
9572 | ····public void TestSaveReload() |
9573 | ····{ |
9574 | ········CreateObjects(); |
9575 | ········QueryOwn(); |
9576 | Assert. NotNull( ownVar, "No Query Result") ; |
9577 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9578 | ····} |
9579 | ····[Test] |
9580 | ····public void TestSaveReloadNull() |
9581 | ····{ |
9582 | ········CreateObjects(); |
9583 | ········QueryOwn(); |
9584 | Assert. NotNull( ownVar, "No Query Result") ; |
9585 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9586 | ········ownVar.RelField = new List<CmpBinnOwnpconOthpconTblAutoRightBase>(); |
9587 | ········pm.Save(); |
9588 | ········pm.UnloadCache(); |
9589 | ········QueryOwn(); |
9590 | Assert. NotNull( ownVar, "No Query Result") ; |
9591 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9592 | ····} |
9593 | ····[Test] |
9594 | ····public void TestSaveReloadRemove() |
9595 | ····{ |
9596 | ········CreateObjects(); |
9597 | ········QueryOwn(); |
9598 | Assert. NotNull( ownVar, "No Query Result") ; |
9599 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
9600 | ········ownVar.RemoveRelatedObject(); |
9601 | ········pm.Save(); |
9602 | ········pm.UnloadCache(); |
9603 | ········QueryOwn(); |
9604 | Assert. NotNull( ownVar, "No Query Result") ; |
9605 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
9606 | ····} |
9607 | ····[Test] |
9608 | ····public void TestRelationHash() |
9609 | ····{ |
9610 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconOthpconTblAutoLeftBase)); |
9611 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
9612 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconOthpconTblAutoRightBase)); |
9613 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
9614 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
9615 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
9616 | ········Class clderLeft = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconOthpconTblAutoLeftDerived)); |
9617 | ········Relation relderLeft = clderLeft.FindRelation("relField"); |
9618 | ········Assert.That(relderLeft.Equals(relbaseRight), "Relation should be equal #3"); |
9619 | ········Assert.That(relbaseRight.Equals(relderLeft), "Relation should be equal #4"); |
9620 | ········Class clderRight = pm.NDOMapping.FindClass(typeof(CmpBinnOwnpconOthpconTblAutoRightDerived)); |
9621 | ········Relation relderRight = clderRight.FindRelation("relField"); |
9622 | ········Assert.That(relbaseLeft.Equals(relderRight), "Relation should be equal #5"); |
9623 | ········Assert.That(relderRight.Equals(relbaseLeft), "Relation should be equal #6"); |
9624 | ········Assert.That(relderLeft.Equals(relderRight), "Relation should be equal #7"); |
9625 | ········Assert.That(relderRight.Equals(relderLeft), "Relation should be equal #8"); |
9626 | ····} |
9627 | ····void CreateObjects() |
9628 | ····{ |
9629 | ········pm.MakePersistent(ownVar); |
9630 | ········ownVar.AssignRelation(otherVar); |
9631 | ········pm.Save(); |
9632 | ········pm.UnloadCache(); |
9633 | ····} |
9634 | ····void QueryOwn() |
9635 | ····{ |
9636 | ········var q = new NDOQuery<CmpBinnOwnpconOthpconTblAutoLeftBase>(pm); |
9637 | ········ownVar = q.ExecuteSingle(); |
9638 | ····} |
9639 | ····void QueryOther() |
9640 | ····{ |
9641 | ········var q = new NDOQuery<CmpBinnOwnpconOthpconTblAutoRightBase>(pm); |
9642 | ········otherVar = q.ExecuteSingle(); |
9643 | ····} |
9644 | } |
9645 | |
9646 | |
9647 | [TestFixture] |
9648 | public class TestAgrDir1NoTblGuid |
9649 | { |
9650 | ····AgrDir1NoTblGuidLeft ownVar; |
9651 | ····AgrDir1NoTblGuidRight otherVar; |
9652 | ····PersistenceManager pm; |
9653 | ····[SetUp] |
9654 | ····public void Setup() |
9655 | ····{ |
9656 | ········pm = PmFactory.NewPersistenceManager(); |
9657 | ········ownVar = new AgrDir1NoTblGuidLeft(); |
9658 | ········otherVar = new AgrDir1NoTblGuidRight(); |
9659 | ····} |
9660 | ····[TearDown] |
9661 | ····public void TearDown() |
9662 | ····{ |
9663 | ········try |
9664 | ········{ |
9665 | ············pm.UnloadCache(); |
9666 | ············var l = pm.Objects<AgrDir1NoTblGuidLeft>().ResultTable; |
9667 | ············pm.Delete(l); |
9668 | ············pm.Save(); |
9669 | ············pm.UnloadCache(); |
9670 | ············var m = pm.Objects<AgrDir1NoTblGuidRight>().ResultTable; |
9671 | ············pm.Delete(m); |
9672 | ············pm.Save(); |
9673 | ············pm.UnloadCache(); |
9674 | ············decimal count; |
9675 | ············count = (decimal) new NDOQuery<AgrDir1NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9676 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9677 | ············count = (decimal) new NDOQuery<AgrDir1NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9678 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9679 | ········} |
9680 | ········catch (Exception) |
9681 | ········{ |
9682 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9683 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9684 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9685 | ········} |
9686 | ····} |
9687 | ····[Test] |
9688 | ····public void TestSaveReload() |
9689 | ····{ |
9690 | ········CreateObjects(); |
9691 | ········QueryOwn(); |
9692 | Assert. NotNull( ownVar, "No Query Result") ; |
9693 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9694 | ····} |
9695 | ····[Test] |
9696 | ····public void TestSaveReloadNull() |
9697 | ····{ |
9698 | ········CreateObjects(); |
9699 | ········QueryOwn(); |
9700 | Assert. NotNull( ownVar, "No Query Result") ; |
9701 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9702 | ········ownVar.RelField = null; |
9703 | ········pm.Save(); |
9704 | ········pm.UnloadCache(); |
9705 | ········QueryOwn(); |
9706 | Assert. NotNull( ownVar, "No Query Result") ; |
9707 | Assert. Null( ownVar. RelField, "There should be no object") ; |
9708 | ····} |
9709 | ····[Test] |
9710 | ····public void TestChangeKeyHolderLeft() |
9711 | ····{ |
9712 | ········CreateObjects(); |
9713 | ········QueryOwn(); |
9714 | Assert. NotNull( ownVar, "No Query Result") ; |
9715 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9716 | ········int x = ownVar.RelField.Dummy; |
9717 | ········ownVar.Dummy = 4711; |
9718 | ········pm.Save(); |
9719 | ········pm.UnloadCache(); |
9720 | ········QueryOwn(); |
9721 | Assert. NotNull( ownVar, "No Query Result") ; |
9722 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9723 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9724 | ····} |
9725 | ····[Test] |
9726 | ····public void TestChangeKeyHolderLeftNoTouch() |
9727 | ····{ |
9728 | ········CreateObjects(); |
9729 | ········QueryOwn(); |
9730 | Assert. NotNull( ownVar, "No Query Result") ; |
9731 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9732 | ········ownVar.Dummy = 4711; |
9733 | ········pm.Save(); |
9734 | ········pm.UnloadCache(); |
9735 | ········QueryOwn(); |
9736 | Assert. NotNull( ownVar, "No Query Result") ; |
9737 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9738 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9739 | ····} |
9740 | ····void CreateObjects() |
9741 | ····{ |
9742 | ········pm.MakePersistent(ownVar); |
9743 | ········pm.MakePersistent(otherVar); |
9744 | ········ownVar.AssignRelation(otherVar); |
9745 | ········pm.Save(); |
9746 | ········pm.UnloadCache(); |
9747 | ····} |
9748 | ····void QueryOwn() |
9749 | ····{ |
9750 | ········var q = new NDOQuery<AgrDir1NoTblGuidLeft>(pm); |
9751 | ········ownVar = q.ExecuteSingle(); |
9752 | ····} |
9753 | ····void QueryOther() |
9754 | ····{ |
9755 | ········var q = new NDOQuery<AgrDir1NoTblGuidRight>(pm); |
9756 | ········otherVar = q.ExecuteSingle(); |
9757 | ····} |
9758 | } |
9759 | |
9760 | |
9761 | [TestFixture] |
9762 | public class TestAgrDir1TblGuid |
9763 | { |
9764 | ····AgrDir1TblGuidLeft ownVar; |
9765 | ····AgrDir1TblGuidRight otherVar; |
9766 | ····PersistenceManager pm; |
9767 | ····[SetUp] |
9768 | ····public void Setup() |
9769 | ····{ |
9770 | ········pm = PmFactory.NewPersistenceManager(); |
9771 | ········ownVar = new AgrDir1TblGuidLeft(); |
9772 | ········otherVar = new AgrDir1TblGuidRight(); |
9773 | ····} |
9774 | ····[TearDown] |
9775 | ····public void TearDown() |
9776 | ····{ |
9777 | ········try |
9778 | ········{ |
9779 | ············pm.UnloadCache(); |
9780 | ············var l = pm.Objects<AgrDir1TblGuidLeft>().ResultTable; |
9781 | ············pm.Delete(l); |
9782 | ············pm.Save(); |
9783 | ············pm.UnloadCache(); |
9784 | ············var m = pm.Objects<AgrDir1TblGuidRight>().ResultTable; |
9785 | ············pm.Delete(m); |
9786 | ············pm.Save(); |
9787 | ············pm.UnloadCache(); |
9788 | ············decimal count; |
9789 | ············count = (decimal) new NDOQuery<AgrDir1TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9790 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9791 | ············count = (decimal) new NDOQuery<AgrDir1TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9792 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9793 | ········} |
9794 | ········catch (Exception) |
9795 | ········{ |
9796 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9797 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9798 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9799 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
9800 | ········} |
9801 | ····} |
9802 | ····[Test] |
9803 | ····public void TestSaveReload() |
9804 | ····{ |
9805 | ········CreateObjects(); |
9806 | ········QueryOwn(); |
9807 | Assert. NotNull( ownVar, "No Query Result") ; |
9808 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9809 | ····} |
9810 | ····[Test] |
9811 | ····public void TestSaveReloadNull() |
9812 | ····{ |
9813 | ········CreateObjects(); |
9814 | ········QueryOwn(); |
9815 | Assert. NotNull( ownVar, "No Query Result") ; |
9816 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9817 | ········ownVar.RelField = null; |
9818 | ········pm.Save(); |
9819 | ········pm.UnloadCache(); |
9820 | ········QueryOwn(); |
9821 | Assert. NotNull( ownVar, "No Query Result") ; |
9822 | Assert. Null( ownVar. RelField, "There should be no object") ; |
9823 | ····} |
9824 | ····[Test] |
9825 | ····public void TestChangeKeyHolderLeft() |
9826 | ····{ |
9827 | ········CreateObjects(); |
9828 | ········QueryOwn(); |
9829 | Assert. NotNull( ownVar, "No Query Result") ; |
9830 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9831 | ········int x = ownVar.RelField.Dummy; |
9832 | ········ownVar.Dummy = 4711; |
9833 | ········pm.Save(); |
9834 | ········pm.UnloadCache(); |
9835 | ········QueryOwn(); |
9836 | Assert. NotNull( ownVar, "No Query Result") ; |
9837 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9838 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9839 | ····} |
9840 | ····[Test] |
9841 | ····public void TestChangeKeyHolderLeftNoTouch() |
9842 | ····{ |
9843 | ········CreateObjects(); |
9844 | ········QueryOwn(); |
9845 | Assert. NotNull( ownVar, "No Query Result") ; |
9846 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9847 | ········ownVar.Dummy = 4711; |
9848 | ········pm.Save(); |
9849 | ········pm.UnloadCache(); |
9850 | ········QueryOwn(); |
9851 | Assert. NotNull( ownVar, "No Query Result") ; |
9852 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9853 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9854 | ····} |
9855 | ····void CreateObjects() |
9856 | ····{ |
9857 | ········pm.MakePersistent(ownVar); |
9858 | ········pm.MakePersistent(otherVar); |
9859 | ········ownVar.AssignRelation(otherVar); |
9860 | ········pm.Save(); |
9861 | ········pm.UnloadCache(); |
9862 | ····} |
9863 | ····void QueryOwn() |
9864 | ····{ |
9865 | ········var q = new NDOQuery<AgrDir1TblGuidLeft>(pm); |
9866 | ········ownVar = q.ExecuteSingle(); |
9867 | ····} |
9868 | ····void QueryOther() |
9869 | ····{ |
9870 | ········var q = new NDOQuery<AgrDir1TblGuidRight>(pm); |
9871 | ········otherVar = q.ExecuteSingle(); |
9872 | ····} |
9873 | } |
9874 | |
9875 | |
9876 | [TestFixture] |
9877 | public class TestAgrBi11NoTblGuid |
9878 | { |
9879 | ····AgrBi11NoTblGuidLeft ownVar; |
9880 | ····AgrBi11NoTblGuidRight otherVar; |
9881 | ····PersistenceManager pm; |
9882 | ····[SetUp] |
9883 | ····public void Setup() |
9884 | ····{ |
9885 | ········pm = PmFactory.NewPersistenceManager(); |
9886 | ········ownVar = new AgrBi11NoTblGuidLeft(); |
9887 | ········otherVar = new AgrBi11NoTblGuidRight(); |
9888 | ····} |
9889 | ····[TearDown] |
9890 | ····public void TearDown() |
9891 | ····{ |
9892 | ········try |
9893 | ········{ |
9894 | ············pm.UnloadCache(); |
9895 | ············var l = pm.Objects<AgrBi11NoTblGuidLeft>().ResultTable; |
9896 | ············pm.Delete(l); |
9897 | ············pm.Save(); |
9898 | ············pm.UnloadCache(); |
9899 | ············var m = pm.Objects<AgrBi11NoTblGuidRight>().ResultTable; |
9900 | ············pm.Delete(m); |
9901 | ············pm.Save(); |
9902 | ············pm.UnloadCache(); |
9903 | ············decimal count; |
9904 | ············count = (decimal) new NDOQuery<AgrBi11NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9905 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
9906 | ············count = (decimal) new NDOQuery<AgrBi11NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
9907 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
9908 | ········} |
9909 | ········catch (Exception) |
9910 | ········{ |
9911 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
9912 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
9913 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
9914 | ········} |
9915 | ····} |
9916 | ····[Test] |
9917 | ····public void TestSaveReload() |
9918 | ····{ |
9919 | ········CreateObjects(); |
9920 | ········QueryOwn(); |
9921 | Assert. NotNull( ownVar, "No Query Result") ; |
9922 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9923 | ····} |
9924 | ····[Test] |
9925 | ····public void TestSaveReloadNull() |
9926 | ····{ |
9927 | ········CreateObjects(); |
9928 | ········QueryOwn(); |
9929 | Assert. NotNull( ownVar, "No Query Result") ; |
9930 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9931 | ········ownVar.RelField = null; |
9932 | ········pm.Save(); |
9933 | ········pm.UnloadCache(); |
9934 | ········QueryOwn(); |
9935 | Assert. NotNull( ownVar, "No Query Result") ; |
9936 | Assert. Null( ownVar. RelField, "There should be no object") ; |
9937 | ····} |
9938 | ····[Test] |
9939 | ····public void TestChangeKeyHolderLeft() |
9940 | ····{ |
9941 | ········CreateObjects(); |
9942 | ········QueryOwn(); |
9943 | Assert. NotNull( ownVar, "No Query Result") ; |
9944 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9945 | ········int x = ownVar.RelField.Dummy; |
9946 | ········ownVar.Dummy = 4711; |
9947 | ········pm.Save(); |
9948 | ········pm.UnloadCache(); |
9949 | ········QueryOwn(); |
9950 | Assert. NotNull( ownVar, "No Query Result") ; |
9951 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9952 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9953 | ····} |
9954 | ····[Test] |
9955 | ····public void TestChangeKeyHolderRight() |
9956 | ····{ |
9957 | ········CreateObjects(); |
9958 | ········QueryOther(); |
9959 | Assert. NotNull( otherVar, "No Query Result") ; |
9960 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9961 | ········int x = otherVar.RelField.Dummy; |
9962 | ········otherVar.Dummy = 4711; |
9963 | ········pm.Save(); |
9964 | ········pm.UnloadCache(); |
9965 | ········QueryOther(); |
9966 | Assert. NotNull( otherVar, "No Query Result") ; |
9967 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9968 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9969 | ····} |
9970 | ····[Test] |
9971 | ····public void TestChangeKeyHolderLeftNoTouch() |
9972 | ····{ |
9973 | ········CreateObjects(); |
9974 | ········QueryOwn(); |
9975 | Assert. NotNull( ownVar, "No Query Result") ; |
9976 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9977 | ········ownVar.Dummy = 4711; |
9978 | ········pm.Save(); |
9979 | ········pm.UnloadCache(); |
9980 | ········QueryOwn(); |
9981 | Assert. NotNull( ownVar, "No Query Result") ; |
9982 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
9983 | Assert. NotNull( ownVar. RelField, "No related object") ; |
9984 | ····} |
9985 | ····[Test] |
9986 | ····public void TestChangeKeyHolderRightNoTouch() |
9987 | ····{ |
9988 | ········CreateObjects(); |
9989 | ········QueryOther(); |
9990 | Assert. NotNull( otherVar, "No Query Result") ; |
9991 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9992 | ········otherVar.Dummy = 4711; |
9993 | ········pm.Save(); |
9994 | ········pm.UnloadCache(); |
9995 | ········QueryOther(); |
9996 | Assert. NotNull( otherVar, "No Query Result") ; |
9997 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
9998 | Assert. NotNull( otherVar. RelField, "No related object") ; |
9999 | ····} |
10000 | ····[Test] |
10001 | ····public void TestRelationHash() |
10002 | ····{ |
10003 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11NoTblGuidLeft)); |
10004 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10005 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11NoTblGuidRight)); |
10006 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10007 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10008 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10009 | ····} |
10010 | ····void CreateObjects() |
10011 | ····{ |
10012 | ········pm.MakePersistent(ownVar); |
10013 | ········pm.MakePersistent(otherVar); |
10014 | ········ownVar.AssignRelation(otherVar); |
10015 | ········pm.Save(); |
10016 | ········pm.UnloadCache(); |
10017 | ····} |
10018 | ····void QueryOwn() |
10019 | ····{ |
10020 | ········var q = new NDOQuery<AgrBi11NoTblGuidLeft>(pm); |
10021 | ········ownVar = q.ExecuteSingle(); |
10022 | ····} |
10023 | ····void QueryOther() |
10024 | ····{ |
10025 | ········var q = new NDOQuery<AgrBi11NoTblGuidRight>(pm); |
10026 | ········otherVar = q.ExecuteSingle(); |
10027 | ····} |
10028 | } |
10029 | |
10030 | |
10031 | [TestFixture] |
10032 | public class TestAgrBi11TblGuid |
10033 | { |
10034 | ····AgrBi11TblGuidLeft ownVar; |
10035 | ····AgrBi11TblGuidRight otherVar; |
10036 | ····PersistenceManager pm; |
10037 | ····[SetUp] |
10038 | ····public void Setup() |
10039 | ····{ |
10040 | ········pm = PmFactory.NewPersistenceManager(); |
10041 | ········ownVar = new AgrBi11TblGuidLeft(); |
10042 | ········otherVar = new AgrBi11TblGuidRight(); |
10043 | ····} |
10044 | ····[TearDown] |
10045 | ····public void TearDown() |
10046 | ····{ |
10047 | ········try |
10048 | ········{ |
10049 | ············pm.UnloadCache(); |
10050 | ············var l = pm.Objects<AgrBi11TblGuidLeft>().ResultTable; |
10051 | ············pm.Delete(l); |
10052 | ············pm.Save(); |
10053 | ············pm.UnloadCache(); |
10054 | ············var m = pm.Objects<AgrBi11TblGuidRight>().ResultTable; |
10055 | ············pm.Delete(m); |
10056 | ············pm.Save(); |
10057 | ············pm.UnloadCache(); |
10058 | ············decimal count; |
10059 | ············count = (decimal) new NDOQuery<AgrBi11TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10060 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10061 | ············count = (decimal) new NDOQuery<AgrBi11TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10062 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10063 | ········} |
10064 | ········catch (Exception) |
10065 | ········{ |
10066 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10067 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10068 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10069 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
10070 | ········} |
10071 | ····} |
10072 | ····[Test] |
10073 | ····public void TestSaveReload() |
10074 | ····{ |
10075 | ········CreateObjects(); |
10076 | ········QueryOwn(); |
10077 | Assert. NotNull( ownVar, "No Query Result") ; |
10078 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10079 | ····} |
10080 | ····[Test] |
10081 | ····public void TestSaveReloadNull() |
10082 | ····{ |
10083 | ········CreateObjects(); |
10084 | ········QueryOwn(); |
10085 | Assert. NotNull( ownVar, "No Query Result") ; |
10086 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10087 | ········ownVar.RelField = null; |
10088 | ········pm.Save(); |
10089 | ········pm.UnloadCache(); |
10090 | ········QueryOwn(); |
10091 | Assert. NotNull( ownVar, "No Query Result") ; |
10092 | Assert. Null( ownVar. RelField, "There should be no object") ; |
10093 | ····} |
10094 | ····[Test] |
10095 | ····public void TestChangeKeyHolderLeft() |
10096 | ····{ |
10097 | ········CreateObjects(); |
10098 | ········QueryOwn(); |
10099 | Assert. NotNull( ownVar, "No Query Result") ; |
10100 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10101 | ········int x = ownVar.RelField.Dummy; |
10102 | ········ownVar.Dummy = 4711; |
10103 | ········pm.Save(); |
10104 | ········pm.UnloadCache(); |
10105 | ········QueryOwn(); |
10106 | Assert. NotNull( ownVar, "No Query Result") ; |
10107 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10108 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10109 | ····} |
10110 | ····[Test] |
10111 | ····public void TestChangeKeyHolderRight() |
10112 | ····{ |
10113 | ········CreateObjects(); |
10114 | ········QueryOther(); |
10115 | Assert. NotNull( otherVar, "No Query Result") ; |
10116 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10117 | ········int x = otherVar.RelField.Dummy; |
10118 | ········otherVar.Dummy = 4711; |
10119 | ········pm.Save(); |
10120 | ········pm.UnloadCache(); |
10121 | ········QueryOther(); |
10122 | Assert. NotNull( otherVar, "No Query Result") ; |
10123 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10124 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10125 | ····} |
10126 | ····[Test] |
10127 | ····public void TestChangeKeyHolderLeftNoTouch() |
10128 | ····{ |
10129 | ········CreateObjects(); |
10130 | ········QueryOwn(); |
10131 | Assert. NotNull( ownVar, "No Query Result") ; |
10132 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10133 | ········ownVar.Dummy = 4711; |
10134 | ········pm.Save(); |
10135 | ········pm.UnloadCache(); |
10136 | ········QueryOwn(); |
10137 | Assert. NotNull( ownVar, "No Query Result") ; |
10138 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10139 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10140 | ····} |
10141 | ····[Test] |
10142 | ····public void TestChangeKeyHolderRightNoTouch() |
10143 | ····{ |
10144 | ········CreateObjects(); |
10145 | ········QueryOther(); |
10146 | Assert. NotNull( otherVar, "No Query Result") ; |
10147 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10148 | ········otherVar.Dummy = 4711; |
10149 | ········pm.Save(); |
10150 | ········pm.UnloadCache(); |
10151 | ········QueryOther(); |
10152 | Assert. NotNull( otherVar, "No Query Result") ; |
10153 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10154 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10155 | ····} |
10156 | ····[Test] |
10157 | ····public void TestRelationHash() |
10158 | ····{ |
10159 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi11TblGuidLeft)); |
10160 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10161 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi11TblGuidRight)); |
10162 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10163 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10164 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10165 | ····} |
10166 | ····void CreateObjects() |
10167 | ····{ |
10168 | ········pm.MakePersistent(ownVar); |
10169 | ········pm.MakePersistent(otherVar); |
10170 | ········ownVar.AssignRelation(otherVar); |
10171 | ········pm.Save(); |
10172 | ········pm.UnloadCache(); |
10173 | ····} |
10174 | ····void QueryOwn() |
10175 | ····{ |
10176 | ········var q = new NDOQuery<AgrBi11TblGuidLeft>(pm); |
10177 | ········ownVar = q.ExecuteSingle(); |
10178 | ····} |
10179 | ····void QueryOther() |
10180 | ····{ |
10181 | ········var q = new NDOQuery<AgrBi11TblGuidRight>(pm); |
10182 | ········otherVar = q.ExecuteSingle(); |
10183 | ····} |
10184 | } |
10185 | |
10186 | |
10187 | [TestFixture] |
10188 | public class TestAgrDirnNoTblGuid |
10189 | { |
10190 | ····AgrDirnNoTblGuidLeft ownVar; |
10191 | ····AgrDirnNoTblGuidRight otherVar; |
10192 | ····PersistenceManager pm; |
10193 | ····[SetUp] |
10194 | ····public void Setup() |
10195 | ····{ |
10196 | ········pm = PmFactory.NewPersistenceManager(); |
10197 | ········ownVar = new AgrDirnNoTblGuidLeft(); |
10198 | ········otherVar = new AgrDirnNoTblGuidRight(); |
10199 | ····} |
10200 | ····[TearDown] |
10201 | ····public void TearDown() |
10202 | ····{ |
10203 | ········try |
10204 | ········{ |
10205 | ············pm.UnloadCache(); |
10206 | ············var l = pm.Objects<AgrDirnNoTblGuidLeft>().ResultTable; |
10207 | ············pm.Delete(l); |
10208 | ············pm.Save(); |
10209 | ············pm.UnloadCache(); |
10210 | ············var m = pm.Objects<AgrDirnNoTblGuidRight>().ResultTable; |
10211 | ············pm.Delete(m); |
10212 | ············pm.Save(); |
10213 | ············pm.UnloadCache(); |
10214 | ············decimal count; |
10215 | ············count = (decimal) new NDOQuery<AgrDirnNoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10216 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10217 | ············count = (decimal) new NDOQuery<AgrDirnNoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10218 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10219 | ········} |
10220 | ········catch (Exception) |
10221 | ········{ |
10222 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10223 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10224 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10225 | ········} |
10226 | ····} |
10227 | ····[Test] |
10228 | ····public void TestSaveReload() |
10229 | ····{ |
10230 | ········CreateObjects(); |
10231 | ········QueryOwn(); |
10232 | Assert. NotNull( ownVar, "No Query Result") ; |
10233 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10234 | ····} |
10235 | ····[Test] |
10236 | ····public void TestSaveReloadNull() |
10237 | ····{ |
10238 | ········CreateObjects(); |
10239 | ········QueryOwn(); |
10240 | Assert. NotNull( ownVar, "No Query Result") ; |
10241 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10242 | ········ownVar.RelField = new List<AgrDirnNoTblGuidRight>(); |
10243 | ········pm.Save(); |
10244 | ········pm.UnloadCache(); |
10245 | ········QueryOwn(); |
10246 | Assert. NotNull( ownVar, "No Query Result") ; |
10247 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10248 | ····} |
10249 | ····[Test] |
10250 | ····public void TestSaveReloadRemove() |
10251 | ····{ |
10252 | ········CreateObjects(); |
10253 | ········QueryOwn(); |
10254 | Assert. NotNull( ownVar, "No Query Result") ; |
10255 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10256 | ········ownVar.RemoveRelatedObject(); |
10257 | ········pm.Save(); |
10258 | ········pm.UnloadCache(); |
10259 | ········QueryOwn(); |
10260 | Assert. NotNull( ownVar, "No Query Result") ; |
10261 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10262 | ····} |
10263 | ····void CreateObjects() |
10264 | ····{ |
10265 | ········pm.MakePersistent(ownVar); |
10266 | ········pm.MakePersistent(otherVar); |
10267 | ········ownVar.AssignRelation(otherVar); |
10268 | ········pm.Save(); |
10269 | ········pm.UnloadCache(); |
10270 | ····} |
10271 | ····void QueryOwn() |
10272 | ····{ |
10273 | ········var q = new NDOQuery<AgrDirnNoTblGuidLeft>(pm); |
10274 | ········ownVar = q.ExecuteSingle(); |
10275 | ····} |
10276 | ····void QueryOther() |
10277 | ····{ |
10278 | ········var q = new NDOQuery<AgrDirnNoTblGuidRight>(pm); |
10279 | ········otherVar = q.ExecuteSingle(); |
10280 | ····} |
10281 | } |
10282 | |
10283 | |
10284 | [TestFixture] |
10285 | public class TestAgrDirnTblGuid |
10286 | { |
10287 | ····AgrDirnTblGuidLeft ownVar; |
10288 | ····AgrDirnTblGuidRight otherVar; |
10289 | ····PersistenceManager pm; |
10290 | ····[SetUp] |
10291 | ····public void Setup() |
10292 | ····{ |
10293 | ········pm = PmFactory.NewPersistenceManager(); |
10294 | ········ownVar = new AgrDirnTblGuidLeft(); |
10295 | ········otherVar = new AgrDirnTblGuidRight(); |
10296 | ····} |
10297 | ····[TearDown] |
10298 | ····public void TearDown() |
10299 | ····{ |
10300 | ········try |
10301 | ········{ |
10302 | ············pm.UnloadCache(); |
10303 | ············var l = pm.Objects<AgrDirnTblGuidLeft>().ResultTable; |
10304 | ············pm.Delete(l); |
10305 | ············pm.Save(); |
10306 | ············pm.UnloadCache(); |
10307 | ············var m = pm.Objects<AgrDirnTblGuidRight>().ResultTable; |
10308 | ············pm.Delete(m); |
10309 | ············pm.Save(); |
10310 | ············pm.UnloadCache(); |
10311 | ············decimal count; |
10312 | ············count = (decimal) new NDOQuery<AgrDirnTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10313 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10314 | ············count = (decimal) new NDOQuery<AgrDirnTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10315 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10316 | ········} |
10317 | ········catch (Exception) |
10318 | ········{ |
10319 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10320 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10321 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10322 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
10323 | ········} |
10324 | ····} |
10325 | ····[Test] |
10326 | ····public void TestSaveReload() |
10327 | ····{ |
10328 | ········CreateObjects(); |
10329 | ········QueryOwn(); |
10330 | Assert. NotNull( ownVar, "No Query Result") ; |
10331 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10332 | ····} |
10333 | ····[Test] |
10334 | ····public void TestSaveReloadNull() |
10335 | ····{ |
10336 | ········CreateObjects(); |
10337 | ········QueryOwn(); |
10338 | Assert. NotNull( ownVar, "No Query Result") ; |
10339 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10340 | ········ownVar.RelField = new List<AgrDirnTblGuidRight>(); |
10341 | ········pm.Save(); |
10342 | ········pm.UnloadCache(); |
10343 | ········QueryOwn(); |
10344 | Assert. NotNull( ownVar, "No Query Result") ; |
10345 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10346 | ····} |
10347 | ····[Test] |
10348 | ····public void TestSaveReloadRemove() |
10349 | ····{ |
10350 | ········CreateObjects(); |
10351 | ········QueryOwn(); |
10352 | Assert. NotNull( ownVar, "No Query Result") ; |
10353 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10354 | ········ownVar.RemoveRelatedObject(); |
10355 | ········pm.Save(); |
10356 | ········pm.UnloadCache(); |
10357 | ········QueryOwn(); |
10358 | Assert. NotNull( ownVar, "No Query Result") ; |
10359 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10360 | ····} |
10361 | ····void CreateObjects() |
10362 | ····{ |
10363 | ········pm.MakePersistent(ownVar); |
10364 | ········pm.MakePersistent(otherVar); |
10365 | ········ownVar.AssignRelation(otherVar); |
10366 | ········pm.Save(); |
10367 | ········pm.UnloadCache(); |
10368 | ····} |
10369 | ····void QueryOwn() |
10370 | ····{ |
10371 | ········var q = new NDOQuery<AgrDirnTblGuidLeft>(pm); |
10372 | ········ownVar = q.ExecuteSingle(); |
10373 | ····} |
10374 | ····void QueryOther() |
10375 | ····{ |
10376 | ········var q = new NDOQuery<AgrDirnTblGuidRight>(pm); |
10377 | ········otherVar = q.ExecuteSingle(); |
10378 | ····} |
10379 | } |
10380 | |
10381 | |
10382 | [TestFixture] |
10383 | public class TestAgrBin1NoTblGuid |
10384 | { |
10385 | ····AgrBin1NoTblGuidLeft ownVar; |
10386 | ····AgrBin1NoTblGuidRight otherVar; |
10387 | ····PersistenceManager pm; |
10388 | ····[SetUp] |
10389 | ····public void Setup() |
10390 | ····{ |
10391 | ········pm = PmFactory.NewPersistenceManager(); |
10392 | ········ownVar = new AgrBin1NoTblGuidLeft(); |
10393 | ········otherVar = new AgrBin1NoTblGuidRight(); |
10394 | ····} |
10395 | ····[TearDown] |
10396 | ····public void TearDown() |
10397 | ····{ |
10398 | ········try |
10399 | ········{ |
10400 | ············pm.UnloadCache(); |
10401 | ············var l = pm.Objects<AgrBin1NoTblGuidLeft>().ResultTable; |
10402 | ············pm.Delete(l); |
10403 | ············pm.Save(); |
10404 | ············pm.UnloadCache(); |
10405 | ············var m = pm.Objects<AgrBin1NoTblGuidRight>().ResultTable; |
10406 | ············pm.Delete(m); |
10407 | ············pm.Save(); |
10408 | ············pm.UnloadCache(); |
10409 | ············decimal count; |
10410 | ············count = (decimal) new NDOQuery<AgrBin1NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10411 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10412 | ············count = (decimal) new NDOQuery<AgrBin1NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10413 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10414 | ········} |
10415 | ········catch (Exception) |
10416 | ········{ |
10417 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10418 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10419 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10420 | ········} |
10421 | ····} |
10422 | ····[Test] |
10423 | ····public void TestSaveReload() |
10424 | ····{ |
10425 | ········CreateObjects(); |
10426 | ········QueryOwn(); |
10427 | Assert. NotNull( ownVar, "No Query Result") ; |
10428 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10429 | ····} |
10430 | ····[Test] |
10431 | ····public void TestSaveReloadNull() |
10432 | ····{ |
10433 | ········CreateObjects(); |
10434 | ········QueryOwn(); |
10435 | Assert. NotNull( ownVar, "No Query Result") ; |
10436 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10437 | ········ownVar.RelField = new List<AgrBin1NoTblGuidRight>(); |
10438 | ········pm.Save(); |
10439 | ········pm.UnloadCache(); |
10440 | ········QueryOwn(); |
10441 | Assert. NotNull( ownVar, "No Query Result") ; |
10442 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10443 | ····} |
10444 | ····[Test] |
10445 | ····public void TestSaveReloadRemove() |
10446 | ····{ |
10447 | ········CreateObjects(); |
10448 | ········QueryOwn(); |
10449 | Assert. NotNull( ownVar, "No Query Result") ; |
10450 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10451 | ········ownVar.RemoveRelatedObject(); |
10452 | ········pm.Save(); |
10453 | ········pm.UnloadCache(); |
10454 | ········QueryOwn(); |
10455 | Assert. NotNull( ownVar, "No Query Result") ; |
10456 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10457 | ····} |
10458 | ····[Test] |
10459 | ····public void TestChangeKeyHolderRight() |
10460 | ····{ |
10461 | ········CreateObjects(); |
10462 | ········QueryOther(); |
10463 | Assert. NotNull( otherVar, "No Query Result") ; |
10464 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10465 | ········int x = otherVar.RelField.Dummy; |
10466 | ········otherVar.Dummy = 4711; |
10467 | ········pm.Save(); |
10468 | ········pm.UnloadCache(); |
10469 | ········QueryOther(); |
10470 | Assert. NotNull( otherVar, "No Query Result") ; |
10471 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10472 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10473 | ····} |
10474 | ····[Test] |
10475 | ····public void TestChangeKeyHolderRightNoTouch() |
10476 | ····{ |
10477 | ········CreateObjects(); |
10478 | ········QueryOther(); |
10479 | Assert. NotNull( otherVar, "No Query Result") ; |
10480 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10481 | ········otherVar.Dummy = 4711; |
10482 | ········pm.Save(); |
10483 | ········pm.UnloadCache(); |
10484 | ········QueryOther(); |
10485 | Assert. NotNull( otherVar, "No Query Result") ; |
10486 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10487 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10488 | ····} |
10489 | ····[Test] |
10490 | ····public void TestRelationHash() |
10491 | ····{ |
10492 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1NoTblGuidLeft)); |
10493 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10494 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1NoTblGuidRight)); |
10495 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10496 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10497 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10498 | ····} |
10499 | ····void CreateObjects() |
10500 | ····{ |
10501 | ········pm.MakePersistent(ownVar); |
10502 | ········pm.MakePersistent(otherVar); |
10503 | ········ownVar.AssignRelation(otherVar); |
10504 | ········pm.Save(); |
10505 | ········pm.UnloadCache(); |
10506 | ····} |
10507 | ····void QueryOwn() |
10508 | ····{ |
10509 | ········var q = new NDOQuery<AgrBin1NoTblGuidLeft>(pm); |
10510 | ········ownVar = q.ExecuteSingle(); |
10511 | ····} |
10512 | ····void QueryOther() |
10513 | ····{ |
10514 | ········var q = new NDOQuery<AgrBin1NoTblGuidRight>(pm); |
10515 | ········otherVar = q.ExecuteSingle(); |
10516 | ····} |
10517 | } |
10518 | |
10519 | |
10520 | [TestFixture] |
10521 | public class TestAgrBin1TblGuid |
10522 | { |
10523 | ····AgrBin1TblGuidLeft ownVar; |
10524 | ····AgrBin1TblGuidRight otherVar; |
10525 | ····PersistenceManager pm; |
10526 | ····[SetUp] |
10527 | ····public void Setup() |
10528 | ····{ |
10529 | ········pm = PmFactory.NewPersistenceManager(); |
10530 | ········ownVar = new AgrBin1TblGuidLeft(); |
10531 | ········otherVar = new AgrBin1TblGuidRight(); |
10532 | ····} |
10533 | ····[TearDown] |
10534 | ····public void TearDown() |
10535 | ····{ |
10536 | ········try |
10537 | ········{ |
10538 | ············pm.UnloadCache(); |
10539 | ············var l = pm.Objects<AgrBin1TblGuidLeft>().ResultTable; |
10540 | ············pm.Delete(l); |
10541 | ············pm.Save(); |
10542 | ············pm.UnloadCache(); |
10543 | ············var m = pm.Objects<AgrBin1TblGuidRight>().ResultTable; |
10544 | ············pm.Delete(m); |
10545 | ············pm.Save(); |
10546 | ············pm.UnloadCache(); |
10547 | ············decimal count; |
10548 | ············count = (decimal) new NDOQuery<AgrBin1TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10549 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10550 | ············count = (decimal) new NDOQuery<AgrBin1TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10551 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10552 | ········} |
10553 | ········catch (Exception) |
10554 | ········{ |
10555 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10556 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10557 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10558 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
10559 | ········} |
10560 | ····} |
10561 | ····[Test] |
10562 | ····public void TestSaveReload() |
10563 | ····{ |
10564 | ········CreateObjects(); |
10565 | ········QueryOwn(); |
10566 | Assert. NotNull( ownVar, "No Query Result") ; |
10567 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10568 | ····} |
10569 | ····[Test] |
10570 | ····public void TestSaveReloadNull() |
10571 | ····{ |
10572 | ········CreateObjects(); |
10573 | ········QueryOwn(); |
10574 | Assert. NotNull( ownVar, "No Query Result") ; |
10575 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10576 | ········ownVar.RelField = new List<AgrBin1TblGuidRight>(); |
10577 | ········pm.Save(); |
10578 | ········pm.UnloadCache(); |
10579 | ········QueryOwn(); |
10580 | Assert. NotNull( ownVar, "No Query Result") ; |
10581 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10582 | ····} |
10583 | ····[Test] |
10584 | ····public void TestSaveReloadRemove() |
10585 | ····{ |
10586 | ········CreateObjects(); |
10587 | ········QueryOwn(); |
10588 | Assert. NotNull( ownVar, "No Query Result") ; |
10589 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10590 | ········ownVar.RemoveRelatedObject(); |
10591 | ········pm.Save(); |
10592 | ········pm.UnloadCache(); |
10593 | ········QueryOwn(); |
10594 | Assert. NotNull( ownVar, "No Query Result") ; |
10595 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10596 | ····} |
10597 | ····[Test] |
10598 | ····public void TestChangeKeyHolderRight() |
10599 | ····{ |
10600 | ········CreateObjects(); |
10601 | ········QueryOther(); |
10602 | Assert. NotNull( otherVar, "No Query Result") ; |
10603 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10604 | ········int x = otherVar.RelField.Dummy; |
10605 | ········otherVar.Dummy = 4711; |
10606 | ········pm.Save(); |
10607 | ········pm.UnloadCache(); |
10608 | ········QueryOther(); |
10609 | Assert. NotNull( otherVar, "No Query Result") ; |
10610 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10611 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10612 | ····} |
10613 | ····[Test] |
10614 | ····public void TestChangeKeyHolderRightNoTouch() |
10615 | ····{ |
10616 | ········CreateObjects(); |
10617 | ········QueryOther(); |
10618 | Assert. NotNull( otherVar, "No Query Result") ; |
10619 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10620 | ········otherVar.Dummy = 4711; |
10621 | ········pm.Save(); |
10622 | ········pm.UnloadCache(); |
10623 | ········QueryOther(); |
10624 | Assert. NotNull( otherVar, "No Query Result") ; |
10625 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
10626 | Assert. NotNull( otherVar. RelField, "No related object") ; |
10627 | ····} |
10628 | ····[Test] |
10629 | ····public void TestRelationHash() |
10630 | ····{ |
10631 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBin1TblGuidLeft)); |
10632 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10633 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBin1TblGuidRight)); |
10634 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10635 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10636 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10637 | ····} |
10638 | ····void CreateObjects() |
10639 | ····{ |
10640 | ········pm.MakePersistent(ownVar); |
10641 | ········pm.MakePersistent(otherVar); |
10642 | ········ownVar.AssignRelation(otherVar); |
10643 | ········pm.Save(); |
10644 | ········pm.UnloadCache(); |
10645 | ····} |
10646 | ····void QueryOwn() |
10647 | ····{ |
10648 | ········var q = new NDOQuery<AgrBin1TblGuidLeft>(pm); |
10649 | ········ownVar = q.ExecuteSingle(); |
10650 | ····} |
10651 | ····void QueryOther() |
10652 | ····{ |
10653 | ········var q = new NDOQuery<AgrBin1TblGuidRight>(pm); |
10654 | ········otherVar = q.ExecuteSingle(); |
10655 | ····} |
10656 | } |
10657 | |
10658 | |
10659 | [TestFixture] |
10660 | public class TestAgrBi1nNoTblGuid |
10661 | { |
10662 | ····AgrBi1nNoTblGuidLeft ownVar; |
10663 | ····AgrBi1nNoTblGuidRight otherVar; |
10664 | ····PersistenceManager pm; |
10665 | ····[SetUp] |
10666 | ····public void Setup() |
10667 | ····{ |
10668 | ········pm = PmFactory.NewPersistenceManager(); |
10669 | ········ownVar = new AgrBi1nNoTblGuidLeft(); |
10670 | ········otherVar = new AgrBi1nNoTblGuidRight(); |
10671 | ····} |
10672 | ····[TearDown] |
10673 | ····public void TearDown() |
10674 | ····{ |
10675 | ········try |
10676 | ········{ |
10677 | ············pm.UnloadCache(); |
10678 | ············var l = pm.Objects<AgrBi1nNoTblGuidLeft>().ResultTable; |
10679 | ············pm.Delete(l); |
10680 | ············pm.Save(); |
10681 | ············pm.UnloadCache(); |
10682 | ············var m = pm.Objects<AgrBi1nNoTblGuidRight>().ResultTable; |
10683 | ············pm.Delete(m); |
10684 | ············pm.Save(); |
10685 | ············pm.UnloadCache(); |
10686 | ············decimal count; |
10687 | ············count = (decimal) new NDOQuery<AgrBi1nNoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10688 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10689 | ············count = (decimal) new NDOQuery<AgrBi1nNoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10690 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10691 | ········} |
10692 | ········catch (Exception) |
10693 | ········{ |
10694 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10695 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10696 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10697 | ········} |
10698 | ····} |
10699 | ····[Test] |
10700 | ····public void TestSaveReload() |
10701 | ····{ |
10702 | ········CreateObjects(); |
10703 | ········QueryOwn(); |
10704 | Assert. NotNull( ownVar, "No Query Result") ; |
10705 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10706 | ····} |
10707 | ····[Test] |
10708 | ····public void TestSaveReloadNull() |
10709 | ····{ |
10710 | ········CreateObjects(); |
10711 | ········QueryOwn(); |
10712 | Assert. NotNull( ownVar, "No Query Result") ; |
10713 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10714 | ········ownVar.RelField = null; |
10715 | ········pm.Save(); |
10716 | ········pm.UnloadCache(); |
10717 | ········QueryOwn(); |
10718 | Assert. NotNull( ownVar, "No Query Result") ; |
10719 | Assert. Null( ownVar. RelField, "There should be no object") ; |
10720 | ····} |
10721 | ····[Test] |
10722 | ····public void TestChangeKeyHolderLeft() |
10723 | ····{ |
10724 | ········CreateObjects(); |
10725 | ········QueryOwn(); |
10726 | Assert. NotNull( ownVar, "No Query Result") ; |
10727 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10728 | ········int x = ownVar.RelField.Dummy; |
10729 | ········ownVar.Dummy = 4711; |
10730 | ········pm.Save(); |
10731 | ········pm.UnloadCache(); |
10732 | ········QueryOwn(); |
10733 | Assert. NotNull( ownVar, "No Query Result") ; |
10734 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10735 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10736 | ····} |
10737 | ····[Test] |
10738 | ····public void TestChangeKeyHolderLeftNoTouch() |
10739 | ····{ |
10740 | ········CreateObjects(); |
10741 | ········QueryOwn(); |
10742 | Assert. NotNull( ownVar, "No Query Result") ; |
10743 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10744 | ········ownVar.Dummy = 4711; |
10745 | ········pm.Save(); |
10746 | ········pm.UnloadCache(); |
10747 | ········QueryOwn(); |
10748 | Assert. NotNull( ownVar, "No Query Result") ; |
10749 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10750 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10751 | ····} |
10752 | ····[Test] |
10753 | ····public void TestRelationHash() |
10754 | ····{ |
10755 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nNoTblGuidLeft)); |
10756 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10757 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nNoTblGuidRight)); |
10758 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10759 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10760 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10761 | ····} |
10762 | ····void CreateObjects() |
10763 | ····{ |
10764 | ········pm.MakePersistent(ownVar); |
10765 | ········pm.MakePersistent(otherVar); |
10766 | ········ownVar.AssignRelation(otherVar); |
10767 | ········pm.Save(); |
10768 | ········pm.UnloadCache(); |
10769 | ····} |
10770 | ····void QueryOwn() |
10771 | ····{ |
10772 | ········var q = new NDOQuery<AgrBi1nNoTblGuidLeft>(pm); |
10773 | ········ownVar = q.ExecuteSingle(); |
10774 | ····} |
10775 | ····void QueryOther() |
10776 | ····{ |
10777 | ········var q = new NDOQuery<AgrBi1nNoTblGuidRight>(pm); |
10778 | ········otherVar = q.ExecuteSingle(); |
10779 | ····} |
10780 | } |
10781 | |
10782 | |
10783 | [TestFixture] |
10784 | public class TestAgrBi1nTblGuid |
10785 | { |
10786 | ····AgrBi1nTblGuidLeft ownVar; |
10787 | ····AgrBi1nTblGuidRight otherVar; |
10788 | ····PersistenceManager pm; |
10789 | ····[SetUp] |
10790 | ····public void Setup() |
10791 | ····{ |
10792 | ········pm = PmFactory.NewPersistenceManager(); |
10793 | ········ownVar = new AgrBi1nTblGuidLeft(); |
10794 | ········otherVar = new AgrBi1nTblGuidRight(); |
10795 | ····} |
10796 | ····[TearDown] |
10797 | ····public void TearDown() |
10798 | ····{ |
10799 | ········try |
10800 | ········{ |
10801 | ············pm.UnloadCache(); |
10802 | ············var l = pm.Objects<AgrBi1nTblGuidLeft>().ResultTable; |
10803 | ············pm.Delete(l); |
10804 | ············pm.Save(); |
10805 | ············pm.UnloadCache(); |
10806 | ············var m = pm.Objects<AgrBi1nTblGuidRight>().ResultTable; |
10807 | ············pm.Delete(m); |
10808 | ············pm.Save(); |
10809 | ············pm.UnloadCache(); |
10810 | ············decimal count; |
10811 | ············count = (decimal) new NDOQuery<AgrBi1nTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10812 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10813 | ············count = (decimal) new NDOQuery<AgrBi1nTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10814 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10815 | ········} |
10816 | ········catch (Exception) |
10817 | ········{ |
10818 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10819 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10820 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10821 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
10822 | ········} |
10823 | ····} |
10824 | ····[Test] |
10825 | ····public void TestSaveReload() |
10826 | ····{ |
10827 | ········CreateObjects(); |
10828 | ········QueryOwn(); |
10829 | Assert. NotNull( ownVar, "No Query Result") ; |
10830 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10831 | ····} |
10832 | ····[Test] |
10833 | ····public void TestSaveReloadNull() |
10834 | ····{ |
10835 | ········CreateObjects(); |
10836 | ········QueryOwn(); |
10837 | Assert. NotNull( ownVar, "No Query Result") ; |
10838 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10839 | ········ownVar.RelField = null; |
10840 | ········pm.Save(); |
10841 | ········pm.UnloadCache(); |
10842 | ········QueryOwn(); |
10843 | Assert. NotNull( ownVar, "No Query Result") ; |
10844 | Assert. Null( ownVar. RelField, "There should be no object") ; |
10845 | ····} |
10846 | ····[Test] |
10847 | ····public void TestChangeKeyHolderLeft() |
10848 | ····{ |
10849 | ········CreateObjects(); |
10850 | ········QueryOwn(); |
10851 | Assert. NotNull( ownVar, "No Query Result") ; |
10852 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10853 | ········int x = ownVar.RelField.Dummy; |
10854 | ········ownVar.Dummy = 4711; |
10855 | ········pm.Save(); |
10856 | ········pm.UnloadCache(); |
10857 | ········QueryOwn(); |
10858 | Assert. NotNull( ownVar, "No Query Result") ; |
10859 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10860 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10861 | ····} |
10862 | ····[Test] |
10863 | ····public void TestChangeKeyHolderLeftNoTouch() |
10864 | ····{ |
10865 | ········CreateObjects(); |
10866 | ········QueryOwn(); |
10867 | Assert. NotNull( ownVar, "No Query Result") ; |
10868 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10869 | ········ownVar.Dummy = 4711; |
10870 | ········pm.Save(); |
10871 | ········pm.UnloadCache(); |
10872 | ········QueryOwn(); |
10873 | Assert. NotNull( ownVar, "No Query Result") ; |
10874 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
10875 | Assert. NotNull( ownVar. RelField, "No related object") ; |
10876 | ····} |
10877 | ····[Test] |
10878 | ····public void TestRelationHash() |
10879 | ····{ |
10880 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBi1nTblGuidLeft)); |
10881 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10882 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBi1nTblGuidRight)); |
10883 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10884 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10885 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10886 | ····} |
10887 | ····void CreateObjects() |
10888 | ····{ |
10889 | ········pm.MakePersistent(ownVar); |
10890 | ········pm.MakePersistent(otherVar); |
10891 | ········ownVar.AssignRelation(otherVar); |
10892 | ········pm.Save(); |
10893 | ········pm.UnloadCache(); |
10894 | ····} |
10895 | ····void QueryOwn() |
10896 | ····{ |
10897 | ········var q = new NDOQuery<AgrBi1nTblGuidLeft>(pm); |
10898 | ········ownVar = q.ExecuteSingle(); |
10899 | ····} |
10900 | ····void QueryOther() |
10901 | ····{ |
10902 | ········var q = new NDOQuery<AgrBi1nTblGuidRight>(pm); |
10903 | ········otherVar = q.ExecuteSingle(); |
10904 | ····} |
10905 | } |
10906 | |
10907 | |
10908 | [TestFixture] |
10909 | public class TestAgrBinnTblGuid |
10910 | { |
10911 | ····AgrBinnTblGuidLeft ownVar; |
10912 | ····AgrBinnTblGuidRight otherVar; |
10913 | ····PersistenceManager pm; |
10914 | ····[SetUp] |
10915 | ····public void Setup() |
10916 | ····{ |
10917 | ········pm = PmFactory.NewPersistenceManager(); |
10918 | ········ownVar = new AgrBinnTblGuidLeft(); |
10919 | ········otherVar = new AgrBinnTblGuidRight(); |
10920 | ····} |
10921 | ····[TearDown] |
10922 | ····public void TearDown() |
10923 | ····{ |
10924 | ········try |
10925 | ········{ |
10926 | ············pm.UnloadCache(); |
10927 | ············var l = pm.Objects<AgrBinnTblGuidLeft>().ResultTable; |
10928 | ············pm.Delete(l); |
10929 | ············pm.Save(); |
10930 | ············pm.UnloadCache(); |
10931 | ············var m = pm.Objects<AgrBinnTblGuidRight>().ResultTable; |
10932 | ············pm.Delete(m); |
10933 | ············pm.Save(); |
10934 | ············pm.UnloadCache(); |
10935 | ············decimal count; |
10936 | ············count = (decimal) new NDOQuery<AgrBinnTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10937 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
10938 | ············count = (decimal) new NDOQuery<AgrBinnTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
10939 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
10940 | ········} |
10941 | ········catch (Exception) |
10942 | ········{ |
10943 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
10944 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
10945 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
10946 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
10947 | ········} |
10948 | ····} |
10949 | ····[Test] |
10950 | ····public void TestSaveReload() |
10951 | ····{ |
10952 | ········CreateObjects(); |
10953 | ········QueryOwn(); |
10954 | Assert. NotNull( ownVar, "No Query Result") ; |
10955 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10956 | ····} |
10957 | ····[Test] |
10958 | ····public void TestSaveReloadNull() |
10959 | ····{ |
10960 | ········CreateObjects(); |
10961 | ········QueryOwn(); |
10962 | Assert. NotNull( ownVar, "No Query Result") ; |
10963 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10964 | ········ownVar.RelField = new List<AgrBinnTblGuidRight>(); |
10965 | ········pm.Save(); |
10966 | ········pm.UnloadCache(); |
10967 | ········QueryOwn(); |
10968 | Assert. NotNull( ownVar, "No Query Result") ; |
10969 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10970 | ····} |
10971 | ····[Test] |
10972 | ····public void TestSaveReloadRemove() |
10973 | ····{ |
10974 | ········CreateObjects(); |
10975 | ········QueryOwn(); |
10976 | Assert. NotNull( ownVar, "No Query Result") ; |
10977 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
10978 | ········ownVar.RemoveRelatedObject(); |
10979 | ········pm.Save(); |
10980 | ········pm.UnloadCache(); |
10981 | ········QueryOwn(); |
10982 | Assert. NotNull( ownVar, "No Query Result") ; |
10983 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
10984 | ····} |
10985 | ····[Test] |
10986 | ····public void TestRelationHash() |
10987 | ····{ |
10988 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(AgrBinnTblGuidLeft)); |
10989 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
10990 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(AgrBinnTblGuidRight)); |
10991 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
10992 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
10993 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
10994 | ····} |
10995 | ····void CreateObjects() |
10996 | ····{ |
10997 | ········pm.MakePersistent(ownVar); |
10998 | ········pm.MakePersistent(otherVar); |
10999 | ········ownVar.AssignRelation(otherVar); |
11000 | ········pm.Save(); |
11001 | ········pm.UnloadCache(); |
11002 | ····} |
11003 | ····void QueryOwn() |
11004 | ····{ |
11005 | ········var q = new NDOQuery<AgrBinnTblGuidLeft>(pm); |
11006 | ········ownVar = q.ExecuteSingle(); |
11007 | ····} |
11008 | ····void QueryOther() |
11009 | ····{ |
11010 | ········var q = new NDOQuery<AgrBinnTblGuidRight>(pm); |
11011 | ········otherVar = q.ExecuteSingle(); |
11012 | ····} |
11013 | } |
11014 | |
11015 | |
11016 | [TestFixture] |
11017 | public class TestCmpDir1NoTblGuid |
11018 | { |
11019 | ····CmpDir1NoTblGuidLeft ownVar; |
11020 | ····CmpDir1NoTblGuidRight otherVar; |
11021 | ····PersistenceManager pm; |
11022 | ····[SetUp] |
11023 | ····public void Setup() |
11024 | ····{ |
11025 | ········pm = PmFactory.NewPersistenceManager(); |
11026 | ········ownVar = new CmpDir1NoTblGuidLeft(); |
11027 | ········otherVar = new CmpDir1NoTblGuidRight(); |
11028 | ····} |
11029 | ····[TearDown] |
11030 | ····public void TearDown() |
11031 | ····{ |
11032 | ········try |
11033 | ········{ |
11034 | ············pm.UnloadCache(); |
11035 | ············var l = pm.Objects<CmpDir1NoTblGuidLeft>().ResultTable; |
11036 | ············pm.Delete(l); |
11037 | ············pm.Save(); |
11038 | ············pm.UnloadCache(); |
11039 | ············decimal count; |
11040 | ············count = (decimal) new NDOQuery<CmpDir1NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11041 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11042 | ············count = (decimal) new NDOQuery<CmpDir1NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11043 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11044 | ········} |
11045 | ········catch (Exception) |
11046 | ········{ |
11047 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11048 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11049 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11050 | ········} |
11051 | ····} |
11052 | ····[Test] |
11053 | ····public void TestSaveReload() |
11054 | ····{ |
11055 | ········CreateObjects(); |
11056 | ········QueryOwn(); |
11057 | Assert. NotNull( ownVar, "No Query Result") ; |
11058 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11059 | ····} |
11060 | ····[Test] |
11061 | ····public void TestSaveReloadNull() |
11062 | ····{ |
11063 | ········CreateObjects(); |
11064 | ········QueryOwn(); |
11065 | Assert. NotNull( ownVar, "No Query Result") ; |
11066 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11067 | ········ownVar.RelField = null; |
11068 | ········pm.Save(); |
11069 | ········pm.UnloadCache(); |
11070 | ········QueryOwn(); |
11071 | Assert. NotNull( ownVar, "No Query Result") ; |
11072 | Assert. Null( ownVar. RelField, "There should be no object") ; |
11073 | ····} |
11074 | ····[Test] |
11075 | ····public void TestChangeKeyHolderLeft() |
11076 | ····{ |
11077 | ········CreateObjects(); |
11078 | ········QueryOwn(); |
11079 | Assert. NotNull( ownVar, "No Query Result") ; |
11080 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11081 | ········int x = ownVar.RelField.Dummy; |
11082 | ········ownVar.Dummy = 4711; |
11083 | ········pm.Save(); |
11084 | ········pm.UnloadCache(); |
11085 | ········QueryOwn(); |
11086 | Assert. NotNull( ownVar, "No Query Result") ; |
11087 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11088 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11089 | ····} |
11090 | ····[Test] |
11091 | ····public void TestChangeKeyHolderLeftNoTouch() |
11092 | ····{ |
11093 | ········CreateObjects(); |
11094 | ········QueryOwn(); |
11095 | Assert. NotNull( ownVar, "No Query Result") ; |
11096 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11097 | ········ownVar.Dummy = 4711; |
11098 | ········pm.Save(); |
11099 | ········pm.UnloadCache(); |
11100 | ········QueryOwn(); |
11101 | Assert. NotNull( ownVar, "No Query Result") ; |
11102 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11103 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11104 | ····} |
11105 | ····void CreateObjects() |
11106 | ····{ |
11107 | ········pm.MakePersistent(ownVar); |
11108 | ········ownVar.AssignRelation(otherVar); |
11109 | ········pm.Save(); |
11110 | ········pm.UnloadCache(); |
11111 | ····} |
11112 | ····void QueryOwn() |
11113 | ····{ |
11114 | ········var q = new NDOQuery<CmpDir1NoTblGuidLeft>(pm); |
11115 | ········ownVar = q.ExecuteSingle(); |
11116 | ····} |
11117 | ····void QueryOther() |
11118 | ····{ |
11119 | ········var q = new NDOQuery<CmpDir1NoTblGuidRight>(pm); |
11120 | ········otherVar = q.ExecuteSingle(); |
11121 | ····} |
11122 | } |
11123 | |
11124 | |
11125 | [TestFixture] |
11126 | public class TestCmpDir1TblGuid |
11127 | { |
11128 | ····CmpDir1TblGuidLeft ownVar; |
11129 | ····CmpDir1TblGuidRight otherVar; |
11130 | ····PersistenceManager pm; |
11131 | ····[SetUp] |
11132 | ····public void Setup() |
11133 | ····{ |
11134 | ········pm = PmFactory.NewPersistenceManager(); |
11135 | ········ownVar = new CmpDir1TblGuidLeft(); |
11136 | ········otherVar = new CmpDir1TblGuidRight(); |
11137 | ····} |
11138 | ····[TearDown] |
11139 | ····public void TearDown() |
11140 | ····{ |
11141 | ········try |
11142 | ········{ |
11143 | ············pm.UnloadCache(); |
11144 | ············var l = pm.Objects<CmpDir1TblGuidLeft>().ResultTable; |
11145 | ············pm.Delete(l); |
11146 | ············pm.Save(); |
11147 | ············pm.UnloadCache(); |
11148 | ············decimal count; |
11149 | ············count = (decimal) new NDOQuery<CmpDir1TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11150 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11151 | ············count = (decimal) new NDOQuery<CmpDir1TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11152 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11153 | ········} |
11154 | ········catch (Exception) |
11155 | ········{ |
11156 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11157 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11158 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11159 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
11160 | ········} |
11161 | ····} |
11162 | ····[Test] |
11163 | ····public void TestSaveReload() |
11164 | ····{ |
11165 | ········CreateObjects(); |
11166 | ········QueryOwn(); |
11167 | Assert. NotNull( ownVar, "No Query Result") ; |
11168 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11169 | ····} |
11170 | ····[Test] |
11171 | ····public void TestSaveReloadNull() |
11172 | ····{ |
11173 | ········CreateObjects(); |
11174 | ········QueryOwn(); |
11175 | Assert. NotNull( ownVar, "No Query Result") ; |
11176 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11177 | ········ownVar.RelField = null; |
11178 | ········pm.Save(); |
11179 | ········pm.UnloadCache(); |
11180 | ········QueryOwn(); |
11181 | Assert. NotNull( ownVar, "No Query Result") ; |
11182 | Assert. Null( ownVar. RelField, "There should be no object") ; |
11183 | ····} |
11184 | ····[Test] |
11185 | ····public void TestChangeKeyHolderLeft() |
11186 | ····{ |
11187 | ········CreateObjects(); |
11188 | ········QueryOwn(); |
11189 | Assert. NotNull( ownVar, "No Query Result") ; |
11190 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11191 | ········int x = ownVar.RelField.Dummy; |
11192 | ········ownVar.Dummy = 4711; |
11193 | ········pm.Save(); |
11194 | ········pm.UnloadCache(); |
11195 | ········QueryOwn(); |
11196 | Assert. NotNull( ownVar, "No Query Result") ; |
11197 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11198 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11199 | ····} |
11200 | ····[Test] |
11201 | ····public void TestChangeKeyHolderLeftNoTouch() |
11202 | ····{ |
11203 | ········CreateObjects(); |
11204 | ········QueryOwn(); |
11205 | Assert. NotNull( ownVar, "No Query Result") ; |
11206 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11207 | ········ownVar.Dummy = 4711; |
11208 | ········pm.Save(); |
11209 | ········pm.UnloadCache(); |
11210 | ········QueryOwn(); |
11211 | Assert. NotNull( ownVar, "No Query Result") ; |
11212 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11213 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11214 | ····} |
11215 | ····void CreateObjects() |
11216 | ····{ |
11217 | ········pm.MakePersistent(ownVar); |
11218 | ········ownVar.AssignRelation(otherVar); |
11219 | ········pm.Save(); |
11220 | ········pm.UnloadCache(); |
11221 | ····} |
11222 | ····void QueryOwn() |
11223 | ····{ |
11224 | ········var q = new NDOQuery<CmpDir1TblGuidLeft>(pm); |
11225 | ········ownVar = q.ExecuteSingle(); |
11226 | ····} |
11227 | ····void QueryOther() |
11228 | ····{ |
11229 | ········var q = new NDOQuery<CmpDir1TblGuidRight>(pm); |
11230 | ········otherVar = q.ExecuteSingle(); |
11231 | ····} |
11232 | } |
11233 | |
11234 | |
11235 | [TestFixture] |
11236 | public class TestCmpBi11NoTblGuid |
11237 | { |
11238 | ····CmpBi11NoTblGuidLeft ownVar; |
11239 | ····CmpBi11NoTblGuidRight otherVar; |
11240 | ····PersistenceManager pm; |
11241 | ····[SetUp] |
11242 | ····public void Setup() |
11243 | ····{ |
11244 | ········pm = PmFactory.NewPersistenceManager(); |
11245 | ········ownVar = new CmpBi11NoTblGuidLeft(); |
11246 | ········otherVar = new CmpBi11NoTblGuidRight(); |
11247 | ····} |
11248 | ····[TearDown] |
11249 | ····public void TearDown() |
11250 | ····{ |
11251 | ········try |
11252 | ········{ |
11253 | ············pm.UnloadCache(); |
11254 | ············var l = pm.Objects<CmpBi11NoTblGuidLeft>().ResultTable; |
11255 | ············pm.Delete(l); |
11256 | ············pm.Save(); |
11257 | ············pm.UnloadCache(); |
11258 | ············decimal count; |
11259 | ············count = (decimal) new NDOQuery<CmpBi11NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11260 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11261 | ············count = (decimal) new NDOQuery<CmpBi11NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11262 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11263 | ········} |
11264 | ········catch (Exception) |
11265 | ········{ |
11266 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11267 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11268 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11269 | ········} |
11270 | ····} |
11271 | ····[Test] |
11272 | ····public void TestSaveReload() |
11273 | ····{ |
11274 | ········CreateObjects(); |
11275 | ········QueryOwn(); |
11276 | Assert. NotNull( ownVar, "No Query Result") ; |
11277 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11278 | ····} |
11279 | ····[Test] |
11280 | ····public void TestSaveReloadNull() |
11281 | ····{ |
11282 | ········CreateObjects(); |
11283 | ········QueryOwn(); |
11284 | Assert. NotNull( ownVar, "No Query Result") ; |
11285 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11286 | ········ownVar.RelField = null; |
11287 | ········pm.Save(); |
11288 | ········pm.UnloadCache(); |
11289 | ········QueryOwn(); |
11290 | Assert. NotNull( ownVar, "No Query Result") ; |
11291 | Assert. Null( ownVar. RelField, "There should be no object") ; |
11292 | ····} |
11293 | ····[Test] |
11294 | ····public void TestChangeKeyHolderLeft() |
11295 | ····{ |
11296 | ········CreateObjects(); |
11297 | ········QueryOwn(); |
11298 | Assert. NotNull( ownVar, "No Query Result") ; |
11299 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11300 | ········int x = ownVar.RelField.Dummy; |
11301 | ········ownVar.Dummy = 4711; |
11302 | ········pm.Save(); |
11303 | ········pm.UnloadCache(); |
11304 | ········QueryOwn(); |
11305 | Assert. NotNull( ownVar, "No Query Result") ; |
11306 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11307 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11308 | ····} |
11309 | ····[Test] |
11310 | ····public void TestChangeKeyHolderRight() |
11311 | ····{ |
11312 | ········CreateObjects(); |
11313 | ········QueryOther(); |
11314 | Assert. NotNull( otherVar, "No Query Result") ; |
11315 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11316 | ········int x = otherVar.RelField.Dummy; |
11317 | ········otherVar.Dummy = 4711; |
11318 | ········pm.Save(); |
11319 | ········pm.UnloadCache(); |
11320 | ········QueryOther(); |
11321 | Assert. NotNull( otherVar, "No Query Result") ; |
11322 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11323 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11324 | ····} |
11325 | ····[Test] |
11326 | ····public void TestChangeKeyHolderLeftNoTouch() |
11327 | ····{ |
11328 | ········CreateObjects(); |
11329 | ········QueryOwn(); |
11330 | Assert. NotNull( ownVar, "No Query Result") ; |
11331 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11332 | ········ownVar.Dummy = 4711; |
11333 | ········pm.Save(); |
11334 | ········pm.UnloadCache(); |
11335 | ········QueryOwn(); |
11336 | Assert. NotNull( ownVar, "No Query Result") ; |
11337 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11338 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11339 | ····} |
11340 | ····[Test] |
11341 | ····public void TestChangeKeyHolderRightNoTouch() |
11342 | ····{ |
11343 | ········CreateObjects(); |
11344 | ········QueryOther(); |
11345 | Assert. NotNull( otherVar, "No Query Result") ; |
11346 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11347 | ········otherVar.Dummy = 4711; |
11348 | ········pm.Save(); |
11349 | ········pm.UnloadCache(); |
11350 | ········QueryOther(); |
11351 | Assert. NotNull( otherVar, "No Query Result") ; |
11352 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11353 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11354 | ····} |
11355 | ····[Test] |
11356 | ····public void TestRelationHash() |
11357 | ····{ |
11358 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11NoTblGuidLeft)); |
11359 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
11360 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11NoTblGuidRight)); |
11361 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
11362 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
11363 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
11364 | ····} |
11365 | ····void CreateObjects() |
11366 | ····{ |
11367 | ········pm.MakePersistent(ownVar); |
11368 | ········ownVar.AssignRelation(otherVar); |
11369 | ········pm.Save(); |
11370 | ········pm.UnloadCache(); |
11371 | ····} |
11372 | ····void QueryOwn() |
11373 | ····{ |
11374 | ········var q = new NDOQuery<CmpBi11NoTblGuidLeft>(pm); |
11375 | ········ownVar = q.ExecuteSingle(); |
11376 | ····} |
11377 | ····void QueryOther() |
11378 | ····{ |
11379 | ········var q = new NDOQuery<CmpBi11NoTblGuidRight>(pm); |
11380 | ········otherVar = q.ExecuteSingle(); |
11381 | ····} |
11382 | } |
11383 | |
11384 | |
11385 | [TestFixture] |
11386 | public class TestCmpBi11TblGuid |
11387 | { |
11388 | ····CmpBi11TblGuidLeft ownVar; |
11389 | ····CmpBi11TblGuidRight otherVar; |
11390 | ····PersistenceManager pm; |
11391 | ····[SetUp] |
11392 | ····public void Setup() |
11393 | ····{ |
11394 | ········pm = PmFactory.NewPersistenceManager(); |
11395 | ········ownVar = new CmpBi11TblGuidLeft(); |
11396 | ········otherVar = new CmpBi11TblGuidRight(); |
11397 | ····} |
11398 | ····[TearDown] |
11399 | ····public void TearDown() |
11400 | ····{ |
11401 | ········try |
11402 | ········{ |
11403 | ············pm.UnloadCache(); |
11404 | ············var l = pm.Objects<CmpBi11TblGuidLeft>().ResultTable; |
11405 | ············pm.Delete(l); |
11406 | ············pm.Save(); |
11407 | ············pm.UnloadCache(); |
11408 | ············decimal count; |
11409 | ············count = (decimal) new NDOQuery<CmpBi11TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11410 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11411 | ············count = (decimal) new NDOQuery<CmpBi11TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11412 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11413 | ········} |
11414 | ········catch (Exception) |
11415 | ········{ |
11416 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11417 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11418 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11419 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
11420 | ········} |
11421 | ····} |
11422 | ····[Test] |
11423 | ····public void TestSaveReload() |
11424 | ····{ |
11425 | ········CreateObjects(); |
11426 | ········QueryOwn(); |
11427 | Assert. NotNull( ownVar, "No Query Result") ; |
11428 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11429 | ····} |
11430 | ····[Test] |
11431 | ····public void TestSaveReloadNull() |
11432 | ····{ |
11433 | ········CreateObjects(); |
11434 | ········QueryOwn(); |
11435 | Assert. NotNull( ownVar, "No Query Result") ; |
11436 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11437 | ········ownVar.RelField = null; |
11438 | ········pm.Save(); |
11439 | ········pm.UnloadCache(); |
11440 | ········QueryOwn(); |
11441 | Assert. NotNull( ownVar, "No Query Result") ; |
11442 | Assert. Null( ownVar. RelField, "There should be no object") ; |
11443 | ····} |
11444 | ····[Test] |
11445 | ····public void TestChangeKeyHolderLeft() |
11446 | ····{ |
11447 | ········CreateObjects(); |
11448 | ········QueryOwn(); |
11449 | Assert. NotNull( ownVar, "No Query Result") ; |
11450 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11451 | ········int x = ownVar.RelField.Dummy; |
11452 | ········ownVar.Dummy = 4711; |
11453 | ········pm.Save(); |
11454 | ········pm.UnloadCache(); |
11455 | ········QueryOwn(); |
11456 | Assert. NotNull( ownVar, "No Query Result") ; |
11457 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11458 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11459 | ····} |
11460 | ····[Test] |
11461 | ····public void TestChangeKeyHolderRight() |
11462 | ····{ |
11463 | ········CreateObjects(); |
11464 | ········QueryOther(); |
11465 | Assert. NotNull( otherVar, "No Query Result") ; |
11466 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11467 | ········int x = otherVar.RelField.Dummy; |
11468 | ········otherVar.Dummy = 4711; |
11469 | ········pm.Save(); |
11470 | ········pm.UnloadCache(); |
11471 | ········QueryOther(); |
11472 | Assert. NotNull( otherVar, "No Query Result") ; |
11473 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11474 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11475 | ····} |
11476 | ····[Test] |
11477 | ····public void TestChangeKeyHolderLeftNoTouch() |
11478 | ····{ |
11479 | ········CreateObjects(); |
11480 | ········QueryOwn(); |
11481 | Assert. NotNull( ownVar, "No Query Result") ; |
11482 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11483 | ········ownVar.Dummy = 4711; |
11484 | ········pm.Save(); |
11485 | ········pm.UnloadCache(); |
11486 | ········QueryOwn(); |
11487 | Assert. NotNull( ownVar, "No Query Result") ; |
11488 | Assert. NotNull( ownVar. Dummy == 4711, "Wrong value") ; |
11489 | Assert. NotNull( ownVar. RelField, "No related object") ; |
11490 | ····} |
11491 | ····[Test] |
11492 | ····public void TestChangeKeyHolderRightNoTouch() |
11493 | ····{ |
11494 | ········CreateObjects(); |
11495 | ········QueryOther(); |
11496 | Assert. NotNull( otherVar, "No Query Result") ; |
11497 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11498 | ········otherVar.Dummy = 4711; |
11499 | ········pm.Save(); |
11500 | ········pm.UnloadCache(); |
11501 | ········QueryOther(); |
11502 | Assert. NotNull( otherVar, "No Query Result") ; |
11503 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11504 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11505 | ····} |
11506 | ····[Test] |
11507 | ····public void TestRelationHash() |
11508 | ····{ |
11509 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBi11TblGuidLeft)); |
11510 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
11511 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBi11TblGuidRight)); |
11512 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
11513 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
11514 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
11515 | ····} |
11516 | ····void CreateObjects() |
11517 | ····{ |
11518 | ········pm.MakePersistent(ownVar); |
11519 | ········ownVar.AssignRelation(otherVar); |
11520 | ········pm.Save(); |
11521 | ········pm.UnloadCache(); |
11522 | ····} |
11523 | ····void QueryOwn() |
11524 | ····{ |
11525 | ········var q = new NDOQuery<CmpBi11TblGuidLeft>(pm); |
11526 | ········ownVar = q.ExecuteSingle(); |
11527 | ····} |
11528 | ····void QueryOther() |
11529 | ····{ |
11530 | ········var q = new NDOQuery<CmpBi11TblGuidRight>(pm); |
11531 | ········otherVar = q.ExecuteSingle(); |
11532 | ····} |
11533 | } |
11534 | |
11535 | |
11536 | [TestFixture] |
11537 | public class TestCmpDirnNoTblGuid |
11538 | { |
11539 | ····CmpDirnNoTblGuidLeft ownVar; |
11540 | ····CmpDirnNoTblGuidRight otherVar; |
11541 | ····PersistenceManager pm; |
11542 | ····[SetUp] |
11543 | ····public void Setup() |
11544 | ····{ |
11545 | ········pm = PmFactory.NewPersistenceManager(); |
11546 | ········ownVar = new CmpDirnNoTblGuidLeft(); |
11547 | ········otherVar = new CmpDirnNoTblGuidRight(); |
11548 | ····} |
11549 | ····[TearDown] |
11550 | ····public void TearDown() |
11551 | ····{ |
11552 | ········try |
11553 | ········{ |
11554 | ············pm.UnloadCache(); |
11555 | ············var l = pm.Objects<CmpDirnNoTblGuidLeft>().ResultTable; |
11556 | ············pm.Delete(l); |
11557 | ············pm.Save(); |
11558 | ············pm.UnloadCache(); |
11559 | ············decimal count; |
11560 | ············count = (decimal) new NDOQuery<CmpDirnNoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11561 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11562 | ············count = (decimal) new NDOQuery<CmpDirnNoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11563 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11564 | ········} |
11565 | ········catch (Exception) |
11566 | ········{ |
11567 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11568 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11569 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11570 | ········} |
11571 | ····} |
11572 | ····[Test] |
11573 | ····public void TestSaveReload() |
11574 | ····{ |
11575 | ········CreateObjects(); |
11576 | ········QueryOwn(); |
11577 | Assert. NotNull( ownVar, "No Query Result") ; |
11578 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11579 | ····} |
11580 | ····[Test] |
11581 | ····public void TestSaveReloadNull() |
11582 | ····{ |
11583 | ········CreateObjects(); |
11584 | ········QueryOwn(); |
11585 | Assert. NotNull( ownVar, "No Query Result") ; |
11586 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11587 | ········ownVar.RelField = new List<CmpDirnNoTblGuidRight>(); |
11588 | ········pm.Save(); |
11589 | ········pm.UnloadCache(); |
11590 | ········QueryOwn(); |
11591 | Assert. NotNull( ownVar, "No Query Result") ; |
11592 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11593 | ····} |
11594 | ····[Test] |
11595 | ····public void TestSaveReloadRemove() |
11596 | ····{ |
11597 | ········CreateObjects(); |
11598 | ········QueryOwn(); |
11599 | Assert. NotNull( ownVar, "No Query Result") ; |
11600 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11601 | ········ownVar.RemoveRelatedObject(); |
11602 | ········pm.Save(); |
11603 | ········pm.UnloadCache(); |
11604 | ········QueryOwn(); |
11605 | Assert. NotNull( ownVar, "No Query Result") ; |
11606 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11607 | ····} |
11608 | ····void CreateObjects() |
11609 | ····{ |
11610 | ········pm.MakePersistent(ownVar); |
11611 | ········ownVar.AssignRelation(otherVar); |
11612 | ········pm.Save(); |
11613 | ········pm.UnloadCache(); |
11614 | ····} |
11615 | ····void QueryOwn() |
11616 | ····{ |
11617 | ········var q = new NDOQuery<CmpDirnNoTblGuidLeft>(pm); |
11618 | ········ownVar = q.ExecuteSingle(); |
11619 | ····} |
11620 | ····void QueryOther() |
11621 | ····{ |
11622 | ········var q = new NDOQuery<CmpDirnNoTblGuidRight>(pm); |
11623 | ········otherVar = q.ExecuteSingle(); |
11624 | ····} |
11625 | } |
11626 | |
11627 | |
11628 | [TestFixture] |
11629 | public class TestCmpDirnTblGuid |
11630 | { |
11631 | ····CmpDirnTblGuidLeft ownVar; |
11632 | ····CmpDirnTblGuidRight otherVar; |
11633 | ····PersistenceManager pm; |
11634 | ····[SetUp] |
11635 | ····public void Setup() |
11636 | ····{ |
11637 | ········pm = PmFactory.NewPersistenceManager(); |
11638 | ········ownVar = new CmpDirnTblGuidLeft(); |
11639 | ········otherVar = new CmpDirnTblGuidRight(); |
11640 | ····} |
11641 | ····[TearDown] |
11642 | ····public void TearDown() |
11643 | ····{ |
11644 | ········try |
11645 | ········{ |
11646 | ············pm.UnloadCache(); |
11647 | ············var l = pm.Objects<CmpDirnTblGuidLeft>().ResultTable; |
11648 | ············pm.Delete(l); |
11649 | ············pm.Save(); |
11650 | ············pm.UnloadCache(); |
11651 | ············decimal count; |
11652 | ············count = (decimal) new NDOQuery<CmpDirnTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11653 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11654 | ············count = (decimal) new NDOQuery<CmpDirnTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11655 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11656 | ········} |
11657 | ········catch (Exception) |
11658 | ········{ |
11659 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11660 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11661 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11662 | ············handler.Execute( $"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).Relations.First().MappingTable.TableName}" ); |
11663 | ········} |
11664 | ····} |
11665 | ····[Test] |
11666 | ····public void TestSaveReload() |
11667 | ····{ |
11668 | ········CreateObjects(); |
11669 | ········QueryOwn(); |
11670 | Assert. NotNull( ownVar, "No Query Result") ; |
11671 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11672 | ····} |
11673 | ····[Test] |
11674 | ····public void TestSaveReloadNull() |
11675 | ····{ |
11676 | ········CreateObjects(); |
11677 | ········QueryOwn(); |
11678 | Assert. NotNull( ownVar, "No Query Result") ; |
11679 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11680 | ········ownVar.RelField = new List<CmpDirnTblGuidRight>(); |
11681 | ········pm.Save(); |
11682 | ········pm.UnloadCache(); |
11683 | ········QueryOwn(); |
11684 | Assert. NotNull( ownVar, "No Query Result") ; |
11685 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11686 | ····} |
11687 | ····[Test] |
11688 | ····public void TestSaveReloadRemove() |
11689 | ····{ |
11690 | ········CreateObjects(); |
11691 | ········QueryOwn(); |
11692 | Assert. NotNull( ownVar, "No Query Result") ; |
11693 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11694 | ········ownVar.RemoveRelatedObject(); |
11695 | ········pm.Save(); |
11696 | ········pm.UnloadCache(); |
11697 | ········QueryOwn(); |
11698 | Assert. NotNull( ownVar, "No Query Result") ; |
11699 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11700 | ····} |
11701 | ····void CreateObjects() |
11702 | ····{ |
11703 | ········pm.MakePersistent(ownVar); |
11704 | ········ownVar.AssignRelation(otherVar); |
11705 | ········pm.Save(); |
11706 | ········pm.UnloadCache(); |
11707 | ····} |
11708 | ····void QueryOwn() |
11709 | ····{ |
11710 | ········var q = new NDOQuery<CmpDirnTblGuidLeft>(pm); |
11711 | ········ownVar = q.ExecuteSingle(); |
11712 | ····} |
11713 | ····void QueryOther() |
11714 | ····{ |
11715 | ········var q = new NDOQuery<CmpDirnTblGuidRight>(pm); |
11716 | ········otherVar = q.ExecuteSingle(); |
11717 | ····} |
11718 | } |
11719 | |
11720 | |
11721 | [TestFixture] |
11722 | public class TestCmpBin1NoTblGuid |
11723 | { |
11724 | ····CmpBin1NoTblGuidLeft ownVar; |
11725 | ····CmpBin1NoTblGuidRight otherVar; |
11726 | ····PersistenceManager pm; |
11727 | ····[SetUp] |
11728 | ····public void Setup() |
11729 | ····{ |
11730 | ········pm = PmFactory.NewPersistenceManager(); |
11731 | ········ownVar = new CmpBin1NoTblGuidLeft(); |
11732 | ········otherVar = new CmpBin1NoTblGuidRight(); |
11733 | ····} |
11734 | ····[TearDown] |
11735 | ····public void TearDown() |
11736 | ····{ |
11737 | ········try |
11738 | ········{ |
11739 | ············pm.UnloadCache(); |
11740 | ············var l = pm.Objects<CmpBin1NoTblGuidLeft>().ResultTable; |
11741 | ············pm.Delete(l); |
11742 | ············pm.Save(); |
11743 | ············pm.UnloadCache(); |
11744 | ············decimal count; |
11745 | ············count = (decimal) new NDOQuery<CmpBin1NoTblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11746 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11747 | ············count = (decimal) new NDOQuery<CmpBin1NoTblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11748 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11749 | ········} |
11750 | ········catch (Exception) |
11751 | ········{ |
11752 | ············var handler = pm.GetSqlPassThroughHandler( pm.NDOMapping.Connections.First() ); |
11753 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( ownVar.GetType() ).TableName}"); |
11754 | ············handler.Execute($"DELETE FROM {pm.NDOMapping.FindClass( otherVar.GetType() ).TableName}"); |
11755 | ········} |
11756 | ····} |
11757 | ····[Test] |
11758 | ····public void TestSaveReload() |
11759 | ····{ |
11760 | ········CreateObjects(); |
11761 | ········QueryOwn(); |
11762 | Assert. NotNull( ownVar, "No Query Result") ; |
11763 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11764 | ····} |
11765 | ····[Test] |
11766 | ····public void TestSaveReloadNull() |
11767 | ····{ |
11768 | ········CreateObjects(); |
11769 | ········QueryOwn(); |
11770 | Assert. NotNull( ownVar, "No Query Result") ; |
11771 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11772 | ········ownVar.RelField = new List<CmpBin1NoTblGuidRight>(); |
11773 | ········pm.Save(); |
11774 | ········pm.UnloadCache(); |
11775 | ········QueryOwn(); |
11776 | Assert. NotNull( ownVar, "No Query Result") ; |
11777 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11778 | ····} |
11779 | ····[Test] |
11780 | ····public void TestSaveReloadRemove() |
11781 | ····{ |
11782 | ········CreateObjects(); |
11783 | ········QueryOwn(); |
11784 | Assert. NotNull( ownVar, "No Query Result") ; |
11785 | Assert. AreEqual( 1, ownVar. RelField. Count, "Count wrong") ; |
11786 | ········ownVar.RemoveRelatedObject(); |
11787 | ········pm.Save(); |
11788 | ········pm.UnloadCache(); |
11789 | ········QueryOwn(); |
11790 | Assert. NotNull( ownVar, "No Query Result") ; |
11791 | Assert. AreEqual( 0, ownVar. RelField. Count, "Count wrong") ; |
11792 | ····} |
11793 | ····[Test] |
11794 | ····public void TestChangeKeyHolderRight() |
11795 | ····{ |
11796 | ········CreateObjects(); |
11797 | ········QueryOther(); |
11798 | Assert. NotNull( otherVar, "No Query Result") ; |
11799 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11800 | ········int x = otherVar.RelField.Dummy; |
11801 | ········otherVar.Dummy = 4711; |
11802 | ········pm.Save(); |
11803 | ········pm.UnloadCache(); |
11804 | ········QueryOther(); |
11805 | Assert. NotNull( otherVar, "No Query Result") ; |
11806 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11807 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11808 | ····} |
11809 | ····[Test] |
11810 | ····public void TestChangeKeyHolderRightNoTouch() |
11811 | ····{ |
11812 | ········CreateObjects(); |
11813 | ········QueryOther(); |
11814 | Assert. NotNull( otherVar, "No Query Result") ; |
11815 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11816 | ········otherVar.Dummy = 4711; |
11817 | ········pm.Save(); |
11818 | ········pm.UnloadCache(); |
11819 | ········QueryOther(); |
11820 | Assert. NotNull( otherVar, "No Query Result") ; |
11821 | Assert. NotNull( otherVar. Dummy == 4711, "Wrong value") ; |
11822 | Assert. NotNull( otherVar. RelField, "No related object") ; |
11823 | ····} |
11824 | ····[Test] |
11825 | ····public void TestRelationHash() |
11826 | ····{ |
11827 | ········Class clbaseLeft = pm.NDOMapping.FindClass(typeof(CmpBin1NoTblGuidLeft)); |
11828 | ········Relation relbaseLeft = clbaseLeft.FindRelation("relField"); |
11829 | ········Class clbaseRight = pm.NDOMapping.FindClass(typeof(CmpBin1NoTblGuidRight)); |
11830 | ········Relation relbaseRight = clbaseRight.FindRelation("relField"); |
11831 | ········Assert.That(relbaseRight.Equals(relbaseLeft), "Relation should be equal #1"); |
11832 | ········Assert.That(relbaseLeft.Equals(relbaseRight), "Relation should be equal #2"); |
11833 | ····} |
11834 | ····void CreateObjects() |
11835 | ····{ |
11836 | ········pm.MakePersistent(ownVar); |
11837 | ········ownVar.AssignRelation(otherVar); |
11838 | ········pm.Save(); |
11839 | ········pm.UnloadCache(); |
11840 | ····} |
11841 | ····void QueryOwn() |
11842 | ····{ |
11843 | ········var q = new NDOQuery<CmpBin1NoTblGuidLeft>(pm); |
11844 | ········ownVar = q.ExecuteSingle(); |
11845 | ····} |
11846 | ····void QueryOther() |
11847 | ····{ |
11848 | ········var q = new NDOQuery<CmpBin1NoTblGuidRight>(pm); |
11849 | ········otherVar = q.ExecuteSingle(); |
11850 | ····} |
11851 | } |
11852 | |
11853 | |
11854 | [TestFixture] |
11855 | public class TestCmpBin1TblGuid |
11856 | { |
11857 | ····CmpBin1TblGuidLeft ownVar; |
11858 | ····CmpBin1TblGuidRight otherVar; |
11859 | ····PersistenceManager pm; |
11860 | ····[SetUp] |
11861 | ····public void Setup() |
11862 | ····{ |
11863 | ········pm = PmFactory.NewPersistenceManager(); |
11864 | ········ownVar = new CmpBin1TblGuidLeft(); |
11865 | ········otherVar = new CmpBin1TblGuidRight(); |
11866 | ····} |
11867 | ····[TearDown] |
11868 | ····public void TearDown() |
11869 | ····{ |
11870 | ········try |
11871 | ········{ |
11872 | ············pm.UnloadCache(); |
11873 | ············var l = pm.Objects<CmpBin1TblGuidLeft>().ResultTable; |
11874 | ············pm.Delete(l); |
11875 | ············pm.Save(); |
11876 | ············pm.UnloadCache(); |
11877 | ············decimal count; |
11878 | ············count = (decimal) new NDOQuery<CmpBin1TblGuidLeft>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11879 | Assert. AreEqual( 0, count, "Count wrong #1") ; |
11880 | ············count = (decimal) new NDOQuery<CmpBin1TblGuidRight>(pm).ExecuteAggregate("dummy", AggregateType.Count); |
11881 | Assert. AreEqual( 0, count, "Count wrong #2") ; |
11882 | ········} |
11883 |