summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/thrift/lib/xml/test
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
commit19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch)
tree42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/jaegertracing/thrift/lib/xml/test
parentInitial commit. (diff)
downloadceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.tar.xz
ceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.zip
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/jaegertracing/thrift/lib/xml/test')
-rw-r--r--src/jaegertracing/thrift/lib/xml/test/Makefile.am26
-rw-r--r--src/jaegertracing/thrift/lib/xml/test/build.xml112
2 files changed, 138 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/lib/xml/test/Makefile.am b/src/jaegertracing/thrift/lib/xml/test/Makefile.am
new file mode 100644
index 000000000..bb87a5203
--- /dev/null
+++ b/src/jaegertracing/thrift/lib/xml/test/Makefile.am
@@ -0,0 +1,26 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+check:
+ $(ANT) $(ANT_FLAGS) test
+
+# Make sure this doesn't fail if ant is not configured.
+clean-local:
+ ANT=$(ANT) ; if test -z "$$ANT" ; then ANT=: ; fi ; \
+ $$ANT $(ANT_FLAGS) clean
diff --git a/src/jaegertracing/thrift/lib/xml/test/build.xml b/src/jaegertracing/thrift/lib/xml/test/build.xml
new file mode 100644
index 000000000..f0e95cf02
--- /dev/null
+++ b/src/jaegertracing/thrift/lib/xml/test/build.xml
@@ -0,0 +1,112 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project name="XML Schema Test" default="test" basedir=".">
+
+ <description>XML Schema Validation Test</description>
+
+ <property name="xml.dir" location="${basedir}/.." />
+ <property name="gen.xml.dir" location="${basedir}/../gen-xml" />
+ <property name="idl.xml.schema" location="${xml.dir}/thrift-idl.xsd" />
+
+ <property name="thrift.dir" location="../../../" />
+ <property name="thrift.test.dir" location="${thrift.dir}/test" />
+ <property name="thrift.compiler" location="${thrift.dir}/compiler/cpp/thrift" />
+
+ <property file="${basedir}/build.properties" />
+
+ <target name="compiler.check">
+ <fail>
+ <condition>
+ <not>
+ <resourcecount count="1">
+ <fileset id="fs" file="${thrift.compiler}"/>
+ </resourcecount>
+ </not>
+ </condition>
+ Thrift compiler is missing !
+ </fail>
+ </target>
+
+ <target name="init" depends="compiler.check, mkdirs">
+ <tstamp />
+ </target>
+
+ <target name="mkdirs">
+ <mkdir dir="${gen.xml.dir}"/>
+ </target>
+
+ <target name="generate" depends="init">
+ <generate-xml file="${thrift.test.dir}/ThriftTest.thrift"/>
+ <generate-xml file="${thrift.test.dir}/Include.thrift"/>
+ <generate-xml file="${thrift.test.dir}/Recursive.thrift"/>
+ <generate-xml file="${thrift.test.dir}/ManyOptionals.thrift"/>
+ <generate-xml file="${thrift.test.dir}/OptionalRequiredTest.thrift"/>
+ <generate-xml file="${thrift.test.dir}/ConstantsDemo.thrift"/>
+ <generate-xml file="${thrift.test.dir}/TypedefTest.thrift" />
+ <generate-xml file="${thrift.test.dir}/AnnotationTest.thrift" />
+ <generate-xml file="${thrift.test.dir}/DocTest.thrift" />
+ <generate-xml file="${thrift.test.dir}/EnumTest.thrift" />
+ <generate-xml file="${thrift.test.dir}/ManyTypedefs.thrift" />
+ </target>
+
+ <target name="test" description="run schema validation"
+ depends="validate-generated-xml"/>
+
+ <target name="validate-generated-xml" depends="init, generate">
+ <validate-xml file="${gen.xml.dir}/ThriftTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/Include.xml"/>
+ <validate-xml file="${gen.xml.dir}/Recursive.xml"/>
+ <validate-xml file="${gen.xml.dir}/ManyOptionals.xml"/>
+ <validate-xml file="${gen.xml.dir}/OptionalRequiredTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/ConstantsDemo.xml"/>
+ <validate-xml file="${gen.xml.dir}/TypedefTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/AnnotationTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/DocTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/EnumTest.xml"/>
+ <validate-xml file="${gen.xml.dir}/ManyTypedefs.xml"/>
+ </target>
+
+ <target name="clean">
+ <delete dir="${build.dir}" />
+ <delete dir="${gen.xml.dir}" />
+ </target>
+
+ <macrodef name="generate-xml">
+ <attribute name="file" />
+ <sequential>
+ <exec executable="${thrift.compiler}" failonerror="true">
+ <arg line="-gen xml:merge"/>
+ <arg line="-out ${gen.xml.dir}"/>
+ <arg line="@{file}"/>
+ </exec>
+ </sequential>
+ </macrodef>
+
+ <macrodef name="validate-xml">
+ <attribute name="file" />
+ <sequential>
+ <echo message="validating generated XML: @{file}" />
+ <schemavalidate file="@{file}">
+ <schema namespace="http://thrift.apache.org/xml/idl"
+ file="${idl.xml.schema}" />
+ </schemavalidate>
+ </sequential>
+ </macrodef>
+
+</project>