예제 #1
0
        private bool IsNodeValid(int dependencyIndex, Node node)
        {
            var builder = new NodeBuilder(node);

            if (dependencyIndex != 1)
            {
                return(true);
            }
            if (!_collection.HasConcept(builder.FunctionName))
            {
                return(false);
            }
            if (!_collection.IsRelatedWith(builder.FunctionName, ConceptNames.Axis))
            {
                return(false);
            }
            try
            {
                var axis = GeomUtils.ExtractAxis(builder.Shape);
                Ensure.IsNotNull(axis);
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
        public void CapabilityExportRelatedConcept()
        {
            var          collection      = new CapabilitiesCollection();
            const string conceptName     = "concept";
            const string relatedConcept  = "related";
            const string relatedConcept2 = "related2";
            const string relatedConcept3 = "related3";
            var          concept         = collection.AddConcept(conceptName);
            var          related         = collection.AddConcept(relatedConcept);

            concept.AddRelatedConcept(related);
            collection.AddRelation(conceptName, relatedConcept2);
            collection.AddRelation(conceptName, relatedConcept3);

            concept.SetCapability("Color", "Red");
            related.SetCapability("Icon", "image.png");

            concept.AddBlacklistedCapability("Icon");

            const string documentName = "related.xmlcaps";
            const string capsFileName = "related.caps";

            collection.SaveAsDocument(documentName);
            CapabilitiesDocumentImporter.LoadFileCapabilities(documentName, capsFileName);
            var exists = File.Exists(capsFileName);

            Assert.IsTrue(exists);
            collection = CapabilitiesLoader.LoadFileCapabilities(capsFileName);

            Assert.IsTrue(collection.HasConcept("concept"));
        }
        public void TestAddCapability()
        {
            var          collection     = new CapabilitiesCollection();
            const string shapeId        = "shape";
            var          conceptBuilder = collection.AddConcept(shapeId);

            Assert.IsTrue(collection.HasConcept(shapeId));
            var sameConceptBuilder = collection.GetConcept(shapeId);

            Assert.IsTrue(conceptBuilder.Node == sameConceptBuilder.Node);
        }
예제 #4
0
        private bool IsNodeValid(int dependencyIndex, Node node)
        {
            var builder = new NodeBuilder(node);

            if (dependencyIndex != 1)
            {
                return(true);
            }
            if (!_collection.HasConcept(builder.FunctionName))
            {
                return(false);
            }
            return(true);
        }