public void TestSortedQueryAsc() { r.AddKostenpunkt(kp); DateTime yesterday = DateTime.Today - new TimeSpan(1, 0, 0, 0); kp.Datum = yesterday; r.AddKostenpunkt(kp = CreatePkw()); kp.Datum = DateTime.Today; pm.MakePersistent(r); pm.Save(); pm.UnloadCache(); IQuery q = new NDOQuery <Kostenpunkt>(pm); q.Orderings.Add(new AscendingOrder("datum")); NDO.Logging.DebugLogAdapter la = new NDO.Logging.DebugLogAdapter(); pm.LogAdapter = la; pm.VerboseMode = true; IList l = q.Execute(); pm.VerboseMode = false; Assert.AreEqual(2, l.Count, "Count wrong"); Assert.That(yesterday == ((Kostenpunkt)l[0]).Datum, "Order wrong"); Assert.That(DateTime.Today == ((Kostenpunkt)l[1]).Datum, "Wrong object"); }
public void TestAssignRelatedObjectsAbort() { for (int i = 0; i < 3; i++) { r.AddKostenpunkt(CreateBeleg(i * 10 + 100)); } pm.MakePersistent(r); pm.Save(); List <Kostenpunkt> neueKostenpunkte = new List <Kostenpunkt>(); Kostenpunkt nr = CreateBeleg(200); neueKostenpunkte.Add(nr); IList rr = r.Kostenpunkte.ToList(); r.ErsetzeKostenpunkte(neueKostenpunkte); Assert.AreEqual(1, r.Kostenpunkte.Count, "1. Wrong number of objects"); for (int i = 0; i < 3; i++) { Assert.AreEqual(NDOObjectState.Deleted, ((Kostenpunkt)rr[i]).NDOObjectState, "2. Wrong state"); } Assert.AreEqual(NDOObjectState.Created, nr.NDOObjectState, "3. Wrong state"); pm.Abort(); Assert.AreEqual(3, r.Kostenpunkte.Count, "4. Wrong number of objects"); for (int i = 0; i < 3; i++) { Assert.AreEqual(NDOObjectState.Persistent, ((Kostenpunkt)rr[i]).NDOObjectState, "5. Wrong state"); } Assert.AreEqual(NDOObjectState.Transient, nr.NDOObjectState, "6. Wrong state"); }
public void TestAddObjectSave() { pm.MakePersistent(r); pm.Save(); r.AddKostenpunkt(kp); Assert.AreEqual(NDOObjectState.Created, kp.NDOObjectState, "1. Wrong state"); pm.Save(); r = (Reise)pm.FindObject(r.NDOObjectId); kp = (Kostenpunkt)pm.FindObject(kp.NDOObjectId); Assert.NotNull(r, "1. Reise not found"); Assert.NotNull(kp, "2. Beleg not found"); Assert.AreEqual(NDOObjectState.Persistent, kp.NDOObjectState, "3. Wrong state"); Assert.AreEqual(DateTime.Now.Date, kp.Datum, "Wrong data"); }
public void TestQueryForSingleObject() { Kostenpunkt kp2 = CreatePkw(100); r.AddKostenpunkt(kp); r.AddKostenpunkt(kp2); pm.MakePersistent(r); pm.Save(); pm.UnloadCache(); NDOQuery <Reise> q = new NDOQuery <Reise>(pm, "belege.datum" + " = " + "{0}"); q.Parameters.Add(DateTime.Now.Date); IList l = q.Execute(); Assert.AreEqual(1, l.Count, "Count wrong"); }
public void TestSortedQueryDescOneNull() { r.AddKostenpunkt(kp); kp.Datum = DateTime.MinValue; r.AddKostenpunkt(kp = CreatePkw()); kp.Datum = DateTime.Today; pm.MakePersistent(r); pm.Save(); pm.UnloadCache(); IQuery q = new NDOQuery <Kostenpunkt>(pm); q.Orderings.Add(new DescendingOrder("datum")); IList l = q.Execute(); //pm.VerboseMode = false; Assert.AreEqual(2, l.Count, "Count wrong"); Assert.That(DateTime.Today == ((Kostenpunkt)l[0]).Datum, "Order wrong"); Assert.That(DateTime.MinValue == ((Kostenpunkt)l[1]).Datum, "Wrong object"); }
public void TestLoadRelatedObjects() { for (int i = 0; i < 10; i++) { r.AddKostenpunkt(CreateBeleg(i * 10 + 100)); } pm.MakePersistent(r); pm.Save(); pm.MakeHollow(r, true); var kpunkte = r.Kostenpunkte.ToList(); Assert.AreEqual(10, kpunkte.Count, "Array size should be 10"); for (int i = 0; i < 10; i++) { Kostenpunkt rr = (Kostenpunkt)kpunkte[i]; Assert.AreEqual(NDOObjectState.Hollow, rr.NDOObjectState, "1: Kostenpunkt should be hollow"); #if !ORACLE && !MYSQL && !FIREBIRD Assert.AreEqual(i * 10 + 100, rr.Kosten, "2: Kostenpunkt should be in right order"); #endif } pm.MakeAllHollow(); pm.UnloadCache(); var kpunkte2 = r.Kostenpunkte.ToList(); for (int i = 0; i < 10; i++) { Kostenpunkt r1 = (Kostenpunkt)kpunkte[i]; Kostenpunkt r2 = (Kostenpunkt)kpunkte2[i]; #if !ORACLE && !MYSQL && !FIREBIRD Assert.AreEqual(i * 10 + 100, r1.Kosten, "3: Kostenpunkt should be in right order"); #endif Assert.That(r1 != r2, "Objects should be different"); } }
public void Setup() { pm = PmFactory.NewPersistenceManager(); r = CreateReise("ADC"); kp = CreateBeleg(); }