Example #1
0
        public void MakeNewObjectTest_UnownedObject()
        {
            int hvoNew = SilDataAccess.MakeNewObject(1, 0, -1, 0);

            Assert.IsTrue(SilDataAccess.get_IsValidObject(hvoNew));
            Assert.AreEqual(1, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Class));
        }
Example #2
0
        public void MakeNewObjectTest_OwnedObjectSequence()
        {
            int hvoOwner = SilDataAccess.MakeNewObject(1, 0, -1, 0);
            var clid     = SilDataAccess.MetaDataCache.GetClassId("ClassB");
            var flid     = SilDataAccess.MetaDataCache.GetFieldId2(1, "SequenceProp98", false);

            int[] hvoNewObjects = new int[5];
            hvoNewObjects[0] = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, 1);
            hvoNewObjects[2] = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, 1);
            hvoNewObjects[1] = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, 1);
            hvoNewObjects[3] = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, 10);
            hvoNewObjects[4] = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, 0);
            Assert.AreEqual(5, SilDataAccess.get_VecSize(hvoOwner, flid));
            int prevOwnOrd = -1;

            for (int i = 0; i < 5; i++)
            {
                int hvoNew = SilDataAccess.get_VecItem(hvoOwner, flid, i);
                Assert.IsTrue(SilDataAccess.get_IsValidObject(hvoNew));
                Assert.AreEqual(flid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_OwnFlid));
                Assert.AreEqual(hvoOwner, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Owner));
                int ownOrd = SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_OwnOrd);
                Assert.IsTrue(prevOwnOrd < ownOrd);
                prevOwnOrd = ownOrd;
                Assert.AreEqual(clid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Class));
            }
        }
Example #3
0
        public void ObjPropKNTTest()
        {
            const int hvo = 1;
            // Set class first, or it will throw the exception in the wrong place.
            var clid = SilDataAccess.MetaDataCache.GetClassId("ClassC");

            SilDataAccess.SetInt(hvo, (int)CmObjectFields.kflidCmObject_Class, clid);

            SilDataAccess.get_ObjectProp(hvo, (int)CmObjectFields.kflidCmObject_Owner);
        }
Example #4
0
        public void MakeNewObjectTest_OwnedObjectAtomic()
        {
            int hvoOwner = SilDataAccess.MakeNewObject(1, 0, -1, 0);
            var clid     = SilDataAccess.MetaDataCache.GetClassId("ClassA");
            var flid     = SilDataAccess.MetaDataCache.GetFieldId2(1, "AtomicProp97", false);
            int hvoNew   = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, -2);

            Assert.IsTrue(SilDataAccess.get_IsValidObject(hvoNew));
            Assert.AreEqual(flid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_OwnFlid));
            Assert.AreEqual(hvoOwner, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Owner));
            Assert.AreEqual(clid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Class));
            Assert.AreEqual(hvoNew, SilDataAccess.get_ObjectProp(hvoOwner, flid));
        }
Example #5
0
        public void ObjPropKNTTest()
        {
            CheckDisposed();

            int hvo = 1;
            // Set class first, or it will throw the exception in the wrong place.
            uint clid = SilDataAccess.MetaDataCache.GetClassId("MoAdhocProhib");

            SilDataAccess.SetInt(hvo, (int)CmObjectFields.kflidCmObject_Class, (int)clid);

            //int tag = (int)SilDataAccess.MetaDataCache.GetFieldId("MoAdhocProhib", "Adjacency", false);
            int hvoObj2 = SilDataAccess.get_ObjectProp(hvo, (int)CmObjectFields.kflidCmObject_Owner);
        }
Example #6
0
        public void MakeNewObjectTest_OwnedObjectCollection()
        {
            int hvoOwner = SilDataAccess.MakeNewObject(1, 0, -1, 0);
            var clid     = SilDataAccess.MetaDataCache.GetClassId("ClassC");
            var flid     = SilDataAccess.MetaDataCache.GetFieldId2(1, "CollectionProp99", false);
            int hvoNew   = SilDataAccess.MakeNewObject(clid, hvoOwner, flid, -1);

            Assert.IsTrue(SilDataAccess.get_IsValidObject(hvoNew));
            Assert.AreEqual(flid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_OwnFlid));
            Assert.AreEqual(hvoOwner, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Owner));
            Assert.AreEqual(clid, SilDataAccess.get_ObjectProp(hvoNew, (int)CmObjectFields.kflidCmObject_Class));
            Assert.AreEqual(1, SilDataAccess.get_VecSize(hvoOwner, flid));
            Assert.AreEqual(hvoNew, SilDataAccess.get_VecItem(hvoOwner, flid, 0));
        }
Example #7
0
        public void ObjPropTest()
        {
            // Set class first, or it will throw an exception.
            const int hvo      = 1;
            var       clidAnal = SilDataAccess.MetaDataCache.GetClassId("ClassA");

            SilDataAccess.SetInt(hvo, (int)CmObjectFields.kflidCmObject_Class, clidAnal);
            // Set class of POS object.
            const int hvoObj  = 3;
            var       clidPOS = SilDataAccess.MetaDataCache.GetClassId("ClassB");

            SilDataAccess.SetInt(hvoObj, (int)CmObjectFields.kflidCmObject_Class, clidPOS);

            // Now set its 'Prop1' property.
            var tag = SilDataAccess.MetaDataCache.GetFieldId("ClassA", "Prop1", false);

            SilDataAccess.SetObjProp(hvo, tag, hvoObj);
            var hvoObj2 = SilDataAccess.get_ObjectProp(hvo, tag);

            Assert.AreEqual(hvoObj, hvoObj2, "Wrong hvoObj in cache.");
        }
Example #8
0
        public void ObjPropTest()
        {
            CheckDisposed();

            // Set class first, or it will throw an exception.
            int  hvo      = 1;
            uint clidAnal = SilDataAccess.MetaDataCache.GetClassId("WfiAnalysis");

            SilDataAccess.SetInt(hvo, (int)CmObjectFields.kflidCmObject_Class, (int)clidAnal);
            // Set class of POS object.
            int  hvoObj  = 3;
            uint clidPOS = SilDataAccess.MetaDataCache.GetClassId("PartOfSpeech");

            SilDataAccess.SetInt(hvoObj, (int)CmObjectFields.kflidCmObject_Class, (int)clidPOS);

            // Now set its 'category' property.
            int tag = (int)SilDataAccess.MetaDataCache.GetFieldId("WfiAnalysis", "Category", false);

            SilDataAccess.SetObjProp(hvo, tag, hvoObj);
            int hvoObj2 = SilDataAccess.get_ObjectProp(hvo, tag);

            Assert.AreEqual(hvoObj, hvoObj2, "Wrong hvoObj in cache.");
        }