示例#1
0
        private Reisebüro CreateReisebüro(string name)
        {
            Reisebüro r = new Reisebüro();

            r.Name = name;
            return(r);
        }
示例#2
0
        public void TestClearRelatedObjectsAbort()
        {
            for (int i = 0; i < 10; i++)
            {
                Reisebüro rb = CreateReisebüro(i.ToString());
                pm.MakePersistent(rb);
                m.Hinzufuegen(rb);
            }
            pm.MakePersistent(m);
            pm.Save();
            IList rr = new ArrayList(m.Reisebüros);

            m.LöscheReisebüros();
            Assert.AreEqual(0, m.Reisebüros.Count, "1. Wrong number of objects");
            for (int i = 0; i < 10; i++)
            {
                Assert.AreEqual(NDOObjectState.Persistent, ((Reisebüro)rr[i]).NDOObjectState, "2. Wrong state");
            }
            pm.Abort();
            Assert.AreEqual(10, m.Reisebüros.Count, "3. Wrong number of objects");
            for (int i = 0; i < 10; i++)
            {
                Assert.AreEqual(NDOObjectState.Persistent, ((Reisebüro)rr[i]).NDOObjectState, "4. Wrong state");
            }
        }
示例#3
0
        public void TestCreateObjects()
        {
            pm.MakePersistent(r);
            if (r.NDOObjectId.Id[0] is Int32 && !pm.HasOwnerCreatedIds)
            {
                Assert.AreEqual(-1, r.NDOObjectId.Id[0], "Reisebüro key wrong");
            }
            Reisebüro r2 = (Reisebüro)pm.FindObject(r.NDOObjectId);

            Assert.AreSame(r, r2, "Reisebüros should match");
        }
示例#4
0
 public void TestAddObjectSave()
 {
     StandardSetup();
     pm.MakePersistent(m);
     pm.Save();
     m.Hinzufuegen(r);
     Assert.AreEqual(NDOObjectState.Persistent, r.NDOObjectState, "1. Wrong state");
     pm.Save();
     m = (Mitarbeiter)pm.FindObject(m.NDOObjectId);
     r = (Reisebüro)pm.FindObject(r.NDOObjectId);
     Assert.NotNull(m, "1. Mitarbeiter not found");
     Assert.NotNull(r, "1. Reisebüro not found");
     Assert.AreEqual(NDOObjectState.Persistent, r.NDOObjectState, "2. Wrong state");
 }
示例#5
0
        public void Setup()
        {
            pm = PmFactory.NewPersistenceManager();
            Type t = pm.NDOMapping.FindClass(typeof(Mitarbeiter)).Oid.OidColumns[0].SystemType;

            if (t == typeof(int))
            {
                this.m         = (Mitarbeiter)pm.FindObject(typeof(Mitarbeiter), 1);
                this.reiseBüro = (Reisebüro)pm.FindObject(typeof(Reisebüro), 1);
            }
            else
            {
                this.m         = (Mitarbeiter)pm.FindObject(typeof(Mitarbeiter), this.guid);
                this.reiseBüro = (Reisebüro)pm.FindObject(typeof(Reisebüro), this.guid);
            }
        }
示例#6
0
        public void TestReadableShortIdMitUmlauten()
        {
            // Note: This test uses the old ShortId format, which is deprecated
            string shortId = ((IPersistenceCapable)this.reiseBüro).ShortId();

            Assert.That(shortId.IsShortId());
            string[] arr = shortId.Split('-');
            arr[0]  = typeof(Reisebüro).FullName;
            arr[1]  = typeof(Reisebüro).Assembly.GetName().Name;
            shortId = string.Join("-", arr);
            Assert.That(shortId.GetEntityName() == "Reisebüro");
            Assert.That(shortId.GetObjectType(pm) == typeof(Reisebüro));
            Reisebüro rb = (Reisebüro)pm.FindObject(shortId);

            Assert.NotNull(rb);
        }
示例#7
0
        public void TestCreateObjectsSave()
        {
            pm.MakePersistent(r);
            m.Hinzufuegen(r);
            pm.MakePersistent(m);
            pm.Save();
            Assert.That(!m.NDOObjectId.Equals(r.NDOObjectId), "Ids should be different");
            m = (Mitarbeiter)pm.FindObject(m.NDOObjectId);
            r = (Reisebüro)pm.FindObject(r.NDOObjectId);
            Assert.NotNull(m, "1. Mitarbeiter not found");
            Assert.NotNull(r, "1. Reisebüro not found");

            pm.UnloadCache();
            m = (Mitarbeiter)pm.FindObject(m.NDOObjectId);
            r = (Reisebüro)pm.FindObject(r.NDOObjectId);
            Assert.NotNull(m, "2. Mitarbeiter not found");
            Assert.NotNull(r, "2. Reisebüro not found");
        }
示例#8
0
        public void TestLoadRelatedObjects()
        {
            for (int i = 0; i < 10; i++)
            {
                Reisebüro rb = CreateReisebüro(i.ToString());
                pm.MakePersistent(rb);
                m.Hinzufuegen(rb);
            }
            pm.MakePersistent(m);
            pm.Save();
            pm.MakeHollow(m, true);

            IList Reisebüros = new ArrayList(m.Reisebüros);

            Assert.AreEqual(10, Reisebüros.Count, "List size should be 10");

            for (int i = 0; i < 10; i++)
            {
                Reisebüro rr = (Reisebüro)Reisebüros[i];
                Assert.AreEqual(NDOObjectState.Hollow, rr.NDOObjectState, "1: Reisebüro should be hollow");
#if !ORACLE && !MYSQL && !FIREBIRD
                Assert.AreEqual(i.ToString(), rr.Name, "2: Reisebüro should be in right order");
#endif
            }


            pm.MakeAllHollow();
            pm.UnloadCache();
            IList Reisebüros2 = m.Reisebüros;
            for (int i = 0; i < 10; i++)
            {
                Reisebüro r1 = (Reisebüro)Reisebüros[i];
                Reisebüro r2 = (Reisebüro)Reisebüros2[i];
#if !ORACLE && !MYSQL && !FIREBIRD
                Assert.AreEqual(i.ToString(), r1.Name, "3: Reisebüro should be in right order");
#endif
                Assert.That(r1 != r2, "Objects should be different");
            }
        }
示例#9
0
 public void Löschen(Reisebüro r)
 {
     reiseBüros.Remove(r);
 }
示例#10
0
 public void Hinzufuegen(Reisebüro r)
 {
     reiseBüros.Add(r);
 }
示例#11
0
 public void Setup()
 {
     pm = PmFactory.NewPersistenceManager();
     m  = CreateMitarbeiter("Hartmut", "Kocher");
     r  = CreateReisebüro("Lufthansa City Center");
 }