public virtual void Test3()
        {
            DeleteBase("t1u2.ndb");
            var odb   = Open("t1u2.ndb");
            var login = new VO.Login.Function(null);

            odb.Store(login);
            odb.Close();
            odb = Open("t1u2.ndb");
            var query = odb.Query <VO.Login.Function>();

            query.Descend("name").Constrain(null).Equal();
            login = query.Execute <VO.Login.Function>().GetFirst();
            AssertTrue(login.GetName() == null);
            login.SetName("login");
            odb.Store(login);
            odb.Close();
            odb = Open("t1u2.ndb");
            var query1 = odb.Query <VO.Login.Function>();

            login = query1.Execute <VO.Login.Function>().GetFirst();
            AssertTrue(login.GetName().Equals("login"));
            odb.Close();
            DeleteBase("t1u2.ndb");
        }
 public virtual void Test1()
 {
     DeleteBase("getid.ndb");
     var function1 = new VO.Login.Function("f1");
     var function2 = new VO.Login.Function("f2");
     var odb = Open("getid.ndb");
     odb.Store(function1);
     odb.Store(function2);
     var id1 = odb.GetObjectId(function1);
     var id2 = odb.GetObjectId(function2);
     odb.Close();
     odb = Open("getid.ndb");
     var function1bis = (VO.Login.Function) odb.GetObjectFromId(id1);
     AssertEquals(function1.GetName(), function1bis.GetName());
     var function2bis = (VO.Login.Function) odb.GetObjectFromId(id2);
     function2bis.SetName("function 2");
     odb.Store(function2bis);
     var id2bis = odb.GetObjectId(function2bis);
     odb.Close();
     odb = Open("getid.ndb");
     var function2ter = (VO.Login.Function) odb.GetObjectFromId(id2);
     AssertEquals("function 2", function2ter.GetName());
     odb.Close();
     DeleteBase("getid.ndb");
 }
Beispiel #3
0
        public virtual void Test1()
        {
            DeleteBase("getid.ndb");
            var function1 = new VO.Login.Function("f1");
            var function2 = new VO.Login.Function("f2");
            var odb       = Open("getid.ndb");

            odb.Store(function1);
            odb.Store(function2);
            var id1 = odb.GetObjectId(function1);
            var id2 = odb.GetObjectId(function2);

            odb.Close();
            odb = Open("getid.ndb");
            var function1bis = (VO.Login.Function)odb.GetObjectFromId(id1);

            AssertEquals(function1.GetName(), function1bis.GetName());
            var function2bis = (VO.Login.Function)odb.GetObjectFromId(id2);

            function2bis.SetName("function 2");
            odb.Store(function2bis);
            var id2bis = odb.GetObjectId(function2bis);

            odb.Close();
            odb = Open("getid.ndb");
            var function2ter = (VO.Login.Function)odb.GetObjectFromId(id2);

            AssertEquals("function 2", function2ter.GetName());
            odb.Close();
            DeleteBase("getid.ndb");
        }
Beispiel #4
0
        public virtual void Test5()
        {
            DeleteBase("getid.ndb");
            var function1 = new VO.Login.Function("f1");
            var function2 = new VO.Login.Function("f2");
            var odb       = Open("getid.ndb");

            odb.Store(function1);
            odb.Store(function2);
            var id1 = odb.GetObjectId(function1);
            var id2 = odb.GetObjectId(function2);

            odb.Close();
            odb = Open("getid.ndb");
            var t1           = OdbTime.GetCurrentTimeInMs();
            var function1bis = (VO.Login.Function)odb.GetObjectFromId(id1);
            var function2bis = (VO.Login.Function)odb.GetObjectFromId(id2);
            var t2           = OdbTime.GetCurrentTimeInMs();

            odb.Close();
            DeleteBase("getid.ndb");
            AssertEquals(function1.GetName(), function1bis.GetName());
            AssertEquals(function2.GetName(), function2bis.GetName());
            var time = t2 - t1;

            Println(time);
            long acceptableTime = 1;

            if (time > acceptableTime)
            {
                // ms
                Fail("Getting two objects by oid lasted more than " + acceptableTime + "ms : " + time);
            }
        }
