public void SetUp() { this.xmlParseActivityBuilder = new XmlParseActivityBuilder(new XslBuilder(new XpathBuilder()), new XmlParserHelperBuilder(), new XsdBuilder(), new XsdParser()); this.activity = new XmlParseActivity("My Activity Name", ActivityType.xmlParseActivityType); this.activity.XsdReference = "pf4:EquityRecord"; var xml = @" <pd:inputBindings xmlns:pd=""http://xmlns.tibco.com/bw/process/2003"" xmlns:xsl=""http://w3.org/1999/XSL/Transform""> <xmlString> <xsl:value-of select=""'TestString'""/> </xmlString> </pd:inputBindings> "; XElement doc = XElement.Parse(xml); this.activity.InputBindings = doc.Nodes(); this.activity.Parameters = new List <ClassParameter> { new ClassParameter { Name = "xmlString", Type = "string" } }; }
public override string GetReturnType(Activity activity) { XmlParseActivity xmlParseActivity = (XmlParseActivity)activity; var variableReturnType = "System.String"; if (xmlParseActivity.XsdReference != null) { variableReturnType = xmlParseActivity.XsdReference.Split(':')[1]; } else { // TODO : make a utils method in the parser to simplify this if (this.xsdParser.Parse(xmlParseActivity.ObjectXNodes, this.TargetNamespace(activity)).Count > 0) { variableReturnType = (this.xsdParser.Parse(xmlParseActivity.ObjectXNodes, this.TargetNamespace(activity)))[0].Type; } } return(variableReturnType); }
public Activity Parse(XElement inputElement) { var xmlParseActivity = new XmlParseActivity(); xmlParseActivity.Name = inputElement.Attribute("name").Value; xmlParseActivity.Type = (ActivityType)inputElement.Element(XmlnsConstant.tibcoProcessNameSpace + "type").Value; var configElement = inputElement.Element("config"); if (configElement.Element("term").Attribute("ref") != null) { xmlParseActivity.XsdReference = configElement.Element("term").Attribute("ref").Value; } else { xmlParseActivity.ObjectXNodes = configElement.Element("term").Nodes(); } xmlParseActivity.InputBindings = inputElement.Element(XmlnsConstant.tibcoProcessNameSpace + "inputBindings").Nodes(); xmlParseActivity.Parameters = new XslParser().Parse(xmlParseActivity.InputBindings); return(xmlParseActivity); }
public void Should_Return_ObjectXNodes_in_Term_config() { var xml = @"<pd:activity name=""Parse Equity"" xmlns:pd=""http://xmlns.tibco.com/bw/process/2003"" xmlns:xsl=""http://w3.org/1999/XSL/Transform"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""> <pd:type>com.tibco.plugin.xml.XMLParseActivity</pd:type> <config> <inputStyle>text</inputStyle> <term> <xsd:element name=""group"" ><xsd:complexType><xsd:sequence><xsd:element name=""adminID"" type=""xsd:string"" /></xsd:sequence></xsd:complexType></xsd:element> </term> </config> <pd:inputBindings> <sqlParams> <xsl:value-of select=""testvalue""/> </sqlParams> </pd:inputBindings> </pd:activity>"; var docz = XElement.Parse(xml); XmlParseActivity xmlParseActivity = (XmlParseActivity)xmlParseActivityParser.Parse(docz); Assert.IsTrue(xmlParseActivity.ObjectXNodes != null); }
public void Should_Return_One_Parameter_of_type_string() { XmlParseActivity xmlParseActivity = (XmlParseActivity)xmlParseActivityParser.Parse(doc); Assert.AreEqual(CSharpTypeConstant.SystemString, xmlParseActivity.Parameters[0].Type); }
public void Should_Return_One_Parameter_Named_SqlParam() { XmlParseActivity xmlParseActivity = (XmlParseActivity)xmlParseActivityParser.Parse(doc); Assert.AreEqual("sqlParams", xmlParseActivity.Parameters[0].Name); }
public void Should_Return_XsdReference_in_Term_config() { XmlParseActivity xmlParseActivity = (XmlParseActivity)xmlParseActivityParser.Parse(doc); Assert.AreEqual("pfx4:EquityRecord", xmlParseActivity.XsdReference); }
public void Should_Return_Activity_Type_Is_XmlParseActivity() { XmlParseActivity xmlParseActivity = (XmlParseActivity)xmlParseActivityParser.Parse(doc); Assert.AreEqual("com.tibco.plugin.xml.XMLParseActivity", xmlParseActivity.Type.ToString()); }