コード例 #1
0
        private void SetComparator()
        {
            Hamster.Environment env = new Hamster.Environment();
            Database db = new Database();
            byte[] k = new byte[5];
            byte[] r = new byte[5];
            Parameter[] param = new Parameter[1];
            param[0] = new Parameter();
            param[0].name = HamConst.HAM_PARAM_KEY_TYPE;
            param[0].value = HamConst.HAM_TYPE_CUSTOM;

            compareCounter = 0;
            try {
                env.Create("ntest.db");
                db = env.CreateDatabase(1, 0, param);
                db.SetCompareFunc(new CompareFunc(MyCompareFunc));
                db.Insert(k, r);
                k[0] = 1;
                db.Insert(k, r);
                db.Close();
                env.Close();
            }
            catch (DatabaseException e) {
                Assert.Fail("unexpected exception " + e);
            }
            Assert.AreEqual(1, compareCounter);
        }
コード例 #2
0
ファイル: DatabaseTest.cs プロジェクト: GerHobbelt/hamsterdb
        private Database CreateDatabase(string file)
        {
            List<Parameter> list = new List<Parameter>();

            Parameter param1 = new Parameter();
            param1.name = HamConst.HAM_PARAM_CACHESIZE;
            param1.value = 768 * 1024 * 1024;
            list.Add(param1);

            Parameter param2 = new Parameter();
            param2.name = HamConst.HAM_PARAM_KEYSIZE;
            param2.value = 8; // sizeof(ulong);
            list.Add(param2);

            Database db = new Database();
            db.Create(file, 0, 0, list.ToArray());
            db.SetCompareFunc(new CompareFunc(NumericalCompareFunc));
            return db;
        }
コード例 #3
0
        private Database OpenDatabase(string file)
        {
            List<Parameter> list = new List<Parameter>();

            Parameter param1 = new Parameter();
            param1.name = HamConst.HAM_PARAM_CACHESIZE;
            param1.value = 768 * 1024 * 1024;
            list.Add(param1);

            Hamster.Environment env = new Hamster.Environment();
            Database db = new Database();
            env.Open(file, 0, list.ToArray());
            db = env.OpenDatabase(1);
            db.SetCompareFunc(new CompareFunc(NumericalCompareFunc));
            return db;
        }
コード例 #4
0
ファイル: DatabaseTest.cs プロジェクト: GerHobbelt/hamsterdb
 public void SetComparator()
 {
     Database db = new Database();
     byte[] k = new byte[5];
     byte[] r = new byte[5];
     compareCounter = 0;
     try {
         db.Create("ntest.db");
         db.SetCompareFunc(new CompareFunc(MyCompareFunc));
         db.Insert(k, r);
         k[0] = 1;
         db.Insert(k, r);
         db.Close();
     }
     catch (DatabaseException e) {
         Assert.Fail("unexpected exception " + e);
     }
     Assert.AreEqual(3, compareCounter);
 }