Beispiel #5
0
        public virtual void TestInsertWithCommitsSimpleObject()
        {
            DeleteBase("commits");
            IOdb odb            = null;
            var  size           = 10000;
            var  commitInterval = 1000;

            try
            {
                odb = Open("commits");
                for (var i = 0; i < size; i++)
                {
                    odb.Store(new VO.Login.Function("function " + i));
                    if (i % commitInterval == 0)
                    {
                        odb.Commit();
                        Console.WriteLine(i);
                    }
                }
            }
            finally
            {
                // println("commiting "+i);
                odb.Close();
            }
            odb = Open("commits");
            var query     = odb.Query <VO.Login.Function>();
            var objects   = query.Execute <VO.Login.Function>();
            var nbObjects = objects.Count;
            var map       = new OdbHashMap <VO.Login.Function, int>();

            VO.Login.Function function = null;
            var j = 0;

            while (objects.HasNext())
            {
                function = objects.Next();
                var ii = map[function];
                if (ii != 0)
                {
                    Println(j + ":" + function.GetName() + " already exist at " + ii);
                }
                else
                {
                    map.Add(function, j);
                }
                j++;
            }
            odb.Close();
            DeleteBase("commits");
            Println("Nb objects=" + nbObjects);
            AssertEquals(size, nbObjects);
        }
Beispiel #6
0
        public virtual void TestDirectSave()
        {
            DeleteBase("btree.ndb");
            var odb      = Open("btree.ndb");
            var function = new VO.Login.Function("f1");

            odb.Store(function);
            for (var i = 0; i < 2; i++)
            {
                function.SetName(function.GetName() + function.GetName() + function.GetName() + function.GetName());
                odb.Store(function);
            }
            var engine = ((global::NDatabase.Odb)odb).GetStorageEngine();

            var fullClassName = OdbClassNameResolver.GetFullName(typeof(VO.Login.Function));

            var ci = engine.GetSession().GetMetaModel().GetClassInfo(fullClassName, true);

            Println(ci);
            AssertEquals(null, ci.CommitedZoneInfo.First);
            AssertEquals(null, ci.CommitedZoneInfo.Last);
            AssertEquals(1, ci.UncommittedZoneInfo.GetNumberbOfObjects());
            odb.Close();
        }
Beispiel #7
0
 public virtual void TestGetObjectId()
 {
     DeleteBase("extb");
     var odb = OdbFactory.Open("extb");
     var f = new VO.Login.Function("Test Function");
     var oid = odb.Store(f);
     var extOid = odb.Ext().GetObjectExternalOID(f);
     AssertEquals(oid.ObjectId, extOid.ObjectId);
     AssertEquals(odb.Ext().GetDatabaseId(), extOid.GetDatabaseId());
     odb.Close();
     odb = Open("extb");
     // Getting object via external oid
     var f2 = (VO.Login.Function) odb.GetObjectFromId(extOid);
     var lastOid = odb.GetObjectId(f2);
     AssertEquals(oid, lastOid);
     AssertEquals(f.GetName(), f2.GetName());
     odb.Close();
 }
Beispiel #8
0
        public virtual void TestGetObjectId()
        {
            DeleteBase("extb");
            var odb    = OdbFactory.Open("extb");
            var f      = new VO.Login.Function("Test Function");
            var oid    = odb.Store(f);
            var extOid = odb.Ext().GetObjectExternalOID(f);

            AssertEquals(oid.ObjectId, extOid.ObjectId);
            AssertEquals(odb.Ext().GetDatabaseId(), extOid.GetDatabaseId());
            odb.Close();
            odb = Open("extb");
            // Getting object via external oid
            var f2      = (VO.Login.Function)odb.GetObjectFromId(extOid);
            var lastOid = odb.GetObjectId(f2);

            AssertEquals(oid, lastOid);
            AssertEquals(f.GetName(), f2.GetName());
            odb.Close();
        }
Beispiel #9
0
        public virtual void Test1WithCommit4()
        {
            var stopWatch = new StopWatch();

            stopWatch.Start();
            DeleteBase(FileName);
            var odb = Open(FileName);
            var f1  = new VO.Login.Function("function1");

            odb.Store(f1);
            var f2 = new VO.Login.Function("function2");

            odb.Store(f2);
            odb.Close();
            odb = Open(FileName);
            var query   = odb.Query <VO.Login.Function>();
            var objects = query.Execute <VO.Login.Function>();

            VO.Login.Function f = null;
            Println("got the object " + objects.Count);
            for (var k = 0; k < 2; k++)
            {
                objects.Reset();
                while (objects.HasNext())
                {
                    f = objects.Next();
                    f.SetName(f.GetName() + "updated-");
                    odb.Store(f);
                }
            }
            odb.Close();
            odb = Open(FileName);
            var query1 = odb.Query <VO.Login.Function>();

            objects = query1.Execute <VO.Login.Function>();
            odb.Close();
        }
Beispiel #10
0
 public virtual void Test3()
 {
     DeleteBase("t1u2.ndb");
     var odb = Open("t1u2.ndb");
     var login = new VO.Login.Function(null);
     odb.Store(login);
     odb.Close();
     odb = Open("t1u2.ndb");
     var query = odb.Query<VO.Login.Function>();
     query.Descend("name").Constrain(null).Equal();
     login = query.Execute<VO.Login.Function>().GetFirst();
     AssertTrue(login.GetName() == null);
     login.SetName("login");
     odb.Store(login);
     odb.Close();
     odb = Open("t1u2.ndb");
     var query1 = odb.Query<VO.Login.Function>();
     login = query1.Execute<VO.Login.Function>().GetFirst();
     AssertTrue(login.GetName().Equals("login"));
     odb.Close();
     DeleteBase("t1u2.ndb");
 }
Beispiel #11
0
 public virtual void Test5()
 {
     DeleteBase("getid.ndb");
     var function1 = new VO.Login.Function("f1");
     var function2 = new VO.Login.Function("f2");
     var odb = Open("getid.ndb");
     odb.Store(function1);
     odb.Store(function2);
     var id1 = odb.GetObjectId(function1);
     var id2 = odb.GetObjectId(function2);
     odb.Close();
     odb = Open("getid.ndb");
     var t1 = OdbTime.GetCurrentTimeInMs();
     var function1bis = (VO.Login.Function) odb.GetObjectFromId(id1);
     var function2bis = (VO.Login.Function) odb.GetObjectFromId(id2);
     var t2 = OdbTime.GetCurrentTimeInMs();
     odb.Close();
     DeleteBase("getid.ndb");
     AssertEquals(function1.GetName(), function1bis.GetName());
     AssertEquals(function2.GetName(), function2bis.GetName());
     var time = t2 - t1;
     Println(time);
     long acceptableTime = 1;
     if (time > acceptableTime)
     {
         // ms
         Fail("Getting two objects by oid lasted more than " + acceptableTime + "ms : " + time);
     }
 }
Beispiel #12
0
        public virtual void TestDirectSave()
        {
            DeleteBase("btree.ndb");
            var odb = Open("btree.ndb");
            var function = new VO.Login.Function("f1");
            odb.Store(function);
            for (var i = 0; i < 2; i++)
            {
                function.SetName(function.GetName() + function.GetName() + function.GetName() + function.GetName());
                odb.Store(function);
            }
            var engine = ((global::NDatabase.Odb)odb).GetStorageEngine();

            var fullClassName = OdbClassNameResolver.GetFullName(typeof (VO.Login.Function));

            var ci = engine.GetSession().GetMetaModel().GetClassInfo(fullClassName, true);
            Println(ci);
            AssertEquals(null, ci.CommitedZoneInfo.First);
            AssertEquals(null, ci.CommitedZoneInfo.Last);
            AssertEquals(1, ci.UncommittedZoneInfo.GetNumberbOfObjects());
            odb.Close();
        }