Example #1
0
        public void setUp()
        {
            string adl = System.IO.File.ReadAllText(@"..\..\..\..\java-libs\adl-parser\src\test\resources\adl-test-car.paths.test.adl");

            se.acode.openehr.parser.ADLParser  parser    = new se.acode.openehr.parser.ADLParser(adl);
            org.openehr.am.archetype.Archetype archetype = parser.parse();
            Assert.IsNotNull(archetype);
            CComplexObject definition = archetype.getDefinition();
        }
Example #2
0
        public void testPath()
        {
            string adl = System.IO.File.ReadAllText(@"..\..\..\..\java-libs\adl-parser\src\test\resources\adl-test-car.paths.test.adl");

            se.acode.openehr.parser.ADLParser  parser    = new se.acode.openehr.parser.ADLParser(adl);
            org.openehr.am.archetype.Archetype archetype = parser.parse();
            Assert.IsNotNull(archetype);
            CComplexObject definition = archetype.getDefinition();

            // root path CAR
            Assert.AreEqual("/", definition.path());

            // wheels attribute
            CAttribute wheels = (CAttribute)definition.getAttributes().get(0);

            Assert.AreEqual("/wheels", wheels.path());

            // first WHEEL node
            CObject firstWheel = (CObject)wheels.getChildren().get(0);

            Assert.AreEqual("/wheels[at0001]", firstWheel.path());

            // description and parts of first WHEEL
            CComplexObject firstWheelObj = (CComplexObject)firstWheel;
            CAttribute     description   = (CAttribute)firstWheelObj.getAttributes().get(0);

            Assert.AreEqual("/wheels[at0001]/description", description.path());
            CAttribute parts = (CAttribute)firstWheelObj.getAttributes().get(1);

            Assert.AreEqual("/wheels[at0001]/parts", parts.path());

            // WHEEL_PART node
            CObject wheelParts = (CObject)parts.getChildren().get(0);

            Assert.AreEqual("/wheels[at0001]/parts[at0002]",
                            wheelParts.path());

            // something and something_else of WHEEL_PART node
            //CComplexObject wheelPartsObj = (CComplexObject)wheelParts;
            //Assert.AreEqual("something of WHEEL_PART",
            //        "/wheels[at0001]/parts[at0002]/something",
            //        wheelPartsObj.getAttributes().get(0).path());

            //Assert.AreEqual("something_else of WHEEL_PART",
            //        "/wheels[at0001]/parts[at0002]/something_else",
            //        wheelPartsObj.getAttributes().get(1).path());
        }
Example #3
0
        public void testNodeAtPath()
        {
            string adl = System.IO.File.ReadAllText(@"..\..\..\..\java-libs\adl-parser\src\test\resources\adl-test-car.paths.test.adl");

            se.acode.openehr.parser.ADLParser  parser    = new se.acode.openehr.parser.ADLParser(adl);
            org.openehr.am.archetype.Archetype archetype = parser.parse();
            Assert.IsNotNull(archetype);
            CComplexObject definition = archetype.getDefinition();

            String[] paths =
            {
                "/",
                "/wheels[at0001]",
                "/wheels[at0001]/description",
                "/wheels[at0001]/parts[at0002]",
                "/wheels[at0001]/parts[at0002]/something",
                "/wheels[at0001]/parts[at0002]/something_else",
                "/wheels[at0003]",
                "/wheels[at0003]/description",
                "/wheels[at0004]",
                "/wheels[at0004]/description",
                "/wheels[at0005]",
                "/wheels[at0005]/description"
            };

            CAttribute       wheels = (CAttribute)definition.getAttributes().get(0);
            CComplexObject   wheel1 = ((CComplexObject)wheels.getChildren().get(0));
            CComplexObject   wheel2 = ((CComplexObject)wheels.getChildren().get(1));
            CComplexObject   wheel3 = ((CComplexObject)wheels.getChildren().get(2));
            CComplexObject   wheel4 = ((CComplexObject)wheels.getChildren().get(3));
            CAttribute       w      = (CAttribute)wheel1.getAttributes().get(1);
            CComplexObject   parts  = (CComplexObject)w.getChildren().get(0);
            CAttribute       pt     = (CAttribute)parts.getAttributes().get(0);
            CPrimitiveObject pts    = (CPrimitiveObject)pt.getChildren().get(0);
            CAttribute       pt2    = (CAttribute)parts.getAttributes().get(1);
            CPrimitiveObject pts2   = (CPrimitiveObject)pt2.getChildren().get(0);

            CAttribute       h1 = (CAttribute)wheel1.getAttributes().get(0);
            CPrimitiveObject p1 = (CPrimitiveObject)h1.getChildren().get(0);
            CAttribute       h2 = (CAttribute)wheel2.getAttributes().get(0);
            CPrimitiveObject p2 = (CPrimitiveObject)h2.getChildren().get(0);
            CAttribute       h3 = (CAttribute)wheel3.getAttributes().get(0);
            CPrimitiveObject p3 = (CPrimitiveObject)h3.getChildren().get(0);
            CAttribute       h4 = (CAttribute)wheel4.getAttributes().get(0);
            CPrimitiveObject p4 = (CPrimitiveObject)h4.getChildren().get(0);

            CObject[] nodes =
            {
                definition,
                wheel1,
                p1,
                parts,
                pts,
                pts2,
                wheel2,
                p2,
                wheel3,
                p3,
                wheel4,
                p4,
            };

            for (int i = 0; i < paths.Length; i++)
            {
                Assert.AreEqual(nodes[i], archetype.node(paths[i]));
            }
        }