示例#1
0
        public void TestManPrototype()
        {
            var man      = new Man("Hanna");
            var cloneMan = man.Clone();

            Assert.Equal(man.ToString(), cloneMan.ToString());
        }
        static void Main(string[] args)
        {
            Man man  = new Man();
            Man man2 = man.Clone();

            Console.WriteLine(man.GetHashCode());
            Console.WriteLine(man2.GetHashCode());
            Console.ReadLine();
        }
示例#3
0
        public void Simple()
        {
            UInt64 id;

            // UInt64 autoIncrement = 0;
            using (SessionNoServer session = new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                VelocityDbSchema.Person person = new VelocityDbSchema.Person();
                session.Persist(person);
                //Assert.Greater(person.AutoIncrement, autoIncrement);
                UnknownSex u = new UnknownSex();
                session.Persist(u);
                //Assert.Greater(u.AutoIncrement, autoIncrement);
                UnknownSex u2 = new UnknownSex();
                session.Persist(u2);
                //Assert.Greater(u2.AutoIncrement, u.AutoIncrement);
                Man man = new Man();
                session.Persist(man);
                //Assert.AreEqual(man.AutoIncrement, autoIncrement); // Man overrides PlacementDatabaseNumber so no AutoIncrement feature
                id = man.Id;
                session.Commit();
            }
            using (SessionNoServer session = new SessionNoServer(systemDir))
            {
                session.BeginRead();
                Man man  = session.Open <Man>(id);
                Man man2 = (Man)man.Clone();
                Assert.NotNull(man);
                Assert.IsFalse(man2.IsPersistent);
                Assert.IsNull(man2.Shape);
                Assert.AreEqual(man2.Id, 0);
                Assert.AreEqual(man2.ShortId, 0);
                Assert.True(man != man2);
                session.Commit();
            }
        }