Repository: vxquery
Updated Branches:
  refs/heads/master 9d26b31af -> 2c881020c


http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
----------------------------------------------------------------------
diff --git 
a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
 
b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
index fcc35ef..b7839d0 100644
--- 
a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
+++ 
b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
@@ -19,6 +19,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
+import 
org.apache.hyracks.algebricks.common.constraints.AlgebricksPartitionConstraint;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.common.exceptions.NotImplementedException;
 import org.apache.hyracks.algebricks.common.utils.Pair;
@@ -33,12 +34,14 @@ import 
org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext;
 import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue;
+import 
org.apache.hyracks.algebricks.core.algebra.expressions.IConflictingTypeResolver;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionEvalSizeComputer;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.IMergeAggregationExpressionFactory;
-import 
org.apache.hyracks.algebricks.core.algebra.expressions.INullableTypeComputer;
+import 
org.apache.hyracks.algebricks.core.algebra.expressions.IMissableTypeComputer;
 import 
org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
 import org.apache.hyracks.algebricks.core.algebra.metadata.IMetadataProvider;
+import 
org.apache.hyracks.algebricks.core.algebra.prettyprint.AlgebricksAppendable;
 import 
org.apache.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor;
 import org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController;
 import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
@@ -57,11 +60,12 @@ import 
org.apache.vxquery.compiler.algebricks.VXQueryBinaryIntegerInspectorFacto
 import org.apache.vxquery.compiler.algebricks.VXQueryComparatorFactoryProvider;
 import org.apache.vxquery.compiler.algebricks.VXQueryConstantValue;
 import org.apache.vxquery.compiler.algebricks.VXQueryExpressionRuntimeProvider;
-import org.apache.vxquery.compiler.algebricks.VXQueryNullWriterFactory;
+import org.apache.vxquery.compiler.algebricks.VXQueryMissingWriterFactory;
 import org.apache.vxquery.compiler.algebricks.VXQueryPrinterFactoryProvider;
 import 
org.apache.vxquery.compiler.algebricks.prettyprint.VXQueryLogicalExpressionPrettyPrintVisitor;
 import org.apache.vxquery.compiler.rewriter.RewriteRuleset;
 import org.apache.vxquery.compiler.rewriter.VXQueryOptimizationContext;
+import org.apache.vxquery.exceptions.SystemException;
 import org.apache.vxquery.metadata.VXQueryMetadataProvider;
 import 
org.apache.vxquery.runtime.provider.VXQueryBinaryHashFunctionFactoryProvider;
 import 
org.apache.vxquery.runtime.provider.VXQueryBinaryHashFunctionFamilyProvider;
@@ -115,25 +119,27 @@ public class XMLQueryCompiler {
                     public IOptimizationContext createOptimizationContext(int 
varCounter,
                             IExpressionEvalSizeComputer 
expressionEvalSizeComputer,
                             IMergeAggregationExpressionFactory 
mergeAggregationExpressionFactory,
-                            IExpressionTypeComputer expressionTypeComputer, 
INullableTypeComputer nullableTypeComputer,
-                            PhysicalOptimizationConfig 
physicalOptimizationConfig) {
+                            IExpressionTypeComputer expressionTypeComputer, 
IMissableTypeComputer missableTypeComputer,
+                            IConflictingTypeResolver conflictintTypeResolver,
+                            PhysicalOptimizationConfig 
physicalOptimizationConfig,
+                            AlgebricksPartitionConstraint clusterLocations) {
                         return new VXQueryOptimizationContext(varCounter, 
expressionEvalSizeComputer,
-                                mergeAggregationExpressionFactory, 
expressionTypeComputer, nullableTypeComputer,
-                                physicalOptimizationConfig, pprinter);
+                                mergeAggregationExpressionFactory, 
expressionTypeComputer, missableTypeComputer,
+                                conflictintTypeResolver, 
physicalOptimizationConfig, clusterLocations, pprinter);
                     }
                 });
         builder.getPhysicalOptimizationConfig().setFrameSize(this.frameSize);
         if (joinHashSize > 0) {
-            
builder.getPhysicalOptimizationConfig().setMaxFramesHybridHash((int) 
(joinHashSize / this.frameSize));
+            builder.getPhysicalOptimizationConfig().setMaxFramesForJoin((int) 
(joinHashSize / this.frameSize));
         }
         if (maximumDataSize > 0) {
             builder.getPhysicalOptimizationConfig()
-                    .setMaxFramesLeftInputHybridHash((int) (maximumDataSize / 
this.frameSize));
+                    .setMaxFramesForJoinLeftInput((int) (maximumDataSize / 
this.frameSize));
+        } else {
+            builder.getPhysicalOptimizationConfig()
+                    .setMaxFramesForJoinLeftInput((int) (60L * 1024 * 1048576 
/ this.frameSize));
         }
 
-        builder.getPhysicalOptimizationConfig()
-                .setMaxFramesLeftInputHybridHash((int) (60L * 1024 * 1048576 / 
this.frameSize));
-
         builder.setLogicalRewrites(buildDefaultLogicalRewrites());
         builder.setPhysicalRewrites(buildDefaultPhysicalRewrites());
         builder.setSerializerDeserializerProvider(new 
ISerializerDeserializerProvider() {
@@ -172,9 +178,9 @@ public class XMLQueryCompiler {
                 return null;
             }
         });
-        builder.setNullableTypeComputer(new INullableTypeComputer() {
+        builder.setMissableTypeComputer(new IMissableTypeComputer() {
             @Override
-            public Object makeNullableType(Object type) throws 
AlgebricksException {
+            public Object makeMissableType(Object type) throws 
AlgebricksException {
                 SequenceType st = (SequenceType) type;
                 if (st.getQuantifier().allowsEmptySequence()) {
                     return type;
@@ -185,7 +191,7 @@ public class XMLQueryCompiler {
             }
 
             @Override
-            public boolean canBeNull(Object type) {
+            public boolean canBeMissing(Object type) {
                 return false;
             }
 
@@ -194,7 +200,7 @@ public class XMLQueryCompiler {
                 throw new NotImplementedException("NullableTypeComputer is not 
implented (getNonOptionalType)");
             }
         });
-        builder.setNullWriterFactory(new VXQueryNullWriterFactory());
+        builder.setMissingWriterFactory(new VXQueryMissingWriterFactory());
         if (availableProcessors < 1) {
             
builder.setClusterLocations(VXQueryMetadataProvider.getClusterLocations(nodeList));
         } else {
@@ -215,11 +221,11 @@ public class XMLQueryCompiler {
     }
 
     public void compile(String name, Reader query, CompilerControlBlock ccb, 
int optimizationLevel)
-            throws AlgebricksException {
+            throws AlgebricksException, SystemException {
         moduleNode = XMLQueryParser.parse(name, query);
         listener.notifyParseResult(moduleNode);
         module = new XMLQueryTranslator(ccb).translateModule(moduleNode);
-        pprinter = new LogicalOperatorPrettyPrintVisitor(
+        pprinter = new LogicalOperatorPrettyPrintVisitor(new 
AlgebricksAppendable(),
                 new 
VXQueryLogicalExpressionPrettyPrintVisitor(module.getModuleContext()));
         VXQueryMetadataProvider mdProvider = new 
VXQueryMetadataProvider(nodeList, ccb.getSourceFileMap(),
                 module.getModuleContext(), this.hdfsConf, nodeControllerInfos);
@@ -278,7 +284,7 @@ public class XMLQueryCompiler {
     }
 
     private static List<Pair<AbstractRuleController, 
List<IAlgebraicRewriteRule>>> buildDefaultPhysicalRewrites() {
-        List<Pair<AbstractRuleController, List<IAlgebraicRewriteRule>>> 
defaultPhysicalRewrites = new ArrayList<Pair<AbstractRuleController, 
List<IAlgebraicRewriteRule>>>();
+        List<Pair<AbstractRuleController, List<IAlgebraicRewriteRule>>> 
defaultPhysicalRewrites = new ArrayList<>();
         SequentialOnceRuleController seqOnceCtrlAllLevels = new 
SequentialOnceRuleController(true);
         SequentialOnceRuleController seqOnceCtrlTopLevel = new 
SequentialOnceRuleController(false);
         defaultPhysicalRewrites.add(new Pair<AbstractRuleController, 
List<IAlgebraicRewriteRule>>(seqOnceCtrlAllLevels,

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
----------------------------------------------------------------------
diff --git 
a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
 
b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
index ff230d3..3d95cb1 100644
--- 
a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
+++ 
b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
@@ -2143,7 +2143,7 @@ public class XMLQueryTranslator {
 
     private List<LogicalVariable> translateExpressionList(List<ASTNode> 
expressions, TranslationContext tCtx)
             throws SystemException {
-        List<LogicalVariable> result = new ArrayList<LogicalVariable>();
+        List<LogicalVariable> result = new ArrayList<>();
         for (ASTNode e : expressions) {
             result.add(translateExpression(e, tCtx));
         }
@@ -2151,11 +2151,11 @@ public class XMLQueryTranslator {
     }
 
     private static Mutable<ILogicalExpression> mutable(ILogicalExpression 
expr) {
-        return new MutableObject<ILogicalExpression>(expr);
+        return new MutableObject<>(expr);
     }
 
     private static Mutable<ILogicalOperator> mutable(ILogicalOperator op) {
-        return new MutableObject<ILogicalOperator>(op);
+        return new MutableObject<>(op);
     }
 
     private LogicalVariable newLogicalVariable() {

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
----------------------------------------------------------------------
diff --git 
a/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
 
b/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
index 51e6091..7646f97 100644
--- 
a/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
+++ 
b/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
@@ -137,7 +137,7 @@ public class SimpleXQueryTest {
     private static void runTestInternal(String testName, String query) throws 
Exception {
 
         Map<String, NodeControllerInfo> nodeControllerInfos = new 
HashMap<String, NodeControllerInfo>();
-        nodeControllerInfos.put("nc1", new NodeControllerInfo("nc1", null, new 
NetworkAddress("127.0.0.1", 0), null));
+        nodeControllerInfos.put("nc1", new NodeControllerInfo("nc1", null, new 
NetworkAddress("127.0.0.1", 0), null, null, 1));
 
         XMLQueryCompiler compiler = new XMLQueryCompiler(null, 
nodeControllerInfos, 65536);
         CompilerControlBlock ccb = new CompilerControlBlock(new 
StaticContextImpl(RootStaticContextImpl.INSTANCE),

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java
----------------------------------------------------------------------
diff --git 
a/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java
 
b/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java
index ced608a..c93996d 100644
--- 
a/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java
+++ 
b/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java
@@ -17,17 +17,16 @@ package org.apache.vxquery.cli;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.hyracks.api.client.HyracksConnection;
+import org.apache.hyracks.api.client.IHyracksClientConnection;
 import org.kohsuke.args4j.Argument;
 import org.kohsuke.args4j.CmdLineParser;
 import org.kohsuke.args4j.Option;
 
-import org.apache.hyracks.api.client.HyracksConnection;
-import org.apache.hyracks.api.client.IHyracksClientConnection;
-
 public class VXQueryClusterShutdown {
     /**
      * Main method to get command line options and execute query process.
-     * 
+     *
      * @param args
      * @throws Exception
      */
@@ -42,16 +41,16 @@ public class VXQueryClusterShutdown {
             parser.printUsage(System.err);
             return;
         }
-        
+
         // give error message if missing arguments
         if (opts.clientNetIpAddress == null) {
             parser.printUsage(System.err);
             return;
         }
-        
+
         try {
             IHyracksClientConnection hcc = new 
HyracksConnection(opts.clientNetIpAddress, opts.clientNetPort);
-            hcc.stopCluster();
+            hcc.stopCluster(true);
         } catch (Exception e) {
             System.err.println("Unable to connect and shutdown the Hyracks 
cluster.");
             System.err.println(e);

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/pom.xml
----------------------------------------------------------------------
diff --git a/vxquery-xtest/pom.xml b/vxquery-xtest/pom.xml
index 27c2bf8..a00bec2 100644
--- a/vxquery-xtest/pom.xml
+++ b/vxquery-xtest/pom.xml
@@ -188,6 +188,27 @@
             <artifactId>jetty</artifactId>
             <scope>compile</scope>
         </dependency>
+
+        <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-common</artifactId>
+            <version>2.7.0</version>
+            <classifier>tests</classifier>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-hdfs</artifactId>
+            <version>2.7.0</version>
+            <classifier>tests</classifier>
+        </dependency>
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+
     </dependencies>
 
     <reporting>

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java
----------------------------------------------------------------------
diff --git 
a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java 
b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java
index 1cd2696..e4ba6eb 100644
--- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java
+++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java
@@ -29,6 +29,7 @@ import org.apache.hyracks.api.client.NodeControllerInfo;
 import org.apache.hyracks.api.comm.IFrame;
 import org.apache.hyracks.api.comm.IFrameTupleAccessor;
 import org.apache.hyracks.api.comm.VSizeFrame;
+import org.apache.hyracks.api.dataset.DatasetJobRecord;
 import org.apache.hyracks.api.dataset.IHyracksDataset;
 import org.apache.hyracks.api.dataset.IHyracksDatasetReader;
 import org.apache.hyracks.api.dataset.ResultSetId;
@@ -36,7 +37,6 @@ import org.apache.hyracks.api.exceptions.HyracksException;
 import org.apache.hyracks.api.job.JobFlag;
 import org.apache.hyracks.api.job.JobId;
 import org.apache.hyracks.api.job.JobSpecification;
-import org.apache.hyracks.client.dataset.HyracksDataset;
 import org.apache.hyracks.control.nc.resources.memory.FrameManager;
 import org.apache.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor;
 import org.apache.vxquery.compiler.CompilerControlBlock;
@@ -52,8 +52,7 @@ import 
org.apache.vxquery.xmlquery.query.VXQueryCompilationListener;
 import org.apache.vxquery.xmlquery.query.XMLQueryCompiler;
 
 public class TestRunner {
-    private static final Pattern EMBEDDED_SYSERROR_PATTERN = Pattern
-            .compile("org\\.apache\\.vxquery\\.exceptions\\.SystemException: 
(\\p{javaUpperCase}{4}\\d{4})");
+    private static final Pattern EMBEDDED_SYSERROR_PATTERN = 
Pattern.compile("(\\p{javaUpperCase}{4}\\d{4})");
 
     private XTestOptions opts;
     private IHyracksClientConnection hcc;
@@ -112,6 +111,10 @@ public class TestRunner {
                 FrameManager resultDisplayFrameMgr = new 
FrameManager(spec.getFrameSize());
                 IFrame frame = new VSizeFrame(resultDisplayFrameMgr);
                 IHyracksDatasetReader reader = hds.createReader(jobId, 
ccb.getResultSetId());
+                // TODO(tillw) remove this loop once the IHyracksDatasetReader 
reliably returns the correct exception
+                while (reader.getResultStatus() == 
DatasetJobRecord.Status.RUNNING) {
+                    Thread.sleep(1);
+                }
                 IFrameTupleAccessor frameTupleAccessor = new 
ResultFrameTupleAccessor();
                 res.result = "";
                 while (reader.read(frame) > 0) {
@@ -125,10 +128,13 @@ public class TestRunner {
                 while (t.getCause() != null) {
                     t = t.getCause();
                 }
-                Matcher m = EMBEDDED_SYSERROR_PATTERN.matcher(t.getMessage());
-                if (m.find()) {
-                    String eCode = m.group(1);
-                    throw new SystemException(ErrorCode.valueOf(eCode), e);
+                final String message = t.getMessage();
+                if (message != null) {
+                    Matcher m = EMBEDDED_SYSERROR_PATTERN.matcher(message);
+                    if (m.find()) {
+                        String eCode = m.group(1);
+                        throw new SystemException(ErrorCode.valueOf(eCode), e);
+                    }
                 }
                 throw e;
             }

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/AbstractXQueryTest.java
----------------------------------------------------------------------
diff --git 
a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/AbstractXQueryTest.java 
b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/AbstractXQueryTest.java
index 96cc7cb..1e2dcf6 100644
--- 
a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/AbstractXQueryTest.java
+++ 
b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/AbstractXQueryTest.java
@@ -117,15 +117,14 @@ public abstract class AbstractXQueryTest {
     public static void shutdown() throws IOException {
         removeFS();
         TestClusterUtil.stopCluster(cc, nc);
-
     }
 
     public static void removeFS() throws IOException {
+        dfs.shutdownHDFS();
         File tmp = new File(TMP);
         if (tmp.exists()) {
             FileUtils.deleteDirectory(tmp);
         }
-        dfs.shutdownHDFS();
     }
 
 }

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/src/test/resources/ExpectedTestResults/Simple/data_types.txt
----------------------------------------------------------------------
diff --git 
a/vxquery-xtest/src/test/resources/ExpectedTestResults/Simple/data_types.txt 
b/vxquery-xtest/src/test/resources/ExpectedTestResults/Simple/data_types.txt
new file mode 100644
index 0000000..7976dbd
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/ExpectedTestResults/Simple/data_types.txt
@@ -0,0 +1,15 @@
+10.99
+http://www.example.com/catalog.xml
+true
+8
+1999-12-31
+1999-12-31T00:00:00
+2.3
+1.5
+0.4
+---30+10:30
+64
+32
+16
+string
+01:02:03

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/src/test/resources/Queries/XQuery/Simple/data_types.xq
----------------------------------------------------------------------
diff --git 
a/vxquery-xtest/src/test/resources/Queries/XQuery/Simple/data_types.xq 
b/vxquery-xtest/src/test/resources/Queries/XQuery/Simple/data_types.xq
new file mode 100644
index 0000000..67a24dc
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Simple/data_types.xq
@@ -0,0 +1,32 @@
+(: 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. :)
+
+(xs:untypedAtomic("10.99"),
+xs:anyURI("http://www.example.com/catalog.xml";),
+xs:boolean("true"),
+xs:byte(8),
+xs:date("1999-12-31"),
+xs:dateTime("1999-12-31T24:00:00"),
+xs:decimal(2.3),
+xs:double(1.5),
+xs:float(0.4),
+xs:gDay("---30+10:30"),
+xs:int(64),
+xs:long(32),
+xs:short(16),
+xs:string("string"),
+xs:time("01:02:03"))

http://git-wip-us.apache.org/repos/asf/vxquery/blob/2c881020/vxquery-xtest/src/test/resources/cat/SingleQuery.xml
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/cat/SingleQuery.xml 
b/vxquery-xtest/src/test/resources/cat/SingleQuery.xml
index c9bd305..8800339 100644
--- a/vxquery-xtest/src/test/resources/cat/SingleQuery.xml
+++ b/vxquery-xtest/src/test/resources/cat/SingleQuery.xml
@@ -23,9 +23,19 @@
       <query name="add" date="2014-08-18"/>
       <output-file compare="Text">add.txt</output-file>
    </test-case>
+   <test-case name="simple-data-types" FilePath="Simple/" Creator="Preston 
Carman">
+      <description>Adds two numbers.</description>
+      <query name="data_types" date="2017-04-17"/>
+      <output-file compare="Text">data_types.txt</output-file>
+   </test-case>
    <test-case name="simple-fn-doc" FilePath="Simple/" Creator="Preston Carman">
       <description>Adds two numbers.</description>
       <query name="fn_doc" date="2014-08-18"/>
       <output-file compare="Text">fn_doc.txt</output-file>
    </test-case>
+   <test-case name="simple-list" FilePath="Simple/" Creator="Preston Carman">
+      <description>Adds two numbers.</description>
+      <query name="list" date="2017-04-17"/>
+      <output-file compare="Text">list.txt</output-file>
+   </test-case>
 </test-group>

Reply via email to