예제 #1
0
        public void VerifyJetIntersectIndexesReturnsCorrectNumberOfRecords()
        {
            JET_TABLEID tableid1 = this.OpenTable();
            JET_TABLEID tableid2 = this.OpenTable();

            Api.JetSetCurrentIndex(this.sesid, tableid1, "index1");
            this.SetIndexRange(tableid1, 4, 6);

            Api.JetSetCurrentIndex(this.sesid, tableid2, "index2");
            this.SetIndexRange(tableid2, 1, 3);

            var ranges = new JET_INDEXRANGE[2];

            ranges[0] = new JET_INDEXRANGE {
                tableid = tableid1
            };
            ranges[1] = new JET_INDEXRANGE {
                tableid = tableid2
            };

            JET_RECORDLIST recordlist;

            Api.JetIntersectIndexes(this.sesid, ranges, 2, out recordlist, IntersectIndexesGrbit.None);

            Assert.AreEqual(9, recordlist.cRecords);
            Api.JetCloseTable(this.sesid, recordlist.tableid);
        }
예제 #2
0
        public void JetIndexrangeToString()
        {
            var indexrange = new JET_INDEXRANGE {
                grbit = IndexRangeGrbit.RecordInIndex
            };

            Assert.AreEqual("JET_INDEXRANGE(0x0,RecordInIndex)", indexrange.ToString());
        }
예제 #3
0
        public void VerifyJetIndexrangeEquality()
        {
            var x = new JET_INDEXRANGE {
                grbit = IndexRangeGrbit.RecordInIndex
            };
            var y = new JET_INDEXRANGE {
                grbit = IndexRangeGrbit.RecordInIndex
            };

            TestContentEquals(x, y);
        }
예제 #4
0
 public void Setup()
 {
     this.managed = new JET_INDEXRANGE
     {
         tableid = new JET_TABLEID {
             Value = (IntPtr)0x1234
         },
         grbit = IndexRangeGrbit.RecordInIndex,
     };
     this.native = this.managed.GetNativeIndexRange();
 }
예제 #5
0
        public void VerifyIndexRangeConstructorSetsGrbit()
        {
            var indexrange = new JET_INDEXRANGE();

            Assert.AreEqual(IndexRangeGrbit.RecordInIndex, indexrange.grbit);
        }