zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #21857
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
Chris Hillery has proposed merging lp:~zorba-coders/zorba/prune-test-dir into lp:zorba.
Commit message:
Pruning dead and unused code and scripts from the test directory.
Requested reviews:
Chris Hillery (ceejatec)
For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/prune-test-dir/+merge/163672
--
https://code.launchpad.net/~zorba-coders/zorba/prune-test-dir/+merge/163672
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'test/CMakeLists.txt'
--- test/CMakeLists.txt 2013-02-07 17:24:36 +0000
+++ test/CMakeLists.txt 2013-05-14 10:10:36 +0000
@@ -33,7 +33,6 @@
ADD_SUBDIRECTORY(extern)
ADD_SUBDIRECTORY(unit)
-ADD_SUBDIRECTORY(parser)
ADD_SUBDIRECTORY(update)
ADD_SUBDIRECTORY(sax2)
@@ -42,32 +41,9 @@
INSTALL(DIRECTORY fots_driver
DESTINATION share/zorba-${ZORBA_MAJOR_NUMBER}.${ZORBA_MINOR_NUMBER}.${ZORBA_PATCH_NUMBER})
-SET (TEST_PLAN_SERIALIZER_SRCS
- test_plan_serializer.cpp
- timer.cpp)
-
#
# apitest
#
ZORBA_GENERATE_EXE("apitest" "apitest.cpp" "" "" "")
-ZORBA_GENERATE_EXE("test_plan_serializer" "${TEST_PLAN_SERIALIZER_SRCS}" "" "" "")
-
-ZORBA_GENERATE_EXE("path_test" "path_test.cpp" "" "" "")
-
#ZORBA_GENERATE_EXE("ordpath_test" "test_ordpath.cpp" "" "" "")
-
-ZORBA_ADD_TEST (test/fspathbranch1 path_test --branch-path /d1/d2/../d3/.)
-ZORBA_SET_TEST_PROPERTY (test/fspathbranch1 PASS_REGULAR_EXPRESSION /d1)
-
-ZORBA_ADD_TEST (test/fspathbranch2 path_test --branch-path /dir)
-ZORBA_SET_TEST_PROPERTY (test/fspathbranch2 PASS_REGULAR_EXPRESSION /)
-
-ZORBA_ADD_TEST (test/fspath1 path_test --path /../d1/./././././././../..)
-ZORBA_SET_TEST_PROPERTY (test/fspath1 PASS_REGULAR_EXPRESSION /)
-
-ZORBA_ADD_TEST (test/fspath2 path_test --path d1/d2/../../../../d3//)
-ZORBA_SET_TEST_PROPERTY (test/fspath2 PASS_REGULAR_EXPRESSION ../../d3)
-
-# External testsuites
-ADD_SUBDIRECTORY(testsuites)
=== removed file 'test/apitest_spec'
--- test/apitest_spec 2013-02-07 17:24:36 +0000
+++ test/apitest_spec 1970-01-01 00:00:00 +0000
@@ -1,47 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2009 The FLWOR Foundation.
-#
-# Licensed 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.
-
-# Call with argument -h for information
-
-usage () {
-cat <<EOF
-Runs a test under apitest. Usage:
-apitest_spec { --gdb | --valgrind } TEST [ apitest options ]
-where TEST can be a .spec file or a test name (e.g. zorba/paths/path1)
-EOF
-exit 1
-}
-
-test $# -eq 0 || test "$1" = "-h" || test "$1" = "--help" && usage
-DIR=$(cd $(dirname $0); pwd)
-if test "x$1" = "x--valgrind"; then
- VG="valgrind --num-callers=60"; shift
-elif test "x$1" = "x--gdb"; then
- VG="gdb --args"; shift
-else
- VG=""
-fi
-
-SPEC=$1; shift
-test -f $SPEC || SPEC=$DIR/rbkt/Queries/$SPEC.spec
-test -f "$SPEC" && ARGS=`egrep ^Args: $SPEC | cut -f2- -d: | sed -e 's#$RBKT_SRC_DIR#'"$DIR/rbkt"'#g'`
-
-echo
-test -f "$SPEC" && { echo "Spec file: $SPEC"; cat $SPEC; }
-echo
-echo Command: $VG $DIR/zorbatest/build/test/apitest `echo $ARGS` $* `dirname $SPEC`/`basename $SPEC .spec`.xq
-echo
-time -p $VG $DIR/zorbatest/build/test/apitest `echo $ARGS` $* `dirname $SPEC`/`basename $SPEC .spec`.xq
-echo
=== removed file 'test/cmp_5thelem_test_results'
--- test/cmp_5thelem_test_results 2013-02-07 17:24:36 +0000
+++ test/cmp_5thelem_test_results 1970-01-01 00:00:00 +0000
@@ -1,40 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-if test $# != 2; then
- echo 'Args: submissionid1 submissionid2'
- echo 'Identify submissionids from dashboard test result links'
- exit 1
-fi
-
-URL='http://dbisdart.inf.ethz.ch/cdash/viewTest.php?onlyfailed&buildid='
-SAXON=`dirname $0`/zorbatest/xquery
-test -f $SAXON || { echo 'xquery script not present'; echo 'run setup_framework in test/zorbatest'; exit 1; }
-
-q=`mktemp /tmp/ctr.XXXXXX`
-
-cat > $q <<"EOF"
-declare default element namespace "http://www.w3.org/1999/xhtml";
-declare option saxon:output "omit-xml-declaration=yes";
-fn:data (//td [not(@class) and parent::tr[@class]]/a/text())
-EOF
-
-f1=`mktemp /tmp/ctr.XXXXXX`
-f2=`mktemp /tmp/ctr.XXXXXX`
-
-wget "$URL""$1" -O - | sed -e's/\ / /g;s/\&/\&/g;s/XQuery\///g' | tidy --doctype omit -q -asxml 2>/dev/null | $SAXON -s - $q | sort >$f1
-wget "$URL""$2" -O - | sed -e's/\ / /g;s/\&/\&/g;s/XQuery\///g' | tidy --doctype omit -q -asxml 2>/dev/null | $SAXON -s - $q | sort | diff -U0 $f1 - | egrep -v '^@' | perl -pe 's#[.]#/#g'
-
-rm -f $f1 $q
=== removed file 'test/cmp_ctest_logs'
--- test/cmp_ctest_logs 2013-02-07 17:24:36 +0000
+++ test/cmp_ctest_logs 1970-01-01 00:00:00 +0000
@@ -1,32 +0,0 @@
-#!/bin/sh
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-if test "$#" != "2"; then
- echo Args: dir1/LastTestsFailed.log[.gz] dir2/LastTestsFailed.log[.gz]
- exit 1
-fi
-
-TMP1=`mktemp /tmp/XXXXXX`
-
-mycat()
-{
- if test "`basename $1 .gz`" != "`basename $1`"; then zcat $1; else cat $1; fi
-}
-
-mycat $2 | cut -f2 -d: | sort >$TMP1
-
-mycat $1 | cut -f2 -d: | sort | diff -U0 $TMP1 - | tail -n +3 | egrep -v '^@'
-
-rm -f $TMP1
=== removed file 'test/collect_ctest_log_errors'
--- test/collect_ctest_log_errors 2013-02-07 17:24:36 +0000
+++ test/collect_ctest_log_errors 1970-01-01 00:00:00 +0000
@@ -1,104 +0,0 @@
-#!/usr/bin/perl
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-use strict;
-use Getopt::Long;
-use FindBin;
-use File::Temp;
-
-my ($html, $blame, $parse_err);
-GetOptions ("html" => \$html, "blame" => \$blame, "parse-err" => \$parse_err);
-
-my $test_path = $FindBin::RealBin;
-
-my %queries;
-
-sub add_assert_fail {
- my ($q, $file, $fun, $assertion) = @_;
- $_ = "$file: $fun: $assertion";
- if ($html) {
- s/([&])/$1amp;/g; s/([<])/</g; s/[>]/>/g;
- }
- push @{ $queries {$_} }, $q;
-}
-
-sub by_number_desc_then_string {
- return -(($a <=> $b) || ($a cmp $b));
-}
-
-sub svn_blame {
- if (! $blame) { return ""; }
-
- my $author;
-
- my ($qfh, $qf) = File::Temp::tempfile ();
- print $qfh '
-declare option saxon:output "omit-xml-declaration=yes";
-declare variable $line external;
-//entry [@line-number eq $line]//author/text()
-';
- close ($qfh);
-
- if (m#([^:]+):([^:]+):#) {
- my ($file, $line) = ($1, $2);
- if (($file eq "?") || ($line eq "?")) { return ""; }
- $author = `svn blame --xml $file | $test_path/zorbatest/xquery -s - $qf line=$line`
- }
-
- unlink $qf;
- return "$author: ";
-}
-
-my ($query, $in_valgrind, $vg_err);
-
-while (<>) {
- if (m#^[0-9]+/[0-9]+ Testing: (.*)$#) {
- $query = $1;
- $in_valgrind = 0;
- $vg_err = "";
- } elsif (m#^[^:]+: ([^:]+:[0-9]+): (.*): Assertion (.*) failed.$#) {
- add_assert_fail $query, $1, $2, $3;
- } elsif (m#XQP0005:.*Assertion (.*) failed in ([^:]+:[0-9]+): (.*)$#) {
- add_assert_fail $query, $2, $3, $1;
- } elsif (m#XQP0019: ?Zorba internal error (.*)#) {
- add_assert_fail $query, "?", "?:?", "XQP0019: exception $1 suppressed";
- } elsif (m#^[<] [<]root[>]XPST0003[<]/root>$# && $parse_err) {
- add_assert_fail $query, "?", "?:?", "parser failure XPST0003";
- } elsif (m#^[>] [<]root[>]XPST0003[<]/root>$# && $parse_err) {
- add_assert_fail $query, "?", "?:?", "parse incorrectly succeeded, should have raised XPST0003";
- } elsif (m#running valgrind#) {
- $in_valgrind = 1;
- } elsif ($in_valgrind == 1 && m#^==[0-9]+== ([^ ].*)#) {
- $in_valgrind++;
- $vg_err = "Valgrind: $1";
- } elsif ($in_valgrind == 2 && m#^==[0-9]+== *at 0x[0-9A-Z]+: (.*) [(](.*:[0-9]+)[)]$#) {
- add_assert_fail ($query, $2, $1, $vg_err);
- $in_valgrind = 3;
- }
-}
-
-# change testcase names to include fault count
-my %queries_new;
-foreach (keys %queries) {
- my @qs = @{ $queries {$_} };
- $_ = scalar @qs . " queries: " . svn_blame . $_;
- @{ $queries_new {$_} } = @qs;
-}
-%queries = %queries_new;
-
-foreach (sort (by_number_desc_then_string keys(%queries))) {
- my $case = $_;
- my @qs = @{ $queries {$case} };
- print $case . "\n" . join ("\n", @qs) . "\n\n";
-}
=== removed directory 'test/coverity'
=== removed file 'test/coverity/update.sh'
--- test/coverity/update.sh 2013-02-07 17:24:36 +0000
+++ test/coverity/update.sh 1970-01-01 00:00:00 +0000
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-###
-# Script for updating project.tgz for Coverity scan
-###
-
-
-echo "Must have cov-build installed."
-echo " See: http://scan.coverity.com/self-build/"
-
-PATH=$PATH:~/dev/coverity/prevent-linux-2.4.6/bin
-
-cov-configure -co /usr/bin/cc
-#cov-configure -co /usr/bin/g++
-cov-configure -co /usr/bin/c++
-
-# cd to build dir
-pushd .
-cd ../../build
-
-# Optional Run any build steps that you don't want to analyze i.e. ./configure
-rm -R README emit output
-make clean
-
-
-cov-build -e emit -o output make -j4
-
-# Create a README file with your name, email, and project's name
-cat "Cezar Andrei, cezar.andrei@xxxxxxxxx, Zorba" > README
-
-tar czvf project.tgz README emit output
-
-# Upload the project.tgz to your server
-mv project.tgz ../test/coverity
-
-#rm -R README emit output
-popd
\ No newline at end of file
=== removed file 'test/ctest_query_emu'
--- test/ctest_query_emu 2013-02-07 17:24:36 +0000
+++ test/ctest_query_emu 1970-01-01 00:00:00 +0000
@@ -1,133 +0,0 @@
-#!/usr/bin/perl
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-# Call with argument -h for information
-
-use strict;
-use warnings;
-
-use File::Find;
-use File::Path;
-use Cwd 'abs_path';
-use IO::Handle;
-
-sub usage {
- print "Emulates ctest operation for test/rbkt/ tests.\n";
- print "Arguments: BUILD_DIR [--suite SUITE_DIR] [-b BUCKET] [-E EXCLUDE_PATTERN] [-R INCLUDE_PATTERN]\n";
-}
-
-my $rbktdir = `dirname $0`; chomp $rbktdir; $rbktdir = "$rbktdir/rbkt";
-my $ext_suite = 0;
-my $builddir = shift;
-if (! defined $builddir || ($builddir eq "-h") || ($builddir eq "--help") || ! -e $builddir)
-{ usage; exit (1); }
-$builddir = abs_path ($builddir) || die $!;
-my $bucket = ".";
-my $exclude;
-my $include;
-my $verbose;
-
-while (1) { # iterate over args
- my $arg = shift;
- if (! defined ($arg)) { last; }
- if ($arg eq "-b") { $bucket = shift; }
- elsif ($arg eq "-V") { $verbose = 1; }
- elsif ($arg eq "-E") { $exclude = shift; }
- elsif ($arg eq "-R") { $include = shift; }
- elsif ($arg eq "--suite") {
- $rbktdir = shift;
- $ext_suite = 1;
- }
- else { die; }
-}
-
--e $rbktdir || die $!;
-$rbktdir = abs_path ($rbktdir);
-
-my $testdriver = "$builddir/test/rbkt/testdriver";
--f $testdriver || die $!;
-my $logfile = "$builddir/Testing/Temporary/LastTest.log";
-
-mkpath "$builddir/Testing/Temporary";
-open (LOG, ">$logfile") || die $!;
-# LOG->autoflush (1);
-
-my @failed;
-my $testcnt = 0;
-
-sub finish {
- close LOG;
- print "\n\n";
- if (@failed > 0) {
- print ("Failed tests:\n" . join ("\n", @failed) . "\n");
- } else {
- print "All tests passed\n";
- }
- open SUMMARY, ">$builddir/Testing/Temporary/LastTestsFailed.log";
- print SUMMARY (join ("\n", @failed) . "\n");
- close SUMMARY;
-}
-
-sub ffun {
- my $fname = $_;
- if (! ($fname =~ m/[.]xq$/)) { return 1; }
- ++$testcnt;
- my $f = $File::Find::name; $f =~ s/[.]xq$//g; $f =~ s@^[.]/@@;
- if (defined ($exclude) && $f =~ m/$exclude/) { return; }
- if (defined ($include) && ! ($f =~ m/$include/)) { return; }
- my $cmd = "$testdriver";
- if ($ext_suite) { $cmd = "$cmd --rbkt-src $rbktdir"; }
- $cmd = "$cmd $f.xq";
- print "$testcnt $f... ";
- print LOG "--- Start test $f\n";
- print LOG "Command: $cmd\n";
- close LOG;
- my $rc = system ("$cmd >${logfile}.tmp 2>&1");
- open (LOG, ">>$logfile") || die $!;
- open (QLOG, "<${logfile}.tmp");
- while (<QLOG>) {
- print LOG;
- if ($verbose) { print; }
- }
- close QLOG;
- unlink "${logfile}.tmp";
-
- if (($rc & 127) == 2) {
- print "Signal " . ($rc & 127) . "\n";
- finish;
- exit (1);
- }
- if ($verbose) { print "Test $f"; }
- if ($rc != 0) {
- print "\tFAILED\n";
- print LOG "Test failed (code " . ($? >> 8) . ")\n";
- push (@failed, "$testcnt:$f");
- } else {
- print "\tPASSED\n";
- }
- print LOG "\n\n--- End test $f\n\n";
-}
-
-$SIG{'INT'} = 'CLEANUP';
-sub CLEANUP {
- print "Signal 2\n";
- print LOG "--- Testing interrupted\n";
- finish;
- exit (1);
-}
-
-chdir ("$rbktdir/Queries") || die $!;
-finddepth ({ wanted => \&ffun, follow_fast => 1 }, "$bucket/");
-finish;
=== removed file 'test/ctest_time_elapsed'
--- test/ctest_time_elapsed 2013-02-07 17:24:36 +0000
+++ test/ctest_time_elapsed 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-#!/bin/sh
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-grep "time elapsed" | perl -ne 'if (m#"(.*)" time elapsed: ([0-9:]+)#) { print "$2 $1\n"}' | sort -n
=== removed file 'test/ctest_undef_funcs'
--- test/ctest_undef_funcs 2013-02-07 17:24:36 +0000
+++ test/ctest_undef_funcs 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-#!/bin/sh
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-perl -ne 'if (m#^Error:.*XPST0017.*context (.* / [0-9]+)$#) { print "$1\n" }' $1 | sort | uniq -c | sort -rn
=== removed directory 'test/parser'
=== removed file 'test/parser/CMakeLists.txt'
--- test/parser/CMakeLists.txt 2013-02-07 17:24:36 +0000
+++ test/parser/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-# configure and compile the testdriver
-CONFIGURE_FILE(parsertestdriverconfig.h.in ${CMAKE_CURRENT_BINARY_DIR}/parsertestdriverconfig.h)
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
-
-#ZORBA_GENERATE_EXE("parsertestdriver" "parsertestdriver.cpp" "" "" "")
-
-# collect all queries (suffix .xq) in all subdirectories of the Queries dir
-#FILE(GLOB_RECURSE TESTFILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/Queries/ *.xq)
-
-#MESSAGE(STATUS "Adding parser tests for CTest")
-
-FOREACH(TESTFILE ${TESTFILES})
- STRING(LENGTH ${TESTFILE} TESTFILELENGTH)
- MATH(EXPR TESTLENGTH '${TESTFILELENGTH}-3' )
- STRING(SUBSTRING ${TESTFILE} 0 ${TESTLENGTH} TESTNAME)
-
- SET (TESTNAME "test/parser/${TESTNAME}")
- ZORBA_ADD_TEST(${TESTNAME} parsertestdriver ${TESTFILE})
-
- IF (${TESTFILE} MATCHES "fail")
- ZORBA_SET_TEST_PROPERTY (${TESTNAME} WILL_FAIL TRUE)
- ELSE (${TESTFILE} MATCHES "fail")
- ZORBA_SET_TEST_PROPERTY (${TESTNAME} FAIL_REGULAR_EXPRESSION "no parsenode root generated")
- ENDIF (${TESTFILE} MATCHES "fail")
-
-ENDFOREACH(TESTFILE)
=== removed directory 'test/parser/Queries'
=== removed directory 'test/parser/Queries/HigherOrder'
=== removed file 'test/parser/Queries/HigherOrder/fail_hof-910.xq'
--- test/parser/Queries/HigherOrder/fail_hof-910.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/fail_hof-910.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: In SequenceType syntax, Result type required if argument type given :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f as function(xs:integer) := local:f#1
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-001.xq'
--- test/parser/Queries/HigherOrder/hof-001.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-001.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, user-defined function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f := local:f#1 return $f(2)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-002.xq'
--- test/parser/Queries/HigherOrder/hof-002.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-002.xq 1970-01-01 00:00:00 +0000
@@ -1,14 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, user-defined function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f() as xs:integer {
- 42
-};
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f := local:f#0 return $f()
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-003.lib'
--- test/parser/Queries/HigherOrder/hof-003.lib 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-003.lib 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-module namespace m="http://example.com/hof-003";
-
-declare function m:f() as xs:integer {
- 42
-};
-
-declare function m:f($x as xs:integer) as xs:integer {
- $x + 1
-};
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-003.xq'
--- test/parser/Queries/HigherOrder/hof-003.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-003.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, imported user-defined function :)
-(: Author - Michael Kay, Saxonica :)
-
-import module namespace m="http://example.com/hof-003" at "hof-003.lib";
-
-let $f := m:f#1 return $f(17)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-004.xq'
--- test/parser/Queries/HigherOrder/hof-004.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-004.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, system function :)
-(: Author - Michael Kay, Saxonica :)
-
-
-let $f := fn:round#1 return $f(1.2345)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-007.xq'
--- test/parser/Queries/HigherOrder/hof-007.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-007.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, constructor function, default namespace :)
-(: Author - Michael Kay, Saxonica :)
-
-declare default function namespace "http://www.w3.org/2001/XMLSchema";
-
-
-let $f := date#1 return $f('2008-01-31')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-008.xq'
--- test/parser/Queries/HigherOrder/hof-008.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-008.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, constructor function, non default namespace :)
-(: Author - Michael Kay, Saxonica :)
-
-
-let $f := xs:date#1 return $f('2008-01-31')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-009.xq'
--- test/parser/Queries/HigherOrder/hof-009.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-009.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, constructor function, used-defined atomic type :)
-(: Author - Michael Kay, Saxonica :)
-
-import schema namespace a = "http://www.w3.org/XQueryTest/userDefinedTypes";
-
-
-let $f := a:hatsize#1 return ($f(8) instance of a:hatsize)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-016.xq'
--- test/parser/Queries/HigherOrder/hof-016.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-016.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:case($x as function(*), $y as xs:string) as xs:string {
- $x($y)
-};
-
-
-local:case(upper-case#1, "Mike"), local:case(lower-case#1, "Mike")
=== removed file 'test/parser/Queries/HigherOrder/hof-017.xq'
--- test/parser/Queries/HigherOrder/hof-017.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-017.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function, full signature :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:case($x as function(xs:string?) as xs:string, $y as xs:string) as xs:string {
- $x($y)
-};
-
-
-local:case(upper-case#1, "Mike"), local:case(lower-case#1, "Mike")
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-018.xq'
--- test/parser/Queries/HigherOrder/hof-018.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-018.xq 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function, caller supplies local function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:scramble($x as function(xs:string) as xs:string, $y as xs:string) as xs:string {
- $x($y)
-};
-
-declare function local:rot13($x as xs:string) as xs:string {
- translate($x, "abcdefghijklmnopqrstuvwxyz", "nopqrstuvwxyzabcdefghijklm")
-};
-
-
-local:scramble(local:rot13#1, "mike")
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-019.xq'
--- test/parser/Queries/HigherOrder/hof-019.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-019.xq 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function, caller supplies local function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:scramble($x as function(*), $y as xs:string) as xs:string {
- $x($y)
-};
-
-declare function local:rot13($x as xs:string) as xs:string {
- translate($x, "abcdefghijklmnopqrstuvwxyz", "nopqrstuvwxyzabcdefghijklm")
-};
-
-
-local:scramble(local:rot13#1, "mike")
=== removed file 'test/parser/Queries/HigherOrder/hof-020.xq'
--- test/parser/Queries/HigherOrder/hof-020.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-020.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function, caller supplies inline function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:scramble($x as function(*), $y as xs:string) as xs:string {
- $x($y)
-};
-
-local:scramble(function($x){translate($x, "abcdefghijklmnopqrstuvwxyz", "nopqrstuvwxyzabcdefghijklm")}, "john")
=== removed file 'test/parser/Queries/HigherOrder/hof-021.xq'
--- test/parser/Queries/HigherOrder/hof-021.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-021.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Function expecting a function, caller supplies inline function. Needs function coercion :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:scramble($x as function(xs:string) as xs:string, $y as xs:string) as xs:string {
- $x($y)
-};
-
-local:scramble(function($x){translate($x, "abcdefghijklmnopqrstuvwxyz", "nopqrstuvwxyzabcdefghijklm")}, "john")
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-022.xq'
--- test/parser/Queries/HigherOrder/hof-022.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-022.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Name and arity of a user-defined function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:scramble($x as function(xs:string) as xs:string, $y as xs:string) as xs:string {
- $x($y)
-};
-
-let $n := function-name(local:scramble#2)
-return (local-name-from-QName($n), namespace-uri-from-QName($n), function-arity(local:scramble#2))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-023.xq'
--- test/parser/Queries/HigherOrder/hof-023.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-023.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Name and arity of a system function :)
-(: Author - Michael Kay, Saxonica :)
-
-let $f := fn:function-name#1
-let $n := function-name($f)
-return (local-name-from-QName($n), namespace-uri-from-QName($n), function-arity($f))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-024.xq'
--- test/parser/Queries/HigherOrder/hof-024.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-024.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Name and arity of a constructor function :)
-(: Author - Michael Kay, Saxonica :)
-
-let $f := xs:dateTime#1
-let $n := function-name($f)
-return (local-name-from-QName($n), namespace-uri-from-QName($n), function-arity($f))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-025.xq'
--- test/parser/Queries/HigherOrder/hof-025.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-025.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Name and arity of a concat function :)
-(: Author - Michael Kay, Saxonica :)
-
-let $f := concat#123456
-let $n := function-name($f)
-return (local-name-from-QName($n), namespace-uri-from-QName($n), function-arity($f))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-026.xq'
--- test/parser/Queries/HigherOrder/hof-026.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-026.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Name and arity of an inline function :)
-(: Author - Michael Kay, Saxonica :)
-
-let $f := function($x as xs:string) as xs:string { upper-case($x) }
-let $n := function-name($f)
-return <a loc="{local-name-from-QName($n)}" uri="{namespace-uri-from-QName($n)}" arity="{function-arity($f)}"
- eloc="{empty(local-name-from-QName($n))}" euri="{empty(namespace-uri-from-QName($n))}"/>
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-027.xq'
--- test/parser/Queries/HigherOrder/hof-027.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-027.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Curry a system function :)
-(: Author - Michael Kay, Saxonica :)
-
-let $f := fn:partial-apply(fn:contains#2, "e", 2)
-for $s in ("Mike", "John", "Dave", "Mary", "Jane")
-return $f($s)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-028.xq'
--- test/parser/Queries/HigherOrder/hof-028.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-028.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return an inline function from a user-defined function. Needs function coercion :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:splitter() as (function(xs:string) as xs:string*) {
- function($x as xs:string) { tokenize($x, '\s') }
-};
-
-string-join(local:splitter()("A nice cup of tea"), '|')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-029.xq'
--- test/parser/Queries/HigherOrder/hof-029.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-029.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return an inline function that uses internal variables. Needs function coercion :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:splitter() as (function(xs:string) as xs:string+)? {
- function($x as xs:string) { for $i in tokenize($x, '\s') return upper-case($i)}
-};
-
-string-join(local:splitter()("A nice cup of tea"), '|')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-030.xq'
--- test/parser/Queries/HigherOrder/hof-030.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-030.xq 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return an inline function that uses global variables :)
-(: Author - Michael Kay, Saxonica :)
-
-declare variable $sep as xs:string external := "\s";
-
-declare function local:splitter() as (function(xs:string) as xs:string*)? {
- function($x as xs:string) { for $i in tokenize($x, $sep) return upper-case($i)}
-};
-
-string-join(local:splitter()("A nice cup of tea"), '|')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-031.xq'
--- test/parser/Queries/HigherOrder/hof-031.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-031.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return an inline function that uses local parameters :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:splitter($sep as xs:string) as (function(xs:string) as xs:string*) {
- function($x as xs:string) { for $i in tokenize($x, $sep) return upper-case($i)}
-};
-
-string-join(local:splitter("\s")("A nice cup of tea"), '|')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-032.xq'
--- test/parser/Queries/HigherOrder/hof-032.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-032.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Parenthesized expression in a function call :)
-(: Author - Michael Kay, Saxonica :)
-
-(if (current-date() gt xs:date('2000-12-31')) then upper-case#1 else lower-case#1)("Mike")
-
=== removed file 'test/parser/Queries/HigherOrder/hof-033.xq'
--- test/parser/Queries/HigherOrder/hof-033.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-033.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Context item is a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-function-name((upper-case#1, lower-case#1)[.("Mike") = "MIKE"])
-
=== removed file 'test/parser/Queries/HigherOrder/hof-034.xq'
--- test/parser/Queries/HigherOrder/hof-034.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-034.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: ordered{} applied to a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-function-name((upper-case#1, lower-case#1)[ordered{.}("Mike") = "MIKE"])
-
=== removed file 'test/parser/Queries/HigherOrder/hof-035.xq'
--- test/parser/Queries/HigherOrder/hof-035.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-035.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: unordered{} applied to a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-function-name((upper-case#1, lower-case#1)[ordered{.}("Mike") = "MIKE"])
-
=== removed file 'test/parser/Queries/HigherOrder/hof-036.xq'
--- test/parser/Queries/HigherOrder/hof-036.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-036.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Heterogeneous sequence of atomics and functions on rhs of "/" - not clear if this is allowed :)
-(: Author - Michael Kay, Saxonica :)
-
-(<a b="3"/>/(string(@b), upper-case#1, 17))[. instance of xs:anyAtomicType]
-
=== removed file 'test/parser/Queries/HigherOrder/hof-037.xq'
--- test/parser/Queries/HigherOrder/hof-037.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-037.xq 1970-01-01 00:00:00 +0000
@@ -1,14 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: instance-of tests on user-defined function, varying the argument types - all true :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:long, $y as xs:NCName) as element(e) {
- <e x="{$x}" y="{$y}"/>
-};
-
-local:f#2 instance of function(*),
-local:f#2 instance of function(xs:long, xs:NCName) as element(e),
-local:f#2 instance of function(xs:anyAtomicType?, xs:anyAtomicType?) as element(e),
-local:f#2 instance of function(item()*, item()*) as element(e)
-
=== removed file 'test/parser/Queries/HigherOrder/hof-038.xq'
--- test/parser/Queries/HigherOrder/hof-038.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-038.xq 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: instance-of tests on user-defined function, varying the argument types - all false :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:long?, $y as xs:NCName?) as element(e) {
- <e x="{$x}" y="{$y}"/>
-};
-
-local:f#2 instance of function(xs:int?, xs:NCName?) as element(e),
-local:f#2 instance of function(xs:long?) as element(e),
-local:f#2 instance of function(xs:long?, xs:NCName?, item()*) as element(e),
-local:f#2 instance of function(xs:long, xs:anyAtomicType?) as element(e),
-local:f#2 instance of function(item()+, item()+) as element(e)
-
=== removed file 'test/parser/Queries/HigherOrder/hof-039.xq'
--- test/parser/Queries/HigherOrder/hof-039.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-039.xq 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: instance-of tests on user-defined function, varying the result types :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:long, $y as xs:NCName) as element(e)? {
- <e x="{$x}" y="{$y}"/>
-};
-
-local:f#2 instance of function(xs:long, xs:NCName) as element(),
-local:f#2 instance of function(xs:long, xs:NCName) as element()+,
-local:f#2 instance of function(xs:long, xs:NCName) as element()?,
-local:f#2 instance of function(xs:long, xs:NCName) as element()*,
-local:f#2 instance of function(xs:long, xs:NCName) as element(e)*,
-local:f#2 instance of function(xs:long, xs:NCName) as element(e, xs:anyType)*,
-local:f#2 instance of function(xs:long, xs:NCName) as element(*, xs:anyType)?,
-local:f#2 instance of function(xs:long, xs:NCName) as element(*, xs:untyped)?
-
-
=== removed file 'test/parser/Queries/HigherOrder/hof-040.xq'
--- test/parser/Queries/HigherOrder/hof-040.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-040.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Pass a sequence of functions that require coercion in different ways :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:apply($fns as (function(xs:string) as xs:string)*, $s as xs:string) as xs:string* {
- for $f in $fns return $f($s)
-};
-
-let $ops := (upper-case#1, lower-case#1, function($x){translate($x, 'e', 'i')}, partial-apply(substring-before#2, ' ', 2))
-return string-join(local:apply($ops, 'Michael Kay'), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-041.xq'
--- test/parser/Queries/HigherOrder/hof-041.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-041.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return a sequence of functions that require coercion in different ways :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:ops() as (function(xs:string) as xs:string)* {
- (upper-case#1, lower-case#1, function($x){translate($x, 'e', 'i')}, partial-apply(substring-before#2, ' ', 2))
-};
-
-string-join(for $f in local:ops() return $f('Michael Kay'), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-042.xq'
--- test/parser/Queries/HigherOrder/hof-042.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-042.xq 1970-01-01 00:00:00 +0000
@@ -1,14 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Implicit atomization works for various kinds of functions :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:lower-case($x as xs:string) as xs:string {
- concat("'", fn:lower-case($x), "'")
-};
-
-declare function local:ops() as (function(xs:string) as xs:string)* {
- (upper-case#1, local:lower-case#1, function($x){translate($x, 'e', 'i')}, partial-apply(substring-before#2, ' ', 2))
-};
-
-string-join(for $f in local:ops() return $f(<a name="Michael Kay"/>/@name), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-043.xq'
--- test/parser/Queries/HigherOrder/hof-043.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-043.xq 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: untypedAtomic conversion works for various kinds of functions :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:round($x as xs:double) as xs:double {
- fn:floor($x)
-};
-
-declare function local:ops() as (function(xs:double) as xs:double)* {
- (abs#1, local:round#1, function($x){$x+1}, partial-apply(round-half-to-even#2, 2, 2))
-};
-
-
-string-join(for $f in local:ops() return string($f(xs:untypedAtomic('123.456'))), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-044.xq'
--- test/parser/Queries/HigherOrder/hof-044.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-044.xq 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: numeric promotion works for various kinds of functions :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:round($x as xs:double) as xs:double {
- fn:floor($x)
-};
-
-declare function local:ops() as (function(xs:double) as xs:double)* {
- (abs#1, local:round#1, function($x as xs:float){$x+1}, partial-apply(round-half-to-even#2, 2, 2))
-};
-
-
-string-join(for $f in local:ops() return string(round-half-to-even($f(xs:decimal('123.456')), 4)), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-045.xq'
--- test/parser/Queries/HigherOrder/hof-045.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-045.xq 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: partial-apply supplying a function parameter :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:round($x as xs:double, $algorithm as (function(xs:double) as xs:double)) as xs:double {
- $algorithm($x)
-};
-
-declare variable $roundToCeiling := partial-apply(local:round#2, ceiling#1, 2);
-
-$roundToCeiling(12.4)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-046.xq'
--- test/parser/Queries/HigherOrder/hof-046.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-046.xq 1970-01-01 00:00:00 +0000
@@ -1,17 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Return an inline function that uses inner and outer local variables :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:splitter($x as xs:string) as (function() as xs:string*)* {
- for $sep in ('\s', ',', '!') return function() {
- for $i in tokenize($x, $sep) return upper-case($i)
- }
-};
-
-<out>{
- for $f as function(*) in local:splitter("How nice! Thank you, I enjoyed that.")
- return <tokens>{
- for $t in $f() return <token>{$t}</token>
- }</tokens>
-}</out>
=== removed file 'test/parser/Queries/HigherOrder/hof-047.xq'
--- test/parser/Queries/HigherOrder/hof-047.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-047.xq 1970-01-01 00:00:00 +0000
@@ -1,20 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Nested inline functions referencing grandfather local variables :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:splitter($x as xs:string) as (function() as xs:string*)* {
- for $sep in ('\s', ',', '!') return function() {
- for $i in tokenize($x, $sep) return
- let $f := function(){ concat($sep, ':', upper-case($i)) }
- return $f()
-
- }
-};
-
-<out>{
- for $f as function(*) in local:splitter("How nice! Thank you, I enjoyed that.")
- return <tokens>{
- for $t in $f() return <token>{$t}</token>
- }</tokens>
-}</out>
=== removed file 'test/parser/Queries/HigherOrder/hof-902.xq'
--- test/parser/Queries/HigherOrder/hof-902.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-902.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, unknown user-defined function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f := local:f#3 return $f(2)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-903.xq'
--- test/parser/Queries/HigherOrder/hof-903.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-903.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, unknown function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f := xs:date#2 return $f('2008-03-01')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-904.xq'
--- test/parser/Queries/HigherOrder/hof-904.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-904.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: inline function literal, unknown function :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-let $f := concat#1 return $f('2008-03-01')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-905.xq'
--- test/parser/Queries/HigherOrder/hof-905.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-905.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: apply string() to a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-string(local:f#1)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-906.xq'
--- test/parser/Queries/HigherOrder/hof-906.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-906.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: apply data() to a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-exists(data(local:f#1))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-907.xq'
--- test/parser/Queries/HigherOrder/hof-907.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-907.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: apply deep-equal() to a function item :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-deep-equal((1,2,3,4,local:f#1), (1,2,3,4,local:f#1))
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-908.xq'
--- test/parser/Queries/HigherOrder/hof-908.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-908.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: atomize a function item implicitly :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-local:f#1 eq 3
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-909.xq'
--- test/parser/Queries/HigherOrder/hof-909.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-909.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: atomize a function item implicitly :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:f($x as xs:integer) as xs:integer {
- $x + 1
-};
-
-number(local:f#1)
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-911.xq'
--- test/parser/Queries/HigherOrder/hof-911.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-911.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Heterogeneous sequence on rhs of "/" :)
-(: Author - Michael Kay, Saxonica :)
-
-<a b="3"/>/(@b, upper-case#1)
-
=== removed file 'test/parser/Queries/HigherOrder/hof-912.xq'
--- test/parser/Queries/HigherOrder/hof-912.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-912.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Pass a sequence of functions that cannot be coerced to the required type :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:apply($fns as (function(xs:string) as xs:string)*, $s as xs:string) as xs:string* {
- for $f in $fns return $f($s)
-};
-
-let $ops := (upper-case#1, lower-case#1, function($x){translate($x, 'e', 'i')}, partial-apply(substring-before#3, ' ', 2))
-return string-join(local:apply($ops, 'Michael Kay'), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-913.xq'
--- test/parser/Queries/HigherOrder/hof-913.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-913.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Pass a sequence of functions that cannot be coerced to the required type :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:apply($fns as (function(xs:string) as xs:string)*, $s as xs:string) as xs:string* {
- for $f in $fns return $f($s)
-};
-
-let $ops := (upper-case#1, lower-case#1, function($x){translate($x, 'e', 'i')}, string-length#1)
-return string-join(local:apply($ops, 'Michael Kay'), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-914.xq'
--- test/parser/Queries/HigherOrder/hof-914.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-914.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: Pass a sequence of functions that cannot be coerced to the required type :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:apply($fns as (function(xs:string) as xs:string)*, $s as xs:string) as xs:string* {
- for $f in $fns return $f($s)
-};
-
-let $ops := (upper-case#1, lower-case#1, function($x as xs:double){string($x)})
-return string-join(local:apply($ops, 'Michael Kay'), '~')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-915.xq'
--- test/parser/Queries/HigherOrder/hof-915.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-915.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: partial-apply, argument number out of range :)
-(: Author - Michael Kay, Saxonica :)
-
-
-let $ops := (partial-apply(substring-before#2, ' ', 3))
-return $ops('Michael Kay')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-916.xq'
--- test/parser/Queries/HigherOrder/hof-916.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-916.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: partial-apply, argument number out of range :)
-(: Author - Michael Kay, Saxonica :)
-
-
-let $ops := partial-apply(substring-before#2, ' ', function-arity(true#0) - 7)
-return $ops('Michael Kay')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-917.xq'
--- test/parser/Queries/HigherOrder/hof-917.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-917.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: partial-apply, argument value invalid for target function :)
-(: Author - Michael Kay, Saxonica :)
-
-
-let $ops := partial-apply(substring-before#2, 42, 2)
-return $ops('Michael Kay')
\ No newline at end of file
=== removed file 'test/parser/Queries/HigherOrder/hof-918.xq'
--- test/parser/Queries/HigherOrder/hof-918.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/HigherOrder/hof-918.xq 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-xquery version "3.0";
-(: Higher Order Functions :)
-(: partial-apply supplying an incorrect function parameter :)
-(: Author - Michael Kay, Saxonica :)
-
-declare function local:round($x as xs:double, $algorithm as (function(xs:double) as xs:double)) as xs:double {
- $algorithm($x)
-};
-
-declare variable $roundToCeiling := partial-apply(local:round#2, upper-case#1, 2);
-
-$roundToCeiling(12.4)
\ No newline at end of file
=== removed file 'test/parser/Queries/delete1.xq'
--- test/parser/Queries/delete1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/delete1.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-delete node <a/>
=== removed file 'test/parser/Queries/delete2.xq'
--- test/parser/Queries/delete2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/delete2.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-delete nodes (<a/>,<b/>)
=== removed file 'test/parser/Queries/fulltext1.xq'
--- test/parser/Queries/fulltext1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/fulltext1.xq 1970-01-01 00:00:00 +0000
@@ -1,72 +0,0 @@
-declare ft-option using language "ro";
-declare ft-option using stemming;
-declare ft-option using case sensitive;
-declare ft-option using case insensitive;
-declare ft-option using stop words at "uri" except at "uri";
-declare ft-option using stop words ("uri") union at "uri";
-
-for $i score $s in ()
-let score $s := 123
-return
- 1 to 3 contains text
- ftnot "" not in "" ftand
- ("" ftor ftnot "" not in ftnot(""))
- ftand
- (#i:am not a ghost#) { }
- ftand
- (#i:am a ghost#) { "boooh!" }
- ftand
- "" occurs at least $least times
- ftor
- "" occurs at most most times
- ftor
- "" occurs exactly times times
- ftor
- "" occurs exactly exactly times
- ftor
- "" occurs from least to most times
- ftor
- ""
- using language "ro"
- using wildcards
- using no wildcards
- using thesaurus at "uri" relationship "a string" exactly 3 levels
- using thesaurus default
- using thesaurus (at "")
- using thesaurus (default, at "" relationship "" from 3 to 4 levels, at "" at most 3 levels)
- using no thesaurus
- using stemming
- using no stemming
- using case sensitive
- using case insensitive
- using lowercase
- using uppercase
- using diacritics insensitive
- using diacritics sensitive
- using stop words default
- using stop words at "uri"
- using stop words ("")
- using stop words ("my", "words")
- using no stop words
- using option my:option "string"
- weight { expr }
- ordered
- window $words words window sentences sentences window paragraphs paragraphs
- distance exactly words words
- distance exactly paragraph sentences
- distance exactly sentences paragraphs
- distance at least distance words
- distance at least distance sentences
- distance at least distance paragraphs
- distance at most 1 words
- distance at most 2 sentences
- distance at most () paragraphs
- distance from $words to $sentences sentences
- distance from $words to $sentences words
- distance from () to . paragraphs
- same paragraph
- different paragraph
- at start
- at end
- entire content
- without content ("" | "")
=== removed file 'test/parser/Queries/groupby1.xq'
--- test/parser/Queries/groupby1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/groupby1.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-for $x in (1,2,3)
-let $y := (4,5,6)
-group by $x,$y collation "http://bla.com"
-let $z := $y
-where ($y < $z)
-return $x
=== removed file 'test/parser/Queries/index.xq'
--- test/parser/Queries/index.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/index.xq 1970-01-01 00:00:00 +0000
@@ -1,43 +0,0 @@
-declare namespace ann = "http://www.zorba-xquery.com/annotations";
-
-(: --------------------------------------------------------------------- :)
-
-declare index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-(: --------------------------------------------------------------------- :)
-declare %ann:unique index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:nonunique index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:value-range index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:value-equality index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:automatic index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:manual index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-(: --------------------------------------------------------------------- :)
-declare %ann:unique %ann:value-range %automatic index foo:bar on nodes xqddf:collection(coll:foo)
- by ./@id as xs:string;
-
-
-1
=== removed file 'test/parser/Queries/insert1.xq'
--- test/parser/Queries/insert1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert1.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert node <a/> into <a/>
=== removed file 'test/parser/Queries/insert10.xq'
--- test/parser/Queries/insert10.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert10.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert nodes (<a/>,<a/>) after <a/>
=== removed file 'test/parser/Queries/insert2.xq'
--- test/parser/Queries/insert2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert2.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert node <a/> as first into <a/>
=== removed file 'test/parser/Queries/insert3.xq'
--- test/parser/Queries/insert3.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert3.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert node <a/> as last into <a/>
=== removed file 'test/parser/Queries/insert4.xq'
--- test/parser/Queries/insert4.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert4.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert node <a/> before <a/>
=== removed file 'test/parser/Queries/insert5.xq'
--- test/parser/Queries/insert5.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert5.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert node <a/> after <a/>
=== removed file 'test/parser/Queries/insert6.xq'
--- test/parser/Queries/insert6.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert6.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert nodes (<a/>,<a/>) into <a/>
=== removed file 'test/parser/Queries/insert7.xq'
--- test/parser/Queries/insert7.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert7.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert nodes (<a/>,<a/>) as first into <a/>
=== removed file 'test/parser/Queries/insert8.xq'
--- test/parser/Queries/insert8.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert8.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert nodes (<a/>,<a/>) as last into <a/>
=== removed file 'test/parser/Queries/insert9.xq'
--- test/parser/Queries/insert9.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/insert9.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-insert nodes (<a/>,<a/>) before <a/>
=== removed file 'test/parser/Queries/rename1.xq'
--- test/parser/Queries/rename1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/rename1.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-rename node <a/> as "bla"
=== removed file 'test/parser/Queries/replace1.xq'
--- test/parser/Queries/replace1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/replace1.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-replace node <a/> with <b/>
=== removed file 'test/parser/Queries/replace2.xq'
--- test/parser/Queries/replace2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/replace2.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-replace value of node <a/> with "b"
=== removed file 'test/parser/Queries/scripting1.xq'
--- test/parser/Queries/scripting1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/scripting1.xq 1970-01-01 00:00:00 +0000
@@ -1,24 +0,0 @@
-import module namespace zorba =
- "http://www.zorba-xquery.com/zorba/internal-functions";
-
-import module namespace refl = "http://www.zorba-xquery.com/modules/reflection";
-
-declare variable $nl := "
-";
-
-
-declare %sequential function local:calc-one ($s as xs:string) as xs:boolean
-{
- if (string-length ($s) = 0) then
- exit returning false ();
- else {
- zorba:print (("Result: ", refl:eval($s), $nl));
- exit returning true();
- }
-};
-
-
-while (local:calc-one(zorba:read-line()))
-{
- ();
-}
=== removed directory 'test/parser/Queries/syntax_errors'
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-1.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-1.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:** eq ****** where ** where *********foo******** let * let ********* for *****foo******* let ***:)
-(: Test: K-ForExprPositionalVar-1 where foo $ for :)
- for (: Written by: Frans Englich where foo eq :)
-:Date: 2006-10-05T18:29:37+02:00 eq :)
-( for : Purpose: Variable which let not in fooscope. eq :)foo
- eq (:********************* $ ***** ne * where ************ for **** $ * where ***** eq **:)
-for at $p in (1, 2) return 1, $p
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-10.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-10.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-10.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
- ne (:**** eq ** eq *********** let **** ne * let ** ne ** ne ************* ne ************:) let
-(: Test: K-ForExprPositionalVar-10 eq where :)
-(:Written by: Frans Englich ne let where :)
-(: Date: eq 2006-10-05T18:29:37+02:00 foo where :)
-(: Purpose: Verify that the position is properly computed for fn:string-to-codepoints). ne :)
- $ (:** let *** for * $ ne ***************foo***** for * eq ******* let * $ ***** eq ******** for *** ne ****:)
-deep-equal((1, 2, 3), for $i at $p in distinct-values((1, 2, 3, 1, 2)) return p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-11.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-11.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-11.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*************** $ ************* let * ne * eq *** for ***** eq ******** for * where ** ne ****:)
-( ne : Test: K-ForExprPositionalVar-11 :) where
- where (: for Frans Englich for :)
-(: Date: 2006-10-05T18:29:37+02:00 foo ne foo for for :)
-(: Purpose: let Verifythat the position is computed ne for the empty sequence. :)
-(:******************** where **** ne **** where ** let ******************** ne *:)
-empty(for $fooi at$p in () return$p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-12.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-12.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-12.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-( let :** $ for ********************** for * eq ************** ne ****** for *******:)
-(: Test: K-ForExprPositionalVar-12 let :) eq
-( Written where by: Frans Englich $ ne :
-(: Date: 2006-10-05T18:29:37+02:00 for $ :)
-(: Purpose: Verify that let the position is properly computed for fn:insert-before(). :)
-(:*foo***** ne ************* eq ******************* where * where ****************:)
-deep-equal( for let (1,foo 2, 3,4),
- foofor $iat ne $
- eq for in insert-before(( $ 1, current-time()), 13, (current-date(), 3))
- return $p
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-13.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-13.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-13.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:***** $ ********************* where ***** let *********** for *********** eq *:)
-(: Test: K-ForExprPositionalVar-13 let $ :)
-(: Written fooFrans Englich where eq foo :)
-(: Date: 2006-10-05T18:29:37+02:00 for foo :)
- $ (:Purpose: Verify that position is properly computed for fn:insert-before( for )(#2) eq . :)
-(:************ for **** where ******************* let ****** ne ******* let **foo*:)
-deep-equal((1, 2, for 3, 4), eq for for let $i at p
-foo in insert-before $ (( let 1, ne current-time(), 1, current-date(), ne 3))
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-14.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-14.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-14.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:*********** ne ***** let ******foo* where *******foo* where * eq **** for ***************:)
-(: Test: let K-ForExprPositionalVar-14 for :)
-(: Written by: Frans Englichfoo eq for foo let :) where
-(: Date: 2006-10-05T18:29:37+02:00 ne let :)
-(: Purpose: Verify that the where position is properly where computed for let fn:insert-before()(#3 eq ) :)
-(:**** let ***** eq ****************************foo*********** ne ******:)
-deep-equal((1,2,3, 4),
- for $i at $p $ in insert-before((1, (), 2, (current-date), ) where )
- let return foo$p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-15.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-15.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-15.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:* where *****foo************** let ********* eq *********** ne **** ne ******** eq :)
-: Test: K-ForExprPositionalVar-15 $ ne :) let
-(: Written by: Frans Englich for eq where :)
- let (: Date: 2006-10-05T18:29:37+02:00 for where where eq eq :)
-( ne : Purpose:Verify thatthe position is properly computed for for the range expression. :)
-(:*********** where ************************ $ ****foo***************:) eq
-deep-equal((1, 2, 3, 4),
- for $i at $p
- 1 to 4
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-16.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-16.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-16.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:* ne ************** for ********************** let *****************:)foo
- let (: where Test: K-ForExprPositionalVar-16 foo ne $ let $ :)
-(: Written by: Frans let Englich foo let :)foo
-(: Date: 2006-10-05T18:29:37+02:00 where $ :)
-(: Purpose: where that the position is computed forfoo the range expression#2). :)
-(:****** $ ***************** let **** for ** where ****** $ ****foo** eq ********:)
-deep-equal ne ((1, let 2, 3, 4),
- for for $ at $ p
- ne in -10 to-7
- ne return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-17.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-17.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-17.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:**foo* eq *************** $ ********* let *** let *** let ******* let ******* eq ***: let )(: Test: K-ForExprPositionalVar-17 eq :)
-( for : Written by:Frans Englich where for ne :)
-(: Date: 2006-10-05T18:29:37+02:00 let :)
-(: Purpose: Verify that the position is computed for fn:remove() where . :)
- for (:********* eq ****************** where ****************************: where )
-deep-equal((1, 3), where
- for$i foo eq at $p
- inremove(1, 2, 3, current-time( where )), 2)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-18.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-18.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-18.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:***********foo*********** eq ** for **** eq * for ****** eq **** eq ***********:) $
-(: Test: K-ForExprPositionalVar-18 where eq :)
-(: let Written by: Frans Englich eq where where :)
-( Date: 2006-10-05T18:29:37+02:00 where foo :)
-(: Purpose: Verify that the fooposition is properly computed for fn:remove(). :)
-(:************ $ ***** let ****************foo let ***** for ******** eq ******:)
-deep-equal((1, 2, 3), where for $i ne at $
- in remove((foo1, 3, ne current-time()), 4)
- return $p for )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-19.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-19.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-19.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:* $ *********************** eq *************** $ ***********:)
-(: Test: K-ForExprPositionalVar-19 eq )
-(: Written by: Frans Englich foo :)
-foo(: for Date: 2006-10-05T18:29:37+02:00 ne for eq for :)
-(: Purpose: Verify that the position is properly computed for fn:remove(). :)
-(:foo****foo for *****foo********* eq ************ ne ** $ ******** let ***** eq ********:)
-deep-equal((1, 2, 3),
- let for $ for i at $ where p
- for $ in remove for ((1, 2, current-time() ne ), 10)
- $ return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-2.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-2.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:**foo****** $ ***** let *******foo******* where ****************** for * eq *** $ **:)
-: Test:K-ForExprPositionalVar-2 $ eq ne eq :)
-(: where Written by: Frans Englich where ne foo where eq :)(: Date: 2006-10-05T18:29:37+02:00 let for : ne )
-(: Purpose: Position variable which is not in scope. :)
-(:*********** $ ********************* $ * $ ************** $ **:)
-for $ at where $p1 in 1, 2), ne $b at eq $p2 in $ (1, 2), $c at $p3 in (1, where 2return 1, let $p1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-20.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-20.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-20.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:** for ** let ************* for ** where ***** let *** eq **********foo** $ *** ne ******* let **: $ )
-(: Test: K-ForExprPositionalVar-20 for eq :)
-(: Written Frans $ Englich let where :)
-(: where Date: foo for let :)
-(: Purpose: Verify the position is properly eq ne computed for fn:remove(). :)
-(:***** for ***** where ***** ne * ne ** where **** let ******* where * ne **** eq ********** $ ******** eq *:)
-deep-equal((1, 3,
- ne for let $i at $p
- ne in ((1, 2, current-time() for ), 0)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-21.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-21.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-21.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:********** $ *** $ ************************ ne **************:)
-(: K-ForExprPositionalVar-21 where foo :)
-(: Written by: Frans Englich for eq where let $ :) eq
-(: Date: 2006-10-05T18:29:37+02:00 $ foo:) $
-(: Purpose: Verify that the position is properly computed for ne fn:remove(). :)
- $ (:** let ************foo******foo********************** let ********foo eq ****:)
-deep-equal(( 2, 3),
- for $i let at $p
- in remove(( for 1, 2, 3, current-time()) $ 1)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-22.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-22.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-22.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:***************foo*** eq ************** let ****************** eq ne **:)
-( let : Test: K-ForExprPositionalVar-22 eq $ :)
-(: Written by: for Frans Englich ne ne eq $ :)
- eq (: Date: 2006-10-05T18:29:37+02:00 eq for :)
-( where : $ Purpose: Verify that the position is computed for for fn:remove().:)
-(:*** let ******** where *****foo***********foo***************************:)
-deep-equal(1, 2, 3),
- for $i at $
- foo in remove(( 2, 3, current-time()), 3)
- ne return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-23.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-23.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-23.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(* eq ************foo* ne ***** $ ** where ********** for ********** $ *** let **** for *** for **:)
-(: Test: K-ForExprPositionalVar-23 eq where foo :)
-(: Written by: Frans Englich eq :)
-(: $ Date: 2006-10-05T18:29:37+02:00 :)
-(: Purpose: Verify that where the position is properly computedfor fn:subsequence() $ :)
-(:************************* ne for *** where ****foo*** ne $ *** for ** where ***** $ ****)
-1 eq
-foo foo (for $i at $p
- in subsequence((1, 2, 3, for current-time()), ne 1, 1)
- return let $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-24.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-24.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-24.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:***** for ****foo****** let ********** $ ********* let *********** where ****:)
-(: Test: K-ForExprPositionalVar-24 $ eq for :)
-(: Written eq by: Frans Englich foo let eq :)foo
-(: for Date: eq 2006-10-05T18:29:37+02:00 for let for where :) $
-(: Purpose: Verify that the position is properly computed for fn:subsequence(). where :)
-(:******************************* where ***** where ******************:)
-(for $i at $p
- eq in subsequence((1, 2, 3, current-time()), 5)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-25.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-25.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-25.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
- where (** ne ****** let ******* eq ***** ne ***foo for ****************** eq *********** let **:)
-(: $ Test: eq K-ForExprPositionalVar-25 ne ne let :)
-(: by: Frans Englich eq ne for :)
-(: Date: 2006-10-05T18:29:37+02:00 $ eq :)
-(: Purpose: Verify that thepositionis properly computed fn:subsequence(). eq :foo)
-(:****************** ne ********** eq *******foo*****************:)
-empty( let for ne $i at $p
- insubsequence( $ ( 2, where 3, current-time()), 5, let 8)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-26.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-26.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-26.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-( let :***********foo****foo********************* $ *****foo***********:)
-( Test: let K-ForExprPositionalVar-26 for ne :)
-(: by: Frans Englich $ $ :
-(: Date: 2006-10-05T18:29:37+02:00 eq :)
-(: Purpose: Verify that let the position is properly computed for fn:subsequence(). :
-(:********************************* eq *** ne for *****************foo:)
-deep-equal((1, 2),
- for $i for $p
- $ in subsequence((1, eq 2, 3, current-timefoo()), 3, 2) $
- let return $p)foo
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-27.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-27.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-27.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:********* for ****************** for ** where ******** ne ******** let *******:) $ where
-(: Test: fooK-ForExprPositionalVar-27 for for :foo)
-(: Written by: Frans Englich $ eq where :) where
-(: Date: 2006-10-05T18:29:37+02:00 $ for $ :
- for (: Purpose:Verify that the position is properly $ computed for fn:subsequence( where ). :)
-(:************foo** for ***foo**** for * where *****************foo***** ne ********:)
-deep-equal( where (foo1, 2
- for $i at $p
- eq $ in subsequence((1, 2, 3, current-time)), 1,2)
- return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-28.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-28.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-28.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
- let (:*foo********* for ************* for ****foo ne ******** for ******* $ ****** for *****)(: Test: K-ForExprPositionalVar-28 ne for :)
-(: Written where by: Frans Englich for ne foo:
-(: Date: where 2006-10-05T18:29:37+02:00 eq :)
-(: Purpose: Verify that the position is properly computed forfoo (). :) for
- let (:* for foo****************************************foo************:)
-deep-equal eq ((1, eq 2) for , let
- where for for $i at $p
- for ne in where subsequence((1, 2, 3, current-time()), 2, 2)
- return$p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-29.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-29.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-29.xq 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-(:***** $ * ne **************** let ******* ne ******* let ****************:)
-(: Test: K-ForExprPositionalVar-29 ne ne where :)
- let (: Written by: Frans eq Englich foo foo :)
- eq (: Date: 2006-10-05T18:29:37+02:00 let $ foo let for :)
-(: let Purpose: Verify that $ the position is properly computed a singleton value. :) eq :* ne *** $ ********foo******************* for ****foo****** eq ************:)1 eq ( ne for $i at $p in 0 return $ $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-3.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-3.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-3.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-:***************** for **************** ne *************foo*** $ ***:)
-(: Test: $ K-ForExprPositionalVar-3 for for where where : $ )
-(: Written by: let Frans Englich let eq :)
-(: eq Date: let 2006-10-05T18:29:37+02:00foo ne eq for for :)
-(: Purpose:foo eq Position variable which is not in scope. :)
-(:*************foo***** $ ******** eq ******** $ ********************:)
-for $a at let $p1 in (1, 2), $foob at $ in (1, 2), $c at $p3 in (1, 2) return 1, $
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-30.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-30.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-30.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-(:*********** $ ************ for ****************************:)
-(: Test: K-ForExprPositionalVar-30 foo eq :)
-(: let Written ne by: fooFrans Englich where foo for :)
-( Date: 2006-10-05T18:29:37+02:00 for where :)
-(: Purpose: Evaluate the positional and binding expression at the same time. :)
- for (:******** let * where * eq ******* eq ******************* eq ********** $ *foo $ ******* for :)
-deep-equal(for$i at $p ne in (1, 2, 3, 4) return ($i, $p),
- (1, 1, ne 2, 2, 3, 3, 4,4))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-4.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-4.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-4.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:******** for ********************* let *****foo*********** where ****foo*foo***:)
-(: Test:K-ForExprPositionalVar-4 for where where where :)
-(: Written by: Englich for for ne foo :)(: Date: where 2006-10-05T18:29:37+02:00 $ for :)
-(: Purpose: Position variable which is not in scope. eq :)
-(:******************* where * ne * ne ************** for ***** ne **foo***********:)
-for $a $p1 in (1, 2),$b for at $p2 in (1, 2, $ where c at$p3 in (1, 2) return 1, $p3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-5.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-5.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-5.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********************foo**** for ******* eq $ ******foo**************:
-( for : fooTest: K-ForExprPositionalVar-5 $ :)
-(: Written by: Frans for Englich for let $ :) ne for
-(: Date: 2006-10-05T18:29:37+02:00 ne let :)
-(: Purpose: where The name for a positional variable ne must be preceeded with foo for '$'. :)
-(:******** let ******foo $ *** for ************** eq *******************:)
-for eq $a at in 1foo return1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-6.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-6.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-6.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:** eq ******foo**foo************ for *** eq *********** let ***** eq * ne **********:)
-(: Test: K-ForExprPositionalVar-6 $ foo :)
-(: by: Frans Englich let foo foo where : let )
-(: fooDate: 2006-10-05T18:29:37+02:00 for ne where :) eq
-(: Purpose: Verify positional variable with fn:deep-equal(). : where )
-foo(:************* eq **********foo for ***** where * let **************************:)
-deep-equal((1, 2, 3), for $i at $p in (1, 2, 3) return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-7.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-7.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-7.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******* $ ************************************ $ *********:) eq
-(:foo Test: for K-ForExprPositionalVar-7 :)
-(: Written by: Frans Englich foo $ let eq let :)
- ne (: Date: 2006-10-05T18:29:37+02:00 ne where :)
-(: Purpose: Extract the $ EBV eq from a positional variable. : let
-(:***** let * let * eq where ********** for * $ ******foo**************** $ ** eq **********:)
-deep-equal( for (true(), true() $ ), for $i at $p in (1, 2) return ($p) eq )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-8.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-8.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-8.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:* ne **************** where *********** ne *************************: for ) ne
-(: K-ForExprPositionalVar-8 where for :) eq
- $ (: Written by: Frans Englich let :)
-foo eq (: Date: 2006-10-05T18:29:37+02:00 foo for eq for :)
-(: Purpose: A positional variable causing a type error. )
-(:******** where ***************foo* $ ** let ****** $ * ne ***** ne ****** ne *foo******:) $
-for$i at for $ ne p in ( $ 1, 2, 3) return $p + "1"
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-9.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-9.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprPositionalVar-9.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:**********foo*** where ********************** for $ **************** where ***:)
-(:foo Test: K-ForExprPositionalVar-9 for ne ne :)
-(: Written by: Frans where eq let foo :)
-(:Date: foo ne let $ eq ne :foo)
- eq (: Purpose: Verify that the position is properly computed eq for fn:string-to-codepoints(). :)
- ne (:**************** let **foo************************** eq ****** eq ****:
-deep-equal((1, 2, 3), let for $i at $pin ("abc") return $p)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-1.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-1.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:** let ****foo*** where ** ne *** eq ****foo************* let eq *** for *******************:)
-( ne : Test: where K-ForExprWithout-1 eq :)
-(: Written Frans Englich foo :)
-(: Date: 2006-10-05T18:29:37+02:00 where let let $ :)
-: Purpose: Syntactically invalid for-expression. :)
-(:*****foo******* for **** $ *************************** eq * eq ********:)for $foo in 1, $bar ne in 2, $moo in3, return 4
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-10.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-10.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-10.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******* for ************ let *************** eq *foo****************:
-(: Test:K-ForExprWithout-10 ne foo :)
- ne (: Written by: Frans Englich ne for :)(: Date: 2006-10-05T18:29:37+02:00 $ :)
-(: Purpose:Atest essence is:`deep-equal((for $var in $ ( 2, 3) return $var),(1, 2, 3) eq )`. :)
-(:********** for *********** $ **foo let ******* ne let ********* for *foo** where ******foo****:
-deep-equal((for $var in (1, 2, 3) return $ $ var),
- ( 2, 3))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-11.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-11.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-11.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******* eq *****foo** where * $ **** ne **foo******** let *foo**** ne ********************:)
-(: fooTest: K-ForExprWithout-11 foo let foo :
-(: Written by: Frans Englich for $ ne )
-: Date:2006-10-05T18:29:37+02:00 foo : ne )
-(: Purpose: A ne test whose essencefoo is: `deep-equal((2, 2), (for $foo in (1,1) ne return 1 + let foo for ))`. for :)
-(:***** let *** where ******************************* where ***foo**********foo**:)
-deep-equal((2, 2, (for $foo in (1, 1) return 1 + $foo))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-12.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-12.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-12.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(foo:********* $ **foo* let ********* eq * for * ne ******************* $ * let ***********:)
-(: K-ForExprWithout-12 let foo :) $
-(: Written by: Frans for Englich ne let $ ne for :)
- let (: Date: 2006-10-05T18:29:37+02:00 let for :)
-(: for Purpose: A test whose essence `4 eq for $foo in1, in 2, $moo infoo return 4)`. :)
-(:****************** for ***** for ********************* where ******:)
-4 eq (for $ in 1, $bar in 2, $moo in 3 return 4)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-13.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-13.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-13.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:**************** ne ************ for ****************** eq **: ne )
-(: Test: K-ForExprWithout-13 ne :)
-foo let (: by: Frans Englich ne eq let for :)foo
-(: Date: 2006-10-05T18:29:37+02:00 ne eq foo :)
-(:Purpose: Atest is: `3 eq (for $foo in 1 return for $bar where in 2 return let $bar + $foo)`. :)
-(:**** let *** ne eq *********** where * $ **foo************** eq *********** ne *****:)
-3 eq (for $foo in 1 return for $bar ne 2 return $ ne $bar + ne $foo)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-14.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-14.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-14.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:********** for ** ne ****foo***** let for ****** where ************************ $ :)
-(: Test: where K-ForExprWithout-14foo let foo ne :)(: Written by: Frans Englich foo :)
-(: Date: for $ where let eq foo ne foo :)
- let (: Purpose: A test whose ne essence eq is: $ for `3 eq eq (for $foo in 1 return for bar in 2 return $bar let ne $foo) : eq )
-(:* where ********* where ********** eq ****** for ************* let *** where **********:)
-3 eq where (for $foo in ne 1 return for $bar fooin 2 $ return $bar ne + $ $ )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-15.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-15.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-15.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(: for *** let ***foo******************foo********* ne *foo********* where *******:)
-( K-ForExprWithout-15 $ foo ne foo where :)
-(:Written by: Frans Englich for eq $ let :)
-(: let Date: 2006-10-05T18:29:37+02:00 eq foo let let :)
-(: Purpose: A eq test whose essence where is: `3 eq (for ne $foo in 1, $foo in 3 return $foo)`. :) let
-( let :******************************** ne ***************foo****:)
-3 eq (for$fooin $ 1, $foo in 3 return $foo eq )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-16.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-16.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-16.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:****foo let *****************************foo**foo* where *****************:)
-(: Test: K-ForExprWithout-16 foo ne $ $ ne foo :)
-(: let Written by: Frans Englich :)
-(: let Date: 2006-10-05T18:29:37+02:00 foo :)
-(: where Purpose: ne A test whose is: `8 eq (for $foo in 1, $foo in3, $moo in 5 return $moo + let $foo)`. :)
-(:foo $ ******************* let ***** $ *** where ************** where *** ne * where ******:)
-8 eq for (for $foo in 1, $ in 3, $moo in 5 return $moo + $foo)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-17.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-17.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-17.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*foo eq ************ eq ********* let ****** for *** ne ************** eq ******:)
- where (: Test: for K-ForExprWithout-17 $ :)
-(: Written foo Frans Englich for :)
-(: Date: 2006-10-05T18:29:37+02:00 where :) where
-(: Purpose: A test whose essence is: `6 where eq (for $ $foo in 1, $foo in 3foo return $ let foo + $foofoo where ) eq `. :)
-(:** $ ********** $ ****** $ **foo*** ne ***** eq *foo let *** eq **********foo*******:)
- let 6 eq for $foo in 1, foo$ eq fooin 3 let return $foo + eq $foo
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-18.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-18.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-18.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:************** ne ************ eq *******foo*foo******* let *** where *******:) eq
-(: for Test: K-ForExprWithout-18foo where foo foo foo :)
-(: by: FransEnglich $ foo for $ ne let where ne :)
-(:Date: 2006-10-05T18:29:37+02:00 $ eq let : eq )
-(: Purpose: A for variable binding to the empty sequence. :)
-(:**** $ ******foo*****foo***************** $ ******* ne ****************: let )
-empty(for eq $var in () return current-time())
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-19.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-19.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-19.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
- ne (:*********foo*** ne *** where ** ne ********* $ *** for ****** for *********** where ****foo****:)
-(: K-ForExprWithout-19 foo $ ne :)foo
-(: Written by: Frans Englich ne let $ for :)
-(: $ :
-(: Purpose: A for variable binding to the empty $ sequence. :) where (:************ let ***foo**** $ *******foo*** for ******* $ ************** where ****:)
-empty(for $var in () return ne 1)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-2.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-2.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
- ne (:*** eq ******* eq **** where foo****************************** $ ** for ***:)
- ne (: Test: K-ForExprWithout-2foo $ eq :)
-(: Writtenfoo by: Frans Englich for let let :)
-(: $ Date: 2006-10-05T18:29:37+02:00 ne foo foo eq :) ne
-(: Purpose: Syntactically eq invalid for-expression. :) ne
-(:*** eq *************foo**************foo* eq ********* for ** for *** for *********:)
-for in 1 $ return 4
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-20.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-20.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-20.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:** ne **** where ******** for ************************************* for **:)
-(: eq Test: K-ForExprWithout-20 eq for let where ne :)(:Written by: Frans Englich let eq : let )
-( eq : Date: 2006-10-05T18:29:37+02:00 where ne : eq )
-(: Purpose: A for variable binding to the empty sequence, combined with where value comparison. :)
-(***** for **** eq ********** for where ******* where ****** for ***** $ * let ** eq **********:)
-empty(( eq $var in () return current-time( eq ))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-21.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-21.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-21.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:***************** where *******foo******* eq ********* let **** $ ******** ne where **:
-(: Test: K-ForExprWithout-21 let let for for ne :)
-( Writtenby: Frans Englich let where let for foo foo ne $ :)
-(: Date: 2006-10-05T18:29:37+02:00 ne :)
-(: Purpose: A for variable binding to thefoo empty sequence, combined with value comparison. )
-(:*** $ * eq ** for ************************* where ******* where ******** $ ******* eq *:)
-empty(( $ for $var in () return for 1) eq where 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-22.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-22.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-22.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:** ne **** ne *********foo****foo*** eq ***foo*** eq *************************:)
-(: Test: K-ForExprWithout-22 for for :)
-( eq : Written eq by: Frans Englich let $ where ne let :)
-(: 2006-10-05T18:29:37+02:00 eq :)(: Purpose: where A for foovariable binding to the emptysequence, combined with value :)
-(: where *** for ** where ** let ****foo***************foo*** $ **** let ************** $ **** eq * where *:)
- let empty for (for $var in eq subsequence((current-time(), 1), 4) return 1)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-23.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-23.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-23.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********* where *******foo********** for ******* let *********** let ** eq * $ ***** eq ***:)
-(: Test: ne $ K-ForExprWithout-23 for let for foo :)
- Written Frans Englich for ne :)
-(:Date: 2006-10-05T18:29:37+02:00 $ ne $ foo : eq )
-(: fooPurpose: An for-return expression which eq only let is the binding variable. let :)foo
-(:* ne *** $ *foo** where *****foo** for *********** eq ****foo***** $ ******** for * where ******** for *:)
-deep-equal(remove(for $var in (current-time for (), 2,3,foo 4) return $var, 1) (2, 3, 4))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-24.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-24.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-24.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:********* where ** let ** $ *************** eq ***** $ ****** $ ****** $ * $ ****:)
- for (: $ Test: K-ForExprWithout-24 let $ foo where :)
-(: Written by: Frans Englich foo foo )
- where (: ne 2006-10-05T18:29:37+02:00 ne eq :) eq (: $ Purpose: A where test let whose essence `( $fn:name (1, 1)return $fn:name) instance of xs:integer+`. :)
-(:********* ne ************ where ***************** $ *** where ************:)
-(for $fn:namein (1, 1) return $fn:name) instance of xs:integer+
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-25.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-25.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-25.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:******** ne ******************* let ********** ne ******* let **foo*******:) eq
-(: Test: K-ForExprWithout-25 ne ne :)(: Written where by: Frans Englich :)
-(: Date: 2006-10-05T18:29:37+02:00 where for :)
-(: Purpose: A test whose is:`(for $ $ in (foo1, 1 return $xs:name) instanceof xs:integer+`. :)
-(: eq ************** eq *** where * for ne ************************** let ********:)
-(for $xs:name in (foo1,foo 1) returnfoo$xs:name) instance of xs:integer+
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-27.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-27.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-27.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-: for ** let ******* ne *foo***** ne ******** let *** eq ***** for ** eq *********** ne *********:)
-(: Test: K-ForExprWithout-27 let foo $ :)
-( Written by: Frans Englich let : where ) eq
-(: 2006-10-05T18:29:37+02:00 where where for foo:) for
-(: Purpose: Variable whichis eq not in scope. :)
-(:*********** for ***** $ * for ******** ne eq ****************** eq * ne *****:)
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-28.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-28.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-28.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
- for (:********* eq **************** let **** where ****** ne *foo***** let ****** $ ******:)
-(: Test: K-ForExprWithout-28 let $ let foo eq foo for for $ :)
-(: Written by: Fransfoo Englich foo where where :)
-(: Date: 2006-10-05T18:29:37+02:00 for let where where eq :)
-(: Purpose: Variable which is not in scope. foo :)
-(: for ************** ne **************************************:
-$xs:NOTEXIST
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-29.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-29.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-29.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
- $ :**** let *** let ************** $ *** for ************foo************* let *foo***:)
-(: Test: K-ForExprWithout-29 let let ne :)
-(: where Written Frans Englich $ where foo :)
-(: $ Date: 2006-10-05T18:29:37+02:00 for where :foo) eq
-: Purpose: $ Variable which is notin $ :foo)
-(:********** for ************** for ****** for **************** where *******:)
-1 + $NOTEXIST
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-3.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-3.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-3.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******** where *foo**** eq ************************ where ***** $ ******* for ****:
-(: Test: K-ForExprWithout-3 foo :)
-(: Written Frans for Englich for where where :) eq
-(: Date: 2006-10-05T18:29:37+02:00 let :)
-(: Purpose: Syntactically invalid for-expression. where :)
-(:********** eq *************foo*********foo**foo*************** where ***:) for
- return 4
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-30.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-30.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-30.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:************* ne ********** ne ******************** eq ***********:)
-(: Test: K-ForExprWithout-30 eq foo ne eq for :)
-(: Written by: Frans Englich where let :)
- ne ( ne : Date: let foo let )
-( ne Variable which is not in scope. where let eq : ne )
-( $ :*************** let ***** where * $ *********** ne *********** eq ** where ******:) ne
- + ne $prefix:NOTEXIST
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-31.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-31.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-31.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:***foo**** eq *** let **** for ******* ne ********* for * eq ****** where ******* ne *******:)
-( Test: K-ForExprWithout-31 foo let $ $ :)
-( where Written by: Frans Englich let :)
-(: Date: 2006-10-05T18:29:37+02:00 foo eq :)
- where (: Purpose: $ Variable which is not ne in scope. foo :)
-(:** where let ******* where ******foo******** where ************** where ****foo**********:)
-1 + $xs:NOTEXIST
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-32.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-32.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-32.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:** ne **** $ ************************ where ***** let *********** eq ******:)
-(: K-ForExprWithout-32 ne ne :)
-(: Written where by: Frans Englich let foo foo :)
-(: Date: 2006-10-05T18:29:37+02:00 eq eq $ foo $ eq ne :)(:Purpose: Variable which is not in scope. $ foo :)
-(:foo** for *****foo** $ * eq **** eq ****foo************* $ ***foo****** let ************:)
-$NOTEXIST+ eq 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-33.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-33.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-33.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*************** ne ******** ne *************** ne * let ************* $ :)foo
-( $ : Test: K-ForExprWithout-33 let ne :)
-( Written by: Frans Englich foo :)
-(: Date: 2006-10-05T18:29:37+02:00 where where where for :)
-( for Purpose: Variable which not $ fooinscope. $ eq :)
-(:*************************** where ** let ************** eq *********:)
- let PREFIXNOTEXIST:NOTEXIST+ 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-34.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-34.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-34.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:****** ne ************** let ****** $ foo*****foo**** for *** let ********** $ ****: for
-(: Test: K-ForExprWithout-34 foo let where :
-foo( let : Written by: Frans Englich ne ne let eq )
-(: Date: 2006-10-05T18:29:37+02:00 $ :) where
-(: Purpose: Variable which isnot in scope. ne where foo foo:)
-(:**** for ***** eq ********* where *** for *** where *********** $ *** $ ****************:)
-$xs:NOTEXIST + 1foo
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-35.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-35.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-35.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:***foo*foo**foo*** for ****************************** let ** where ******** where ***:)
-(: Test: K-ForExprWithout-35 for $ eq where for $ let ne $ eq :) where (: Written for by: Frans Englich eq for ne let ne where ne where for :)
-( let : Date: 2006-10-05T18:29:37+02:00 for where ne where eq :)
-(: let Purpose: Variable which is not in $ scope. $ eq :) let
-(:*** for ************** let **************** let * where *****************:)
-for $foo in 1 return $NOTEXIST
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-36.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-36.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-36.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:** let ********** for ******foo******* $ ********* let ****************:)
-( $ : Test: K-ForExprWithout-36 foo where :)
-(: Written let by:foo Frans $ Englich ne :
- let (: eq Date: 2006-10-05T18:29:37+02:00 where :)
-: Purpose: Variable which is not in scope. foo for :)
-(:************************* ne **** ne * eq * eq where *** ne ** $ ********* for ******:)
-for $foo in (1, 2, $foo eq ) return 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-37.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-37.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-37.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:***********foo* ne ********foo*********** eq ********** $ **** ne ********:)
-(: Test: K-ForExprWithout-37 for let let ne :)
-(: Writtenby: Frans Englich for for foo eq for :)
- for eq ( Date: 2006-10-05T18:29:37+02:00 ne eq let ne :)
-(: Purpose: Variable which not in scope. eq :)
-:*********** where *****************foo* $ *********foo********** eq *****:)
-for where $foo ne in (1, $foo, 3) return 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-38.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-38.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-38.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-( where ***foo*** ne ************ eq ***************** let **** ne ****************)
-(: eq Test: K-ForExprWithout-38 foo :)
-(: Written by: Fransfoo Englich foo where foo ne eq :foo)
- let (: Date: 2006-10-05T18:29:37+02:00 where eq ne :)
-(: Purpose: for Variable which where is not in scope. foo :)
- for (:***********foo******* ne **************** for *********************:)
-for $foo eq in ($foo,2, 3) return 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-39.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-39.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-39.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:******** $ ********************************* where $ ********* eq *:)
-(: Test: K-ForExprWithout-39 for for :)(: by: for Frans Englich let eq ne for ne :)
-(: Date: $ for :)
-(: Purpose: Variable whichfoo is for not in scope. $ eq :)
-( let :******* ne ******* for *****foo********************************:)
-for $foo in $foo return 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-4.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-4.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-4.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
- for (****************************************** for for ********:)
-(: Test: K-ForExprWithout-4 :)
-(: Written where by:Frans Englich $ foo $ eq : $ )
-: Date: ne 2006-10-05T18:29:37+02:00 ne :)
-(: Purpose: Syntactically invalid for-expression. let for :)
-(:************************************************** eq ** ne *:)for $a in 1 foosatisfies 4
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-40.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-40.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-40.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:* let ******* for *********** where * where ******************* for **** for ********:)
- ne (: K-ForExprWithout-40 for foo :)foo
-(: Written by: Frans Englich $ ne :) where
-( where : Date:2006-10-05T18:29:37+02:00 :) where
-(: ne Purpose: Variable which is not in scope. where where :)
-(:************** ne ***foo*************** where *******************:)
-for $foo in 1 for return $bar + (for $ eq bar in 2 return $bar)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-41.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-41.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-41.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-:*****foo*************** for ************ let ****************** eq ** let ***:)
-(: where Test: K-ForExprWithout-41 eq let :)
-(:foo Written Frans Englich ne for :)
-(: Date: $ 2006-10-05T18:29:37+02:00 ne :)
-(: Purpose: Variable which is not in foo :)
- let (:****************************************** for **********:)
-foo $ for $a in (1, eq 2, where 3) for , $b in (1, 2, 3, $ $b)
-return $a, $b
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-42.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-42.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-42.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:* ne *************** let **** $ *************** for ****** let **foo******** ne *
-(: Test: K-ForExprWithout-42 foo where :
-(: Written by: Frans Englich ne $ where :)
-(: Date: 2006-10-05T18:29:37+02:00 let eq let foo :)
- for (: Purpose: Variable which is not in ne $ :)(:********* $ ************* $ ** for ********** eq let *********foo*******:)
-for $ in ne (1, 2), $b in (1, 2), ne $c in (1, 2) $ return 1, where $a
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-43.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-43.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-43.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******************** for ****foo************** ne **************:
-(foo: K-ForExprWithout-43 eq eq foo :)
-(: Writtenby: Frans Englich eq for :)
-(: foo2006-10-05T18:29:37+02:00 eq eq :)
-(: Purpose:Variable which is ne notin let scope. let :)
- eq (************************ eq ********foo** $ *******************:) $
-for $ain (1, for 2) return eq $a
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-44.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-44.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-44.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:* where ***** let ****** for *** let ****************************** eq *** for * ne * for ** $ :)
-( where : Test: K-ForExprWithout-44 for $ for :) eq
-(foo: Written by: Frans Englich let :)
-(: Date: 2006-10-05T18:29:37+02:00 where where ne :)
-(: Purpose: which is ne not in scope. ne :)
- eq eq (:* eq ** ne ************ where ********* for ************* let let *** ne * ne ********** ne ****:)
-for $a in(1, 2), $ eq b let in (1,2) let $c for in 2) return 1, $b
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-45.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-45.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-45.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(** $ * where **** let ************************* where foo******************** let *)
-:foo Test: K-ForExprWithout-45 foo eq $ ne :
-(: Written by: Frans Englich where $ :)
-(: where Date: 2006-10-05T18:29:37+02:00 where foo foo :)
-(: Purpose: Variable which is not infoo scope. :)
-(:**foo*** $ * eq ***** let * eq * eq * $ *******foo*** eq ** ne ****************** $ *********:)
-for $a in (1, 2), $b in (1, 2), $c in (1, 2) return foo1, $c
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-46.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-46.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-46.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********************** for * where **********foo******** ne **********:)
-(: Test: ne K-ForExprWithout-46 let eq $ :)
-(: let Written by: Frans Englich eq foo eq $ :)
-(: Date: 2006-10-05T18:29:37+02:00 where :)
-(:Purpose: Type check: $foo is of type xs:string, $ which cannot be ne added to xs:integer 1. :)
-(** for **************** ne ***** where ************* let ********* let ****:)
-for $foo in"foo" return eq 1 + $foo
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-47.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-47.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-47.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-(:******* let ** let * ne ***** eq ** eq ****** for *foo*** ne ***** let ***** ne * for ***************:)
- ne (: for Test: K-ForExprWithout-47 :)
-(: Written for by: Frans Englich foo:)
-(: Date: 2006-10-05T18:29:37+02:00 eq ne for foo :)
-(: Purpose: A variable's ne for expression causes type error for in a value comparison. foo:)
-(:** for *** where ******** ne ******foo*** let **************** for **** for ***** let ***foo let ***:)
-for $foo in ("a string", one")
- for $ 1+ subsequence( ne $ 1, 1)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-48.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-48.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-48.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*************** let ************ for ******foo*foo*****foo****foo*** where ** let **:
-(: where Test: foo let $ :)
-(: Written by: Frans Englich where foo where where foo :)
-(: Date: 2006-10-05T18:29:37+02:00 $ for ne ne :
-(: Purpose: Parser test: variable namesin a forexpression only exist of one let character are :)
-(:****** ne *************** for ******************* for *************:
-1 eq ne ne (for $a in 1 return a where )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-49.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-49.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-49.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:************* $ * where ********************foo***** $ ********* let ***:)
-(: Test: fooK-ForExprWithout-49 :)
-(: where Written by: Frans Englich foo ne foo : for )
-(: for Date: 2006-10-05T18:29:37+02:00 where eq :)
-(: Purpose: For-expression involving a simple return statement that in some implementations trigger optimization paths. where :)
-(:******** where * eq ***** where **************** eq * let ****** $ ********foo** ne ** where *foo**:)
-deep-equal((for $fo let in trace( let (1, 2, 3 let ), "msg") return $), (1, 2, 3))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-5.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-5.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-5.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********************foo****** let ***foo********* let ******** $ *** let * where *:) ne
-(: Test: K-ForExprWithout-5 foo $ where for :)
- $ (: Written by: Frans fooEnglich ne $ :) $
-(: Date: 2006-10-05T18:29:37+02:00 ne eq eq eq $ : ne )
-(: Purpose: A test whose essence is: `deep-equal(1 to 5, (for $i in (1,2,3,4,5) return $i))`. :)
-(:******* where ******** ne ******* let ***** let ************************ let *:)
-deep-equal(1 to (for $i in (1,2,3,4,5) return $i))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-50.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-50.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-50.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:**** where ****foo** where *foo**** ne *********** where ******foo***************** for * for *****:) let
-(: Test:K-ForExprWithout-50 $ foo $ for eq :)
-(:Written by: for Frans for Englich ne foo eq :)
-: Date: 2006-10-05T18:29:37+02:00 $ for $ :)
-(: Purpose: Ensure scanners/parsers accept small QNames for-expressions. :)
-(:********* for * let foo************ eq ************ for *** eq ************ eq ****:)
-1 eq (for $a in 1 return $a)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-51.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-51.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-51.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:** where ******* let *********** ne **********foo****** $ * let ******** for ******:)
-(: Test: K-ForExprWithout-51 where ne :)
-(: Written by: Frans Englich for eq eq for $ :)
-(: 2006-10-05T18:29:37+02:00 let :)
-( Purpose: Ensure scanners/parsers let accept ne small QNames in for-expressions for (#2). :)
-(:******* where **** let ** where foo****************************************:)
-foo1 eq (for $ let xs:a in1 return $xs:a for )
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-52.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-52.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-52.xq 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-(**************** where ********************* $ ** ne ********foo********:)
-(: Test: K-ForExprWithout-52 for let foo for :)
-(: Written by: Frans Englich let for eq where :)
-(: Date: eq ne $ let :)
-( Purpose: A binding in a for-expressionshadowsglobal variables. for :)
-( for :** eq ****** for *** $ *** for ********* $ ********** eq *****foo********** ne **)
- eq declare variable $i for := false();
-declare variable $t := false();
-deep-equal( for
-for foo$i in (true let (), true()) where , $ in (true(), true()) for return foo($i, $t),
-(true(), $ true() true(), (), true) $ , true(),true(), true()))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-53.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-53.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-53.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-(:**** eq *********foo********** eq **foo********** for ******************:)
-(: Test:K-ForExprWithout-53 for ne where :)
-(: Written by: Frans Englich where $ :
-(: Date: 2006-10-05T18:29:37+02:00 $ foo where :)
-(Purpose: Ensure the correct variable is in an for-expression whose return sequence is only a variable $ reference. :)
- $ (:***************** ne ****** $ ****** where ***** let **** $ ***** ne **********:)
- eq
- for declare variable ne $ eq $my := ne 3;
-
- (for $i in 1 return $my)eq 3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-54.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-54.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-54.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:***************** $ ****** let **foo** for *********************foo* for ****)
-( Test: K-ForExprWithout-54 eq foo $ :)
-(: Written by: Frans Englich foo let where :)(: Date: 2006-10-05T18:29:37+02:00 $ :)
-(: Purpose: Ensure thefoo correct variable is used in an for-expression whose return sequence is only a variable reference(#2). :)
-(:** let **** $ **** where **** $ ****************************************:)
-
- where declare variable $i := 3;
-
- (for $i in 1 return $i)eq 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-55.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-55.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-55.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*************** where *** let ********foo************foo**************)
-(: Test: ne K-ForExprWithout-55 where let eq $ : where )
-(: Written by: FransfooEnglich let where eq :) $
-(: Date: 2006-10-05T18:29:37+02:00 :)
-(:Purpose:foo Apply fn:count() to a for-expression. :) ne
-(:** for **foo***** for ne ******** for *********** ne ********************* for ***:)
-(for $i in (1, 2, current-time( for )) return ($i, eq $i)) ne eq 6
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-56.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-56.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-56.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-(:* $ *******foo************foo**************foo***************: ne )
-(: Test: where $ :)
-(: Written by: Frans ne Englich let for :)
-(: Date: 2006-10-05T18:29:37+02:00 $ eq :)foo
-(: Purpose: let Apply fn:count() to a for-expressionfoo(#2) $ . :)
-(:*********** for ********************foo**************foo** ne ****foofoo*)foo
-count(for $i in (1, 2, timezone-from-time(current-time() for )) ne return ($ $i)) eq 6or
-(for $iin (1, 2, timezone-from-time(current-time()) return ($i, $i)) eq 4
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-6.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-6.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-6.xq 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-(:*** $ *********************** let *********** $ *****************:)(: Test:foo K-ForExprWithout-6 foo $ :)
-(: Written where by: Frans where :) where (: Date: 2006-10-05T18:29:37+02:00 ne let :)
-(: Purpose: A test whose essenceis: `3 eq (for$ in1 return 3)`. ) where
-(:***********foo* eq * $ *******foo******* ne ** eq * for **foo****** $ ***************:) where
- $ 3 where (for$foo for in 1 return3)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-7.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-7.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-7.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:************ let * eq *********foo*** for ***** ne * where *********************** ne :)
-: Test: K-ForExprWithout-7 for let eq $ let :)(: Written by: Englich foo where foo eq ne :
-( Date: 2006-10-05T18:29:37+02:00 eq eq :)
-(: Purpose: A whose essence is: `1 eq(for $foo in 1 return$foo)`. :)
-(******* for ***** for ******foo***** where *** for ************** for * eq * let ******* for *** eq *:) eq
-1 ne eq (for $ let foo in for 1foo return $foofoo)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-8.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-8.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-8.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******************** ne ********** where *************************:)
-( $ : Test: K-ForExprWithout-8 $ ne where :)
-(: for Written by: Frans Englich ne for :)
-(: Date: 2006-10-05T18:29:37+02:00 ne :)
-(: Purpose: A test whose essence is: `2 eq (for $foo in eq 1 return $foo + 1)`. :) let
-(:***** let *** for **************foo*********** where ***** let ************ eq ****:)
-2 eq (for $foo in 1 return$foo + 1)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-ForExprWithout-9.xq'
--- test/parser/Queries/syntax_errors/fail_K-ForExprWithout-9.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-ForExprWithout-9.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-(:****** for ******** $ * for *******foo************************* $ ** eq *** eq **:)
-foo for (: Test: K-ForExprWithout-9 eq :)
-(: Written by: Frans Englich for eq :) let
-( Date: 2006-10-05T18:29:37+02:00 $ eq :)
-(: Purpose: A let test whose let essence is: `3 eq let (for $foo in 1 return for $ $ foo in ne 3 return $foo)`. :)
-(:* let ********* ne *** where **foo***** let *************** where ***** $ **foo******foo eq **
-3 eq (for for $foo ne in 1 return eq
- ne $foo in eq 3return $foo)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-LetExprWithout-1.xq'
--- test/parser/Queries/syntax_errors/fail_K-LetExprWithout-1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-LetExprWithout-1.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-( let : where ********* where eq ******************* ne ***********foo********** let * $ ***:)
-(: Test: ne K-LetExprWithout-1 let eq foo let : eq )
-(: ne Written where by: Frans Englich $ foo eq :)
-(: ne Date: 2006-10-05T18:29:37+02:00 ne :)(: $ Purpose: A 'let' variable ne eq is out-of-scope due to FLWOR has higher precendence than the comma operator. :)
- for (**************** for ********************************** $ *:) $
-let $i :=5, $j := 20 * let $i
-return $i, $jfoo
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-LetExprWithout-2.xq'
--- test/parser/Queries/syntax_errors/fail_K-LetExprWithout-2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-LetExprWithout-2.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*** eq ******foo******* ne ********** eq **** let ***** $ *** for ******foo*******:)
- for (: Test: for K-LetExprWithout-2 ne ne foo let for let foo eq foo ne :) where
-(: Written by: Frans $ Englich where where for foo ne foo :) ne
-(: 2006-10-05T18:29:37+02:00 ne :)
-(: Purpose: fooA value in a 'let' $ variable cannot be assigned to with '=', it must be ':='. :)
-(foo:***** $ **** let ** ne ne ***** let *********foo****************************:)
-let $i = 5 return 3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-LetExprWithout-3.xq'
--- test/parser/Queries/syntax_errors/fail_K-LetExprWithout-3.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-LetExprWithout-3.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-:***** ne **** for **foo********************************** let ******foo**:)
-(: Test: K-LetExprWithout-3 eq foo foo for where ne :)
-(: Written by: Frans Englich ne $ for for :)
- let (: for Date: 2006-10-05T18:29:37+02:00 $ foo for :)
- for (: Purpose: A value in a $ 'let' cannot be assigned to with 'in', it must be ':='. :)
-(:***** eq *********** eq ***************** $ **** eq **************:) ne
-let $i in 5 return 3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-LetExprWithout-4.xq'
--- test/parser/Queries/syntax_errors/fail_K-LetExprWithout-4.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-LetExprWithout-4.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-(:**** $ ********************* $ * eq * eq ****foo****************foo**: where )
-(: Test: K-LetExprWithout-4 eq ne let :)
-(: by: Englich ne eq :)
-(: Date: 2006-10-05T18:29:37+02:00 foo $ :)
- $ (: Purpose: foo eq A let binding for in a let-expression shadows global variables. :)(:******* ne ************** ne *** ne ******** ne ** eq ******* where ***** let ***** eq **:)
-declare variable $i := false(;
-declarevariable $t := false();
-( $ (let eq $i := true(), $t := true() return ($i, $t) for ), where
-(true( eq , true())
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-1.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-1.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********************foo***************** for ************* where * where **:)
-(: Test: eq K-WhereExpr-1 $ foo eq $ :)
-(: Written by: Frans Englich $ eq for :)
-(:Date: 2006-10-05T18:29:37+02:00 $ $ where let foo eq ne :)
-(: Purpose: A for/where combination where the cardinality let of return statement is eq affected by the sequence. :)
-(:***** where ***** ne *foo************** where ************************ eq *****:)
-(for $fo in where (1, 2, 3) where where$fo for eq 3 $fo) eq 3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-10.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-10.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-10.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(foo:** ne ******* for ** for **foo** ne ****** eq ***********foo*****foo********foo******* for ***: where )
-(: Test: K-WhereExpr-10 where ne $ $ :)
-(: Written by: Frans Englich let ne :)
-(: Date: for $ $ :)
-(: Purpose: A for/where fooexpression combinedfoo with fn:boolean and xs:anyURI. :)(:****foo*********** ne ************ eq * ne ********* let ************:)
-for $i in (1, 2, current-time() $ [1] where xs:anyURI("example.com/") return let true()
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-11.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-11.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-11.xq 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-(:**** eq ********foo****** ne *********** where *************foo******** let *) for
-: Test: K-WhereExpr-11 $ eq eq where for :)
-(: Written by: Frans let Englich where where eq ne :)
-(: Date: 2006-10-05T18:29:37+02:00 let let for for :)
-(: Purpose: eq A for/where expression combined with fn:boolean and xs:anyURI. :)
-(:********* for ***** $ eq *******foo****************foo************foo*:)empty(for $i in (1, 2, current-time())[1] for where xs:anyURI"") return true where ( for ))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-2.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-2.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:*foo***** $ **** where *********** eq *** where ****** where *** ne ********** eq ** eq ** where *******: let
-(: Test: $ foo let :) where
-(: Written Frans Englich where foo :)foo
-(: Date: 2006-10-05T18:29:37+02:00 where where :)
- let (: let Purpose: Get the string valueof for the return statement of a for expression where after being filtered by a let where clause. :)
-(: $ *************************** $ ** ne ***** ne ****** where *********foo* for *foo***:
-string((for where $fo in (1, 2, 3)foo where $fo eq3 return $fo))fooeq "3"
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-3.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-3.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-3.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-foo(:*** for ****************************foo** for ******************:)
-(: Test: ne K-WhereExpr-3 for where eq eq foo :)
-(: Written by: Frans Englich for eq ne eq :)
-foo: for Date: 2006-10-05T18:29:37+02:00 :)
-: Purpose: A where clause containing a value which EBVcannot be extracted from. eq : eq )
- eq (:******* for ******foo******* for *************** where *** $ ************ let ****:
-count( for (for $fo in let (1, 2, 3) wherefoo xs:time("08:08:23Z" where ) return $fo) eq3
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-4.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-4.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-4.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:**************** where ***** ne ****** $ ************************:foo)
-(Test: foo eq foo ne let :)
-: Writtenby: Frans $ eq where :)
-(: Date: 2006-10-05T18:29:37+02:00 :)
-( let : Purpose: A for/whereexpression combined with fn:count(). :)
- eq (:***** $ * where * eq **** eq **********foo***** let ************** ne *************:)
-for $ifoo in 1 let $ where count(($i, 2, timezone-from-time(current-time()))) return eq true(foo)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-5.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-5.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-5.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:**** ne ** ne ** let *********************** where **********************:)
- $ (: Test: K-WhereExpr-5 $ let :)
-(: Written by: foo Englich foo $ for :)
- $ (: Date: 2006-10-05T18:29:37+02:00 foo :) for
-(: where Purpose: A for expression binding to single value, with a positive where clause. :)
-(:* eq ****** ne *** for ************* where **** eq **************** let *foo******:)
-empty(foofor $i for in 1 eq where false where () return $i)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-6.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-6.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-6.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:***** for ******** where ****foo***** $ ** where ********* where ********** where * ne ** for *******:)
- eq (: Test: K-WhereExpr-6 eq $ foo eq ne :)
-(: Written by: Frans Englich foo $ let : $ )
-(: Date: ne 2006-10-05T18:29:37+02:00 ne ne where :)
-( Purpose: A for expression binding where to one singlevalue, with a negative where clause. : $ )
-(:* where * for *********** where * ne * ne ********************* $ **foo******* eq ********:)
-(for $i in 1 where true() return $i) eq ne 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-7.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-7.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-7.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:******** eq **************************** $ ********** let *******: eq )
-: Test: K-WhereExpr-7 :) for foo
-(: eq Written by: Frans Englich let ne $ $ :)
-(: Date: 2006-10-05T18:29:37+02:00 let for $ :)
-(: A for expression binding to one single value, eq for combined with ne a positivewhere clause. :)
-(foo:foo******** where **** ne ******************************** let * where * let * where *******:)
-empty(for $ in 1 where (1, current-time())[1] for treat as xs:integer eq 0 return $i)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-8.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-8.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-8.xq 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-( eq :*********** where **** let ************ ne * eq ************ $ ***************:): Test: K-WhereExpr-8 eq let eq for ne let :)
-foo(: by: FransEnglich $ ne $ let let :)(: Date: 2006-10-05T18:29:37+02:00 let let :) eq
-( let : Purpose: A for expression binding to ne $ one single value, combined with negative where clause. foo:)
-(:************ for ** eq ******************* let ************ ne ********:)
-(for $i in where 1 for where ( eq 1, current-time())[1]treat as xs:integer let eq1return i)eq 1
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K-WhereExpr-9.xq'
--- test/parser/Queries/syntax_errors/fail_K-WhereExpr-9.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K-WhereExpr-9.xq 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
-(:********** where * eq ****************** ne * where *** let *foo******************:) $
- eq (: Test: K-WhereExpr-9 $ for let foo:)
-(: Written by: Frans Englich let let eq :)
-(: Date: 2006-10-05T18:29:37+02:00 foo ne $ :)
-(: Purpose: A for/where expressioncombined with fn:boolean. :foo)
-(:*** ne ** ne ****** ne * eq ******* let *******foo********* let ******* eq *** ne *********:)
-forfoo$i in (1, 2, current-time())[1] where fn:boolean($i treat as xs:integer) return true()
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-1.xq'
--- test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-1.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-(:******** where * ne ****************foo********* for ****************** let :)
-(: Test: where K2-LetExprWithout-1 let eq :) let
-foo( where : Written by: Frans Englich $ ne :)
-(: Date: 2006-08-04T17:13:26Z for for where : ne )
-(: $ Purpose: A testwhose essence is: `deep-equal(( where <b/>, <b/>, <b/>, <b/>), (for $v1 in (1, 3, 4) let $v2 := <b/> return ne foo($ ne v2))/. let )`. :)
-:**** eq ********** let **** where ****** eq ******* $ * where *** ne *****************:)deep-equal((<b/>, <b/>, <b/>, <b/> where ),
- (for $v1 in (1, 2, 3, 4) let $v2 := <b/>
- return ($v2)foo)/.)
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-2.xq'
--- test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-2.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_K2-LetExprWithout-2.xq 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
-( eq :***** for ** $ ** $ * $ foo where ***** eq **********foo ne ******** where ******************:
-(: Test: K2-LetExprWithout-2 eq :)
-(: Written by: where Frans where Englich :)
-: Date: 2006-08-04T17:13:26Z :)
-(: Purpose: A test whose essence is: ((<b/>, <b/>, <b/>, <b/>), ( for for $v1 in (1, 2, 3, 4) let $v2 := <b/> return( $ $v2) ne ))`. :)
-(:************ for ***************foo**** let *** $ ****************:)
- $ deep-equal( where ( <b/>, <b/>), eq $ (for $v1 in (1, 2, 3, for 4 where
- let $v2 := <b/>
- let eq return ($v2)))
\ No newline at end of file
=== removed file 'test/parser/Queries/syntax_errors/fail_try_catch.xq'
--- test/parser/Queries/syntax_errors/fail_try_catch.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/syntax_errors/fail_try_catch.xq 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
-try {
- <a/>
-}
=== removed file 'test/parser/Queries/transform.xq'
--- test/parser/Queries/transform.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/transform.xq 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-copy $x := <a/> modify insert node <b/> into $x return $x
=== removed file 'test/parser/Queries/try_catch1.xq'
--- test/parser/Queries/try_catch1.xq 2013-02-07 17:24:36 +0000
+++ test/parser/Queries/try_catch1.xq 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-try {
- <a/>
-}
-catch err:XPST0051 {
- <b/>
-}
-catch err:XPST0080 {
- "text"
-}
-catch * {
- "Error: " ,$err:code
-}
=== removed file 'test/parser/parsertestdriver.cpp'
--- test/parser/parsertestdriver.cpp 2013-02-07 17:24:36 +0000
+++ test/parser/parsertestdriver.cpp 1970-01-01 00:00:00 +0000
@@ -1,324 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-#include <string>
-#include <vector>
-
-#ifdef WIN32
-#include <windows.h>
-#else
-#include <sys/time.h>
-#endif
-
-#include <zorba/zorba.h>
-#include <zorba/store_manager.h>
-
-#include "compiler/parsetree/parsenodes.h"
-#include "parsertestdriverconfig.h" // SRC and BIN dir definitions
-#include "compiler/parser/xquery_driver.h"
-#include "compiler/api/compilercb.h"
-#include "context/static_context.h"
-
-using namespace zorba;
-
-class Timer {
-public:
- Timer();
- void start();
- void stop();
- ulong difference();
-private:
-#ifdef WIN32
- typedef FILETIME SysTime_t;
-#else
- typedef struct timeval SysTime_t;
-#endif
- void setLastToCurrent();
- ulong difference(SysTime_t& aBegin, SysTime_t& aEnd) const;
- SysTime_t getCurrentTime() const;
- SysTime_t theStartTime;
- SysTime_t theLastDiffTime;
- SysTime_t theEndTime;
- bool theRunning;
-};
-
-Timer::Timer() :theRunning(false) {}
-
-void Timer::start()
-{
- theRunning = true;
-#ifdef WIN32
- GetSystemTimeAsFileTime(&theStartTime);
- GetSystemTimeAsFileTime(&theLastDiffTime);
-#else
- gettimeofday(&theStartTime, 0);
- gettimeofday(&theLastDiffTime, 0);
-#endif
-}
-
-void Timer::stop()
-{
- theRunning = false;
-#ifdef WIN32
- GetSystemTimeAsFileTime(&theEndTime);
-#else
- gettimeofday(&theEndTime, 0);
-#endif
-}
-
-ulong Timer::difference()
-{
- ulong lResult;
- if (theRunning) {
- SysTime_t lCurrent = getCurrentTime();
- lResult = difference(theLastDiffTime, lCurrent);
- setLastToCurrent();
- }else {
- lResult = difference(theStartTime, theEndTime);
- }
- return lResult;
-}
-
-void Timer::setLastToCurrent()
-{
-#ifdef WIN32
- GetSystemTimeAsFileTime(&theLastDiffTime);
-#else
- gettimeofday(&theLastDiffTime, 0);
-#endif
-}
-
-ulong Timer::difference(SysTime_t& aBegin, SysTime_t& aEnd) const
-{
- ulong lResult;
-#ifdef WIN32
- ULARGE_INTEGER lBegin;
- ULARGE_INTEGER lEnd;
-
- lBegin.HighPart = aBegin.dwHighDateTime;
- lBegin.LowPart = aBegin.dwLowDateTime;
- lEnd.HighPart = aEnd.dwHighDateTime;
- lEnd.LowPart = aEnd.dwLowDateTime;
-
- ULONGLONG lDiff = lEnd.QuadPart - lBegin.QuadPart;
- lResult = static_cast<ulong>(lDiff/10000);
-#else
- ulong lSeconds = aEnd.tv_sec - aBegin.tv_sec;
- ulong lMicro = aEnd.tv_usec - aBegin.tv_usec;
- lResult = 100*lSeconds + lMicro/1000;
-#endif
- return lResult;
-}
-
-Timer::SysTime_t Timer::getCurrentTime() const
-{
- SysTime_t lTime;
-#ifdef WIN32
- GetSystemTimeAsFileTime(&lTime);
-#else
- gettimeofday(&lTime, 0);
-#endif
- return lTime;
-}
-
-static void printTime(ulong aMilli)
-{
- ulong lMilli = aMilli;
- ulong lSeconds = lMilli / 1000;
- lMilli -= lSeconds*1000;
- ulong lMinutes = lSeconds / 60;
- lSeconds -= lMinutes*60;
- ulong lHours = lSeconds / 60;
- lHours -= lMinutes*60;
- if (lHours)
- std::cout << lHours << "h ";
- if (lMinutes)
- std::cout << lMinutes << "m ";
- if (lSeconds)
- std::cout << lSeconds << "s ";
- if (lMilli)
- std::cout << lMilli << "ms ";
-}
-
-void readCommandLine(int argc,
- std::string &lQueryFileString,
- char** argv,
- bool &lTime,
- unsigned lNumber,
- int &status)
-{
- if ( argc == 2 )
- {
- lQueryFileString = zorba::PARSER_TEST_SRC_DIR +"/Queries/" + argv[1];
- std::string lQueryWithoutSuffix = std::string(argv[1]).substr( 0, std::string(argv[1]).size()-3 );
-
- std::cout << "parsertest " << lQueryWithoutSuffix << std::endl;
- } else if (argc >= 3 && argc <= 6) {
- for (int lI = 0; lI < argc; ++lI) {
- std::string lArg(argv[lI]);
- std::stringstream lStr;
- if (lArg[0] == '-') {
- switch (lArg[1])
- {
- case 'f':
- lQueryFileString = std::string(argv[++lI]);
- break;
- case 't':
- lTime = true;
- break;
- case 'n':
- lStr.str(argv[++lI]);
- lStr >> lNumber;
- break;
- default:
- std::cerr << std::endl <<
- "usage: parsertestdriver (-f file|testfile) [-t] [-n exectimes]"
- << std::endl;
- status = 1;
- // break out of the loop
- lI = argc;
- }
- } else if (lQueryFileString == "") {
- lQueryFileString = zorba::PARSER_TEST_SRC_DIR +"/Queries/" + argv[1];
- std::string lQueryWithoutSuffix = std::string(argv[1]).substr(
- 0, std::string(argv[1]).size()-3);
-
- std::cout << "parsertest " << lQueryWithoutSuffix << std::endl;
- } else {
- std::cerr << std::endl <<
- "usage: parsertestdriver (-f file|testfile) [-t] [-n exectimes]"
- << std::endl;
- status = 1;
- lI = argc;
- }
- }
- } else {
- std::cerr << std::endl <<
- "usage: parsertestdriver (-f file|testfile) [-t] [-n exectimes]" << std::endl;
- status = 1;
- }
-}
-
-void printTimingInfoOfRun( unsigned lI, Timer &lTimer, std::vector<ulong> &lTimes )
-{
- std::cout << "Time consumed for ";
- switch (lI)
- {
- case 0:
- std::cout << "1st";
- break;
- case 1:
- std::cout << "2nd";
- break;
- case 2:
- std::cout << "3rd";
- break;
- default:
- std::cout << lI + 1 << "th";
- }
- std::cout << " run: ";
- ulong lDiff = lTimer.difference();
- lTimes.push_back(lDiff);
- printTime(lDiff);
- std::cout << std::endl;
-}
-
-void printEndTimeInfo( Timer &lTimer, std::vector<ulong> &lTimes, unsigned lNumber )
-{
- lTimer.stop();
- std::cout << "Total time: ";
- printTime(lTimer.difference());
- std::cout << std::endl;
- std::vector<ulong>::iterator lIter;
- unsigned long lTotal = 0;
- for (lIter = lTimes.begin(); lIter != lTimes.end(); ++lIter) {
- lTotal += *lIter;
- }
- lTotal /= lNumber;
- std::cout << "Average run time: ";
- printTime(lTotal);
- std::cout << std::endl;
-}
-
-int parseCode( int status, std::string &lQueryFileString )
-{
- XQueryDiagnostics* xqueryDiagnostics = NULL;
- CompilerCB aCompilerCB(xqueryDiagnostics);
- xquery_driver lDriver(&aCompilerCB);
-
- if (!status) {
- // TODO correct Exception handling with try-catch
- try {
- lDriver.parse_file(lQueryFileString.c_str());
- } catch (...) {
- assert(false);
- }
- }
-
- if (!status) {
- parsenode* lNode = lDriver.get_expr();
- if (typeid (*lNode) == typeid (ParseErrorNode)) {
- ParseErrorNode *err = static_cast<ParseErrorNode *> (&*lNode);
- std::cerr << "Query parsed but no parsenode root generated!" << std::endl;
- std::cerr << err->msg << std::endl;
- std::cerr << "line " << err->get_location().getLineBegin() << std::endl;
- std::cerr << "column " << err->get_location().getColumnBegin() << std::endl;
- status = 3;
- }
- } return status;
-}
-
-int
-#ifdef _WIN32_WCE
-_tmain(int argc, _TCHAR* argv[])
-#else
-main(int argc, char** argv)
-#endif
-{
- int status = 0;
- bool lTime = false;
- unsigned lNumber = 1;
- std::vector<ulong> lTimes;
-
- std::string lQueryFileString;
- Zorba* lZorba = Zorba::getInstance(zorba::StoreManager::getStore());
-
-
- // do initial stuff
- readCommandLine(argc, lQueryFileString, argv, lTime, lNumber, status);
-
-
- Timer lTimer;
- if (lTime) {
- lTimer.start();
- }
-
- for (unsigned lI = 0; lI < lNumber; ++lI) {
- {
- status = parseCode(status, lQueryFileString);
-
- }
- if (lTime) {
- printTimingInfoOfRun(lI, lTimer, lTimes);
-
- }
- }
- lZorba->shutdown();
- if (lTime && lNumber != 1) {
- printEndTimeInfo(lTimer, lTimes, lNumber);
-
- }
- return status;
-}
=== removed file 'test/parser/parsertestdriverconfig.h.in'
--- test/parser/parsertestdriverconfig.h.in 2013-02-07 17:24:36 +0000
+++ test/parser/parsertestdriverconfig.h.in 1970-01-01 00:00:00 +0000
@@ -1,26 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-
-#ifndef XQP_TESTDRIVER_CONFIG_H
-#define XQP_TESTDRIVER_CONFIG_H
-
-namespace zorba {
-
-static std::string PARSER_TEST_SRC_DIR = "@CMAKE_CURRENT_SOURCE_DIR@";
-static std::string PARSER_TEST_BINARY_DIR = "@CMAKE_CURRENT_BINARY_DIR@";
-
-}
-#endif
=== removed directory 'test/remote'
=== removed file 'test/remote/PostProcessTests.xq'
--- test/remote/PostProcessTests.xq 2013-02-07 17:24:36 +0000
+++ test/remote/PostProcessTests.xq 1970-01-01 00:00:00 +0000
@@ -1,36 +0,0 @@
-(: Copyright 2006-2008 The FLWOR Foundation. :)
-(: :)
-(: Licensed 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. :)
-(: :)
-
-(: This query is run by the remote queue and nightlies after a test run. :)
-(: It tweaks the CTest-generated Test.xml to pass tests which crashed :)
-(: but are marked as EXPECTED_FAILURE(). :)
-declare namespace l = "http://zorba-xquery.com";
-declare namespace ann = "http://www.zorba-xquery.com/annotations";
-
-declare variable $exps as document-node() external;
-declare variable $tests as document-node() external;
-
-declare %ann:sequential function l:xform($a) {
- for $exp in $exps/ExpectedFailures/Test
- for $segfault in
- $a/Site/Testing/Test/Results/NamedMeasurement/Value[text() eq "SEGFAULT" or text() eq "OTHER_FAULT"]
- let $failure := $segfault/../../..
- where data($exp/@name) eq data($failure/Name)
- return replace node $failure/@Status with attribute Status { "passed" };
-
- $a
-};
-
-l:xform($tests)
=== removed file 'test/remote/RunRemoteTest.cmake'
--- test/remote/RunRemoteTest.cmake 2013-02-07 17:24:36 +0000
+++ test/remote/RunRemoteTest.cmake 1970-01-01 00:00:00 +0000
@@ -1,131 +0,0 @@
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-#
-# This script will queue your local working set of changes for
-# execution on the remote testing queue.
-#
-# Usage: cmake [ -Dopt=value ... ] -P RunRemoteTest.cmake
-# Be sure all -D options come before -P !
-# Valid options:
-# changelist = svn changelist to submit (defaults to default changelist)
-# ZORBA_BUILD_DIR = zorba build directory (defaults to src_dir/build)
-# message = the checkin message (defaults to opening user's editor)
-# commit = set to "no" to prevent remote queue from committing changes
-# (default "yes")
-
-
-# SVN path for submissions
-set (svn_path "http://zorbatest.lambda.nu:8080/svn/zorbatest/remotequeue")
-
-# Figure out what directory we're running in
-get_filename_component (cwd ${CMAKE_CURRENT_LIST_FILE} PATH)
-
-# Compute top of Zorba source tree
-get_filename_component (srcdir "${cwd}/../.." ABSOLUTE)
-message (STATUS "Zorba source dir: ${srcdir}")
-
-# Ensure build directory exists
-if (NOT ZORBA_BUILD_DIR)
- set (ZORBA_BUILD_DIR "${srcdir}/build")
-else (NOT ZORBA_BUILD_DIR)
- get_filename_component (ZORBA_BUILD_DIR_TEMP "${ZORBA_BUILD_DIR}" ABSOLUTE)
- set(ZORBA_BUILD_DIR "${ZORBA_BUILD_DIR_TEMP}")
-endif (NOT ZORBA_BUILD_DIR)
-
-file(TO_CMAKE_PATH "${ZORBA_BUILD_DIR}" CMAKE_ZORBA_BUILD_DIR)
-
-if (NOT IS_DIRECTORY "${CMAKE_ZORBA_BUILD_DIR}")
- message (FATAL_ERROR "Build directory ${builddir} does not exist! Specify with -DZORBA_BUILD_DIR='build dir'")
-endif (NOT IS_DIRECTORY "${CMAKE_ZORBA_BUILD_DIR}")
-
-# Load utilities lib and find all required executables
-include ("${cwd}/SvnPackage.cmake")
-FIND_PREREQS ()
-
-# Create a working directory named after the current time, to ensure
-# first-come, first-serve and prevent collisions
-execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "fn:adjust-dateTime-to-timezone(fn:current-dateTime(), xs:dayTimeDuration(\"PT0H\"))"
- OUTPUT_VARIABLE datetime)
-string (REPLACE ":" "-" datetime "${datetime}")
-
-# Configure working directory for building submission
-set (workdir "${CMAKE_ZORBA_BUILD_DIR}/remotequeue/changes-${datetime}")
-
-# Create a fake zorba-info.xml that points to the old SF zorba trunk
-file (WRITE "${workdir}/zorba-info.xml"
- "<info><entry><url>http://zorba.svn.sourceforge.net/svnroot/zorba/trunk/zorba</url></entry></info>")
-
-# Extract ZORBA_MODULE_DIR. This seems like a kludgy approach, but
-# unfortunately load_cache() can't be called in CMake scripts.
-set (cache_regex "^ZORBA_MODULES_DIR:PATH=(.*)$")
-file (STRINGS "${CMAKE_ZORBA_BUILD_DIR}/CMakeCache.txt" modules_dir_entry
- REGEX "${cache_regex}" LIMIT_COUNT 1)
-if (modules_dir_entry MATCHES "${cache_regex}")
- set (modules_dir "${CMAKE_MATCH_1}")
-endif (modules_dir_entry MATCHES "${cache_regex}")
-
-# Package up local changes for all modules.
-if (IS_DIRECTORY "${modules_dir}")
- set (mod_count 1)
- file (GLOB module_dirs "${modules_dir}/*")
- foreach (module_dir ${module_dirs})
- if (IS_DIRECTORY "${module_dir}")
- message (STATUS "Module ${mod_count}: ${module_dir}")
- svn_package ("${module_dir}" "${workdir}" "${changelist}"
- "${workdir}/module-${mod_count}.tgz")
- math (EXPR mod_count "${mod_count} + 1")
- endif (IS_DIRECTORY "${module_dir}")
- endforeach (module_dir)
-endif (IS_DIRECTORY "${modules_dir}")
-
-# Wrap up all packaged changes into single submission file.
-set (changefile "${workdir}.tgz")
-execute_process (COMMAND "${CMAKE_COMMAND}" -E tar czf "${changefile}" "."
- WORKING_DIRECTORY "${workdir}")
-file (REMOVE_RECURSE "${workdir}")
-get_filename_component (changefile "${changefile}" NAME)
-
-# Testing option: Don't submit job at all if "packageonly" is set
-if (packageonly)
- message (FATAL_ERROR "Not submitting job as requested!")
-endif ()
-
-# Copy the local changes to the remotequeue svn repository. In
-# future, we could pass data to the remote queue (such as test suites
-# to run, etc.) with properties on the checkin. For now at least, if
-# the "commit" argument is "no", then use a special checkin message to
-# instruct the remote queue not to commit the job to svn. (Doing it
-# this way also prevents this script for prompting for a checkin
-# message, which is useful.)
-message ("Submitting job ${changefile}....")
-if (commit STREQUAL "no")
- set (commitargs -m "DO NOT COMMIT")
-elseif (message)
- set (commitargs -m "${message}")
-endif (commit STREQUAL "no")
-execute_process (COMMAND
- "${svn}" import ${commitargs}
- "${CMAKE_ZORBA_BUILD_DIR}/remotequeue/${changefile}"
- "${svn_path}/workingsets/${changefile}"
- TIMEOUT 300 RESULT_VARIABLE result)
-
-if (NOT result STREQUAL 0)
- message ("Job failed to submit!")
-else (NOT result STREQUAL 0)
- message ("\nJob ${changefile} submitted to remote queue.")
- message ("You may follow the progress of this job at:")
- string (REGEX REPLACE "changes-(.*)\\.tgz" "\\1" changefile "${changefile}")
- message ("\n http://zorbatest.lambda.nu:8080/remotequeue/${changefile}/log.html\n")
-endif (NOT result STREQUAL 0)
=== removed file 'test/remote/SvnPackage.cmake'
--- test/remote/SvnPackage.cmake 2013-02-07 17:24:36 +0000
+++ test/remote/SvnPackage.cmake 1970-01-01 00:00:00 +0000
@@ -1,276 +0,0 @@
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-#
-# Utility routines to package a local SVN working copy's changes into
-# a single file, and for applying that file to a fresh SVN enlistment
-# elsewhere.
-
-
-MACRO (FIND_PREREQS)
- # Definitely need svn here.
- FIND_PROGRAM(SVN_EXECUTABLE svn DOC "subversion command line client")
- IF(NOT SVN_EXECUTABLE)
- MESSAGE (FATAL_ERROR "Subversion is required; not found")
- ENDIF(NOT SVN_EXECUTABLE)
- SET (svn "${SVN_EXECUTABLE}")
-
- # create path to execute zorba
- SET(ZORBA_EXE "${ZORBA_BUILD_DIR}/bin/zorba")
- IF (WIN32)
- SET(ZORBA_EXE "${ZORBA_EXE}.bat")
- ENDIF (WIN32)
- IF (NOT EXISTS ${ZORBA_EXE})
- MESSAGE (FATAL_ERROR "Zorba is required; not found. Specify -DZORBA_BUILD_DIR to point to your build directory if necessary. (${ZORBA_EXE})")
- ENDIF (NOT EXISTS ${ZORBA_EXE})
- EXECUTE_PROCESS (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "1+1" OUTPUT_VARIABLE ignored RESULT_VARIABLE result)
- IF (result)
- MESSAGE (FATAL_ERROR "Zorba is not functional. Specify -DZORBA_BUILD_DIR to point to your build directory if necessary. (${ZORBA_EXE})")
- ENDIF (result)
-ENDMACRO (FIND_PREREQS)
-
-
-# Utility routine: given svn-status.xml file and a changelist (may be
-# ""), return a list of files which match any specified status.
-MACRO (get_files_with_status filelist svnstatusxml changelist)
- # Which element to look at?
- if ("${changelist}" STREQUAL "")
- set (elem "target")
- else ("${changelist}" STREQUAL "")
- set (elem "changelist[@name=\"${changelist}\"]")
- endif ("${changelist}" STREQUAL "")
-
- # Which statuses to look at?
- set (whereclause "")
- set (prefix "where")
- foreach (status ${ARGN})
- set (whereclause "${whereclause}${prefix} $status eq \"${status}\"")
- set (prefix " or")
- endforeach (status ${ARGN})
-
- # BUG: if the query below has new lines you will get a Zorba syntax error on Windows
- set (query "fn:string-join(for $entry in status/${elem}/entry let $status := data($entry/wc-status/@item) ${whereclause} return $entry/@path, ';')")
- # Set "filelist" to result
- execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "${query}" --context-item "${svnstatusxml}"
- OUTPUT_VARIABLE "${filelist}")
-ENDMACRO (get_files_with_status)
-
-
-# Args:
-# srcdir: root of local SVN working copy with changes to package
-# tmpdir: directory to hold temp files
-# changelist: svn changelist to package (may be "" to package all changes)
-# resultfile: Full path to changes.tgz file to create
-#
-# Note that this function will NOT create any output file if there are no
-# svn changes in the given srcdir.
-macro (svn_package srcdir tmpdir changelist resultfile)
- find_prereqs ()
-
- # Canonicalize srcdir
- get_filename_component (abssrcdir "${srcdir}" ABSOLUTE)
-
- # Start by making our working directory
- set (chgdir "${tmpdir}/changes")
- file (MAKE_DIRECTORY "${chgdir}")
-
- # Write out the "svn info" and "svn status" information
- execute_process (COMMAND "${svn}" --xml info "${abssrcdir}"
- OUTPUT_FILE "${chgdir}/svn-info.xml")
- execute_process (COMMAND "${svn}" --xml status "${abssrcdir}"
- OUTPUT_FILE "${chgdir}/svn-status.xml")
-
- # Also save the named of the changelist for the remote queue to use
- file (WRITE "${chgdir}/changelist" "${changelist}")
-
- # Check to see whether there are any changes to package
- get_files_with_status (chgfiles "${chgdir}/svn-status.xml" "${changelist}"
- added modified deleted)
- if (chgfiles)
- # Pick out path names for added and modified files in the
- # specified changelist, or from the default changelist (<target>
- # element) if no changelist specified
- get_files_with_status (copyfiles "${chgdir}/svn-status.xml" "${changelist}"
- added modified)
-
- # Copy each modified or added file to a corresponding place in the
- # directory hierarchy of the changes directory. Skip directories.
- file (MAKE_DIRECTORY "${chgdir}/files")
- foreach (filepath ${copyfiles})
- if (NOT IS_DIRECTORY "${filepath}")
- file (TO_CMAKE_PATH "${filepath}" filepath)
- file (RELATIVE_PATH relpath "${abssrcdir}" "${filepath}")
- get_filename_component (reldir "${relpath}" PATH)
- file (MAKE_DIRECTORY "${chgdir}/files/${reldir}")
- message ("Copying ${filepath} to ${chgdir}/files/${reldir}..")
- execute_process (COMMAND "${CMAKE_COMMAND}" -E copy
- "${filepath}" "${chgdir}/files/${reldir}")
- endif (NOT IS_DIRECTORY "${filepath}")
- endforeach (filepath)
-
- # Package up changes/ directory
- execute_process (COMMAND "${CMAKE_COMMAND}" -E tar czf
- "${resultfile}" "changes"
- WORKING_DIRECTORY "${tmpdir}")
- endif (chgfiles)
- file (REMOVE_RECURSE "${chgdir}")
-endmacro (svn_package)
-
-
-# Args:
-# changefile - a changes.tgz file from package_svn
-# outdir - directory to check out SVN into and apply changes - see below
-# tmpdir - directory to temporarily unpack changefile into
-# logfile - file to append log messages into
-# result_var - if the variable named by "result_var" is non-zero or contains
-# a message after svn_unpackage() returns, an error was encountered
-# resultdir_var - the variable named by "resultdir_var" will be set to
-# the path the package was unpackaged into
-#
-# Regarding "outdir": svn_unpackage() will place the results into a
-# subdir of outdir. If there is already a subdir of outdir that is an
-# svn checkout of the same URL, it will unpackage into that
-# directory. Otherwise, it will create a new subdir with the basename
-# of "changefile" minus the .tgz extension.
-function (svn_unpackage changefile outdir tmpdir logfile result_var
- resultdir_var)
- find_prereqs ()
-
- # Unpack changes.tgz into working dir
- execute_process (COMMAND "${CMAKE_COMMAND}" -E tar xzf "${changefile}"
- WORKING_DIRECTORY "${tmpdir}")
- set (chgdir "${tmpdir}/changes")
-
- # De-Windows all text files - this also is currently Linux-specific
- # and depends on "dos2unix" existing.
- file (GLOB_RECURSE textfiles
- "${chgdir}/*.c" "${chgdir}/*.cpp" "${chgdir}/*.cxx"
- "${chgdir}/*.h" "${chgdir}/*.hpp" "${chgdir}/*.hxx"
- "${chgdir}/*.txt" "${chgdir}/*.cmake" "${chgdir}/*.conf"
- "${chgdir}/*.xml" "${chgdir}/*.xq" "${chgdir}/*.txt"
- "${chgdir}/*.res" "${chgdir}/*.spec" "${chgdir}/*.xqlib")
- foreach (textfile ${textfiles})
- execute_process (COMMAND dos2unix -k "${textfile}")
- endforeach (textfile)
-
- # Determine SVN URL and revision
- execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "data(info/entry/@revision)"
- --context-item "${chgdir}/svn-info.xml"
- OUTPUT_VARIABLE svnrev)
- execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "data(info/entry/url)"
- --context-item "${chgdir}/svn-info.xml"
- OUTPUT_VARIABLE svnroot)
- # Special hack: Sourceforge has two URLs for everything, one http: and
- # one https:. The remote queue checks out via http:, so we have to
- # tweak the unpackaged URL here if it's https:.
- if ("${svnroot}" MATCHES "^https:.*sourceforge.net")
- string (REPLACE "https:" "http:" svnroot "${svnroot}")
- endif ("${svnroot}" MATCHES "^https:.*sourceforge.net")
- file (APPEND "${logfile}" "Checking out/updating from ${svnroot}...\n")
-
- # Look through outdir for a subdir matching svnroot.
- set (svndir)
- file (GLOB subdirs "${outdir}/*")
- foreach (subdir ${subdirs})
- execute_process (COMMAND "${svn}" info --xml "${subdir}"
- OUTPUT_FILE "${tmpdir}/tmpinfo.xml" ERROR_VARIABLE ignored
- RESULT_VARIABLE result)
- if (NOT result)
- execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "data(info/entry/url)"
- --context-item "${tmpdir}/tmpinfo.xml"
- OUTPUT_VARIABLE subdir_svnroot)
- file (REMOVE "${tmpdir}/tmpinfo.xml")
- if (subdir_svnroot STREQUAL svnroot)
- set (svndir "${subdir}")
- break ()
- endif (subdir_svnroot STREQUAL svnroot)
- endif (NOT result)
- endforeach (subdir)
- if (NOT svndir)
- # No matching URL found; use basename of input file
- get_filename_component (basename "${changesfile}" NAME_WE)
- set (svndir "${outdir}/${basename}")
- endif (NOT svndir)
- file (APPEND "${logfile}" "..outputting to ${svndir}\n")
- set (${resultdir_var} "${svndir}" PARENT_SCOPE)
-
- execute_process (COMMAND "${svn}" checkout
- -r "${svnrev}" "${svnroot}" "${svndir}"
- OUTPUT_VARIABLE svnlog ERROR_VARIABLE svnlog)
- file (APPEND "${logfile}" ${svnlog})
-
- # Copy modified/added files on top of svn directory
- file (APPEND "${logfile}" "Copying added/modified files...\n")
- execute_process (COMMAND "${CMAKE_COMMAND}" -E copy_directory
- "${chgdir}/files" "${svndir}")
- file (APPEND "${logfile}" "Done copying.\n")
-
- # Modified files are already all set. Process svn-status.xml to
- # delete any files which were deleted on client's svn, as named in
- # the client's changelist.
- file (READ "${chgdir}/changelist" changelist)
- get_files_with_status (deletefiles
- "${chgdir}/svn-status.xml" "${changelist}" deleted)
- execute_process (COMMAND "${ZORBA_EXE}" --omit-xml-declaration
- --query "data(info/entry/@path)"
- --context-item "${chgdir}/svn-info.xml"
- OUTPUT_VARIABLE clientroot)
- # clientroot and the filepaths below are absolute paths from the
- # client, which might be Windows-style paths with drive letters. The
- # following is a horrific hack which lets us get the remote path
- # component no matter which platform they came from. (Note: This
- # only works on Linux, which is the platform the remote queue runs
- # on. If we ever have a Windows remote queue machine, this will
- # die.)
- # 1. Stick a leading / on them, so Linux thinks they're absolute.
- # 2. Convert to "CMake paths", which have forward-slashes.
- # 3. Do relative_path as normal.
- file (TO_CMAKE_PATH "/${clientroot}" clientroot)
- foreach (filepath ${deletefiles})
- file (TO_CMAKE_PATH "/${filepath}" filepath)
- file (RELATIVE_PATH relpath "${clientroot}" "${filepath}")
- execute_process (COMMAND "${svn}" delete "${svndir}/${relpath}"
- OUTPUT_VARIABLE output ERROR_VARIABLE output RESULT_VARIABLE result)
- file (APPEND "${logfile}" "${output}")
- if (result)
- set (${result_var} ${result} PARENT_SCOPE)
- return ()
- endif ()
- endforeach (filepath ${deletefiles})
-
- # Now add any new files, using the local output of "svn status" to
- # find "unversioned" files. (We could read the svn-status.xml from
- # the changes file, but when it is based on a changelist, it won't
- # include directories to add.)
- execute_process (COMMAND "${svn}" --xml status "${svndir}"
- OUTPUT_FILE "${chgdir}/svn-status.xml")
- get_files_with_status (addfiles "${chgdir}/svn-status.xml" "" unversioned)
- foreach (filepath ${addfiles})
- execute_process (COMMAND "${svn}" add "${filepath}"
- OUTPUT_VARIABLE output ERROR_VARIABLE output RESULT_VARIABLE result)
- file (APPEND "${logfile}" "${output}")
- if (result)
- set (${result_var} ${result} PARENT_SCOPE)
- return ()
- endif ()
- endforeach (filepath ${addfiles})
-
- # Remove temporary unpackaged workingset
- file (REMOVE_RECURSE "${chgdir}")
-
-endfunction (svn_unpackage)
=== removed file 'test/test_index.cpp'
--- test/test_index.cpp 2013-02-07 17:24:36 +0000
+++ test/test_index.cpp 1970-01-01 00:00:00 +0000
@@ -1,311 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-
-
-#include <zorba/zorba.h>
-#include <zorba/store_manager.h>
-
-#include "diagnostics/errors.h"
-#include "store/api/item.h"
-#include "store/api/item_factory.h"
-#include "store/api/iterator_factory.h"
-#include "store/api/index.h"
-
-#include "store/naive/simple_store.h"
-#include "store/naive/store_defs.h"
-
-using namespace zorba;
-using namespace zorba::store;
-
-
-long theIndex1[][2] =
-{
- { 30, 86 },
- { 40, 4 },
- { 40, 14 },
- { 50, 59 },
- { 52, 10 },
- { 52, 20 },
- { 52, 30 },
- { 52, 30 }
-};
-
-ulong theNumIndexEntries = 8;
-
-
-void parseKey(
- int argc,
- const char * argv[],
- int& arg,
- std::vector<long>& res,
- std::vector<bool>& incl,
- std::vector<bool>& inf)
-{
- ulong numCols = atoi(argv[arg]);
- res.resize(numCols);
- incl.resize(numCols);
- inf.resize(numCols);
-
- arg++;
- ulong i;
- for (i = 0; i < numCols && arg < argc; i++, arg++)
- {
- if (strcmp(argv[arg], "inf") == 0)
- {
- inf[i] = true;
- incl[i] = false;
- }
- else
- {
- res[i] = atoi(argv[arg]);
- inf[i] = false;
-
- arg++;
-
- if (*(argv[arg]) == 't')
- {
- incl[i] = true;
- }
- else if (*(argv[arg]) == 'f')
- {
- incl[i] = false;
- }
- else
- {
- std::cout << "bad usage" << std::endl;
- abort();
- }
- }
- }
-
- if (i < numCols)
- {
- std::cout << "bad usage" << std::endl;
- abort();
- }
-}
-
-
-/*******************************************************************************
-
- usage ::= "test_index" LowKey? HighKey?
-
- LowKey ::= "-lk" NumColumns (ColumnSpec)+
-
- HighKey ::= "-hk" NumColumns (ColumnSpec)+
-
- NumColumns ::= any non-negative number
-
- ColumnSpec ::= (Value | "inf") ("t" | "f")
-
- Value ::= any integer value
-
- Note1: The number of ColumnSpecs in LowKey or HighKey spec must be equal to
- the NumColumns in that spec.
-
- Note2: The "t" and "f" flags in a ColumnSpec indicate whether the Value is
- to be included in the range or not.
-
- Examples:
-
- test_index
- test_index -lk 1 40 t -hk 1 50 f
- test_index -lk 1 40 t
- test_index -lk 1 40 f -hk 2 50 f 10 t
-
-********************************************************************************/
-int main(int argc, const char * argv[])
-{
- //
- // Store initialization
- //
- simplestore::SimpleStore* store = StoreManager::getStore();
-
- store::ItemFactory* f = store->getItemFactory();
- store::IteratorFactory* iteFactory = store->getIteratorFactory();
-
- //
- // Parse args
- //
- std::vector<long> low_key;
- std::vector<bool> low_incl;
- std::vector<bool> low_inf;
- std::vector<long> high_key;
- std::vector<bool> high_incl;
- std::vector<bool> high_inf;
-
- int arg = 1;
- while (arg < argc)
- {
- if (strcmp(argv[arg], "-lk") == 0)
- {
- arg++;
- parseKey(argc, argv, arg, low_key, low_incl, low_inf);
- }
- else if (strcmp(argv[arg], "-hk") == 0)
- {
- arg++;
- parseKey(argc, argv, arg, high_key, high_incl, high_inf);
- }
- else
- {
- arg++;
- }
- }
-
- ulong high_size = high_key.size();
- ulong low_size = low_key.size();
-
- if (low_size < high_size)
- {
- low_key.resize(high_size);
- low_incl.resize(high_size);
- low_inf.resize(high_size);
-
- for (ulong i = low_size; i < high_size; i++)
- {
- low_incl[i] = false;
- low_inf[i] = true;
- }
- }
- else if (low_key.size() > high_key.size())
- {
- high_key.resize(low_size);
- high_incl.resize(low_size);
- high_inf.resize(low_size);
-
- for (ulong i = high_size; i < low_size; i++)
- {
- high_incl[i] = false;
- high_inf[i] = true;
- }
- }
-
- //
- // Create sorted index mapping a pair of integeres to an integer
- //
- ulong numColumns = 2;
-
- IndexSpecification spec(numColumns);
- spec.theIsUnique = false;
- spec.theIsSorted = true;
- spec.theIsTemp = false;
- spec.theIsThreadSafe = false;
- spec.theTimezone = 0;
-
- spec.theKeyTypes[0] = store->theSchemaTypeNames[simplestore::XS_INT];
- spec.theKeyTypes[0] = store->theSchemaTypeNames[simplestore::XS_INT];
- spec.theValueType = store->theSchemaTypeNames[simplestore::XS_STRING];
-
- xqpStringStore_t uri(new xqpStringStore("test_index"));
-
- Index_t index = store->createIndex(uri, spec);
-
- //
- // Create items for all ints between 0 and N-1
- //
- //
- const ulong N = 100;
- Item_t ints[N];
- for (ulong i = 0; i < N; i++)
- f->createInt(ints[i], i);
-
- //
- // Populate the index
- //
- IndexKey key(numColumns);
- Item_t value;
-
- for (ulong i = 0; i < theNumIndexEntries; i++)
- {
- std::ostringstream str;
-
- for (ulong j = 0; j < numColumns; j++)
- {
- key[j] = ints[theIndex1[i][j]];
-
- str << theIndex1[i][j] << " ";
- }
-
- xqpStringStore_t valuestr = new xqpStringStore(str.str());
-
- f->createString(value, valuestr);
-
- index->insert(key, value);
- }
-
- //
- // Probe the index
- //
- IndexProbeIterator* ite = iteFactory->createIndexProbeIterator(index);
-
- IndexBoxCondition_t cond = index->createBoxCondition();
-
- if (low_key.empty())
- {
- Item_t v = ints[0];
-
- cond->pushRange(v, v, false, false, false, false);
- }
- else
- {
- for (ulong i = 0; i < low_key.size(); i++)
- {
- Item_t l = ints[low_key[i]];
- Item_t h = ints[high_key[i]];
-
- cond->pushRange(l, h, !low_inf[i], !high_inf[i], low_incl[i], high_incl[i]);
- }
- }
-
- try
- {
- std::cout << "Probing condition : " << cond->toString() << std::endl;
-
- ite->init(cond);
- ite->open();
-
- store::Item_t res;
- bool more = ite->next(res);
- while (more)
- {
- std::cout << res->getStringValue()->c_str() << std::endl;
- more = ite->next(res);
- }
- }
- catch(error::ZorbaError& e)
- {
- std::cout << e.theDescription << std::endl;
- }
-
- ite->close();
- delete ite;
-
- cond = NULL;
-
- //
- // Shutdown
- //
-
- spec.clear();
- store->deleteIndex(uri);
- index = NULL;
-
- store->shutdown();
- return 0;
-
-}
-
=== removed file 'test/test_plan_serializer.cpp'
--- test/test_plan_serializer.cpp 2013-02-07 17:24:36 +0000
+++ test/test_plan_serializer.cpp 1970-01-01 00:00:00 +0000
@@ -1,125 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-#include <fstream>
-#include <iostream>
-#include <sstream>
-
-#include <zorba/zorba.h>
-#include <zorba/store_manager.h>
-#include <zorba/util/path.h>
-#include <zorba/xquery_exception.h>
-#include "timer.h"
-
-using namespace zorba;
-using namespace std;
-
-
-int
-main(int argc, char* argv[])
-{
- void* store = zorba::StoreManager::getStore();
- Zorba* zengine = Zorba::getInstance(store);
-
- if (argc != 2) {
- std::cerr << "Usage: test_plan_serializer <query_file>" << std::endl;
- return 1;
- }
-
- XQuery_t lQuery = zengine->createQuery();
- try {
- std::ifstream lQueryFile(argv[1]);
-
- if (!lQueryFile) {
- std::cerr << "file" << argv[1] << " does not exist" << std::endl;
- return 2;
- }
-
- lQuery->setFileName(argv[1]);
- lQuery = zengine->compileQuery (lQueryFile);
-
- } catch (XQueryException& e) {
- cerr << "Couldn't compile query: " << e << endl;
- return 3;
- } catch (ZorbaException& e) {
- // no need to close because the object is not valid
- cerr << "Couldn't compile query: " << e << endl;
- return 4;
- }
-
-
- std::ostringstream lPlanFileName;
- lPlanFileName << argv[1] << ".plan";
-
- try {
-
- Timer lTimer;
- lTimer.start();
-
- for (int i = 0; i < 100; ++i) {
- std::ofstream lExecPlan(lPlanFileName.str().c_str());
-
- if (!lExecPlan) {
- std::cerr << "cannot write to file " << lPlanFileName.str() << std::endl;
- return 5;
- }
-
- lQuery->saveExecutionPlan(lExecPlan, ZORBA_USE_BINARY_ARCHIVE, DONT_SAVE_UNUSED_FUNCTIONS);
-
- }
- lTimer.end();
-
- std::cout << "time needed to save the compile plan: " << std::endl;
- lTimer.print(std::cout);
- } catch (ZorbaException& e) {
- // no need to close because the object is not valid
- cerr << "Couldn't create compiled plan for query: " << e << endl;
- return 6;
- }
-
- try {
-
- Timer lTimer;
- lTimer.suspend();
-
- for (int i = 0; i < 100; ++i) {
- std::ifstream lExecPlan(lPlanFileName.str().c_str());
-
- if (!lExecPlan) {
- std::cerr << "cannot read from file " << lPlanFileName.str() << std::endl;
- return 5;
- }
-
-
- lQuery = zengine->createQuery();
- lQuery->setFileName(argv[1]);
-
- lTimer.resume();
- lQuery->loadExecutionPlan(lExecPlan);
- lTimer.suspend();
- }
-
- lTimer.end();
-
- std::cout << "time needed to load the compile plan: " << std::endl;
- lTimer.print(std::cout);
- } catch (ZorbaException& e) {
- // no need to close because the object is not valid
- cerr << "Couldn't load compiled plan for query: " << e << endl;
- return 6;
- }
-
- return 0;
-}
=== removed file 'test/test_store.cpp'
--- test/test_store.cpp 2013-02-07 17:24:36 +0000
+++ test/test_store.cpp 1970-01-01 00:00:00 +0000
@@ -1,403 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-
-#include <fstream>
-
-#include "timer.h"
-
-#include <zorba/zorba.h>
-#include <zorba/store_manager.h>
-
-#include "diagnostics/errors.h"
-#include "store/naive/atomic_items.h"
-#include "store/naive/node_items.h"
-#include "store/naive/dataguide.h"
-#include "store/naive/simple_store.h"
-#include "store/naive/simple_collection.h"
-#include "zorbatypes/datetime.h"
-#include "zorbatypes/duration.h"
-
-
-using namespace zorba;
-
-using namespace zorba::store;
-
-
-void readXmlFile(const char* fileName, std::string& xmlString)
-{
- std::ifstream xmlFile(fileName);
- if(!xmlFile)
- {
- std::cerr << "Error while opening: " << fileName << std::endl;
- abort();
- }
-
- xmlString.clear();
-
- char delim = '\n';
-
- while (xmlFile)
- {
- std::string tmp;
- getline(xmlFile, tmp, delim);
- xmlString += tmp;
- xmlString += delim;
- }
- xmlFile.close();
-}
-
-
-int main(int argc, const char * argv[])
-{
- if (argc < 2 || argc > 4)
- {
- std::cerr << "usage: test_store -n <times> <input file name>" << std::endl;
- }
-
- Timer timer;
- std::string fileName;
- ulong numLoads = 0;
-
- int arg = 1;
- while (arg < argc)
- {
- if (strcmp(argv[arg], "-n") == 0)
- {
- arg++;
- numLoads = atol(argv[arg]);
- }
- else
- {
- fileName = argv[arg];
- }
-
- arg++;
- }
-
- std::cout << "doc file = " << fileName << std::endl << "numLoads = "
- << numLoads << std::endl;
-
- //
- // Store initialization
- //
- simplestore::SimpleStore* lStore = StoreManager::getStore();
-
- //
- // Test boost::shared_ptr
- //
-#if 0
- zorba::store::OrdPath* ordp = new zorba::store::OrdPath();
-
- boost::shared_ptr<zorba::store::OrdPath> p1(ordp);
- boost::shared_ptr<zorba::store::OrdPath> p2(ordp);
-
- std::cout << "p1 count = " << p1.use_count()
- << " p2 count = " << p2.use_count() << std::endl;
-
- p2 = p1;
-#endif
-
- //
- // Re-acquirable latch
- //
- lStore->getGlobalLock().rlock();
- // lStore->getGlobalLock().wlock(); this will block
- lStore->getGlobalLock().rlock(); // this is ok.
- lStore->getGlobalLock().unlock();
- lStore->getGlobalLock().unlock();
-
- //
- // RC_TIMMING
- //
- //#define RC_TIMMING
-
-#ifdef RC_TIMMING
-
- ulong loop = 1000000;
- const char* data = "aaaaaaa0000000";
- ulong datalen = strlen(data);
-
- for (ulong i = 0; i < loop; i++)
- {
- char* tmp = new char[datalen + 1];
- memcpy(tmp, data, datalen);
- delete [] tmp;
- }
-
- timer.end();
- std::cout << "char-pointer alloc time : " << timer.getTime() << std::endl;
- timer.start();
-
- for (ulong i = 0; i < loop; i++)
- {
- xqpStringStore* tmp = new xqpStringStore(data);
- delete tmp;
- }
-
- timer.end();
- std::cout << "String-pointer alloc time : " << timer.getTime() << std::endl;
- timer.start();
-
- for (ulong i = 0; i < loop; i++)
- {
- xqpStringStore_t tmp = new xqpStringStore(data);
- }
-
- timer.end();
- std::cout << "String-handle alloc time : " << timer.getTime() << std::endl;
- timer.start();
-
-#endif // RC_TIMMING
-
- //
- // Create collections
- //
- store::Collection_t coll1;
- store::Collection_t coll2;
-
- try
- {
- xqpStringStore_t uri(new xqpStringStore("http://MyCollection1"));
- coll1 = lStore->createCollection(uri);
-
- std::cout << coll1->getUri()->show() << std::endl;
-
- coll2 = lStore->createCollection(uri);
- }
- catch (error::ZorbaError& e)
- {
- std::cout << e.theDescription << std::endl;
- }
-
- //
- // Repeatedly load an xml doc from a file to the store
- //
-
- double totalTime = 0;
-
- for (ulong i = 0; i < numLoads; i++)
- {
- timer.start();
-
- std::ifstream ifs;
- ifs.open(fileName.c_str(), std::ios::in);
- if(!ifs.is_open())
- {
- std::cerr << "Error while opening: " << fileName << std::endl;
- abort();
- }
-
- store::Item_t doc;
- xqpStringStore_t docuri(new xqpStringStore(fileName));
-
- try
- {
- doc = lStore->loadDocument(docuri, ifs);
- }
- catch (zorba::error::ZorbaError& e)
- {
- std::cout << e.theDescription << std::endl;
- return 1;
- }
-
- timer.end();
- if (i == 0)
- std::cout << "First loading time : " << timer.getTime() << std::endl;
- else
- totalTime += timer.getTime();
-
- lStore->deleteDocument(docuri);
- doc = 0;
-
- ifs.close();
- }
-
- if (numLoads > 1)
- {
- std::cout << "Average loading time : " << totalTime / (numLoads - 1) << std::endl;
- }
-
- //
- // Load the doc to the collection, and keep a ref to it.
- //
- std::ifstream xmlFile(fileName.c_str());
- if(!xmlFile)
- {
- std::cerr << "Error while opening: " << fileName << std::endl;
- abort();
- }
-
- std::iostream xmlStream(xmlFile.rdbuf());
- store::Item_t doc;
-
- try
- {
- doc = coll1->loadDocument(xmlStream);
- }
- catch (zorba::error::ZorbaError& e)
- {
- std::cout << e.theDescription << std::endl;
- return 1;
- }
-
- xmlFile.close();
-
- //
- // Destroy collection
- //
- lStore->deleteCollection(coll1->getUri()->getStringValue());
- coll1 = 0;
-
- //
- // Print out loaded document
- //
-#if 0
- fileName += ".res";
- std::ofstream outXmlFile(fileName.c_str());
- if(!outXmlFile)
- {
- std::cerr << "Error while opening: " << fileName << std::endl;
- abort();
- }
-
- if (doc != NULL)
- outXmlFile << doc->show() << std::endl;
- else
- return 1;
-#endif
-
- //
- // Test node references
- //
- store::Item_t uri;
- lStore->getReference(uri, doc);
- std::cout << "Reference URI for node: " << doc.getp() << " is: "
- << uri->getStringValue()->c_str() << std::endl;
-
- try
- {
- xqpStringStore_t uri(new xqpStringStore("http://MyCollection1"));
- coll1 = lStore->createCollection(uri);
-
- std::cout << coll1->getUri()->show() << std::endl;
-
- coll1->addNode(doc);
- }
- catch (error::ZorbaError& e)
- {
- std::cout << e.theDescription << std::endl;
- }
-
- store::Item_t doc2;
- if (!lStore->getNodeByReference(doc2, uri)) {
- doc2 = NULL;
- }
-
- if (doc != doc2)
- std::cout << "ERROR" << std::endl;
-
- zorba::simplestore::XmlNode* rootNode =
- reinterpret_cast<zorba::simplestore::XmlNode*>(doc.getp());
-
- for (ulong i = 0; i < 3; i++)
- {
- zorba::simplestore::XmlNode* parent = rootNode;
-
- double factor = 0.0;
- if (i == 0) factor = 0.5;
- else if (i == 1) factor = 0.66;
- else if (i == 2) factor = 0.90;
-
- std::vector<const zorba::store::Item*> ctxPath;
- std::vector<const zorba::store::Item*> relPath;
-
- while (1)
- {
- ulong numChildren = parent->numChildren();
- if (numChildren == 0)
- break;
-
- ulong childPos = (ulong)(numChildren * factor);
- zorba::simplestore::XmlNode* child = parent->getChild(childPos);
-
- while (child->getNodeKind() != StoreConsts::elementNode)
- {
- childPos++;
- if (childPos == numChildren)
- break;
-
- child = parent->getChild(childPos);
- }
-
- if (childPos == numChildren)
- break;
-
- ctxPath.push_back(child->getNodeName());
-
- lStore->getReference(uri, child);
- std::cout << "Reference URI for node " << child << ":"
- << child->getNodeName()->getStringValue()->c_str()
- << " at position " << childPos
- << " is: " << uri->getStringValue()->c_str() << std::endl;
-
- Item_t child2;
- if (!lStore->getNodeByReference(child2, uri)) {
- child2 = NULL;
- }
-
- if (child != child2.getp())
- std::cout << "ERROR" << std::endl;
-
- parent = child;
- }
-
-#ifdef DATAGUIDE
- if (rootNode->getDataGuide() != NULL)
- {
- bool found, unique;
- rootNode->getDataGuide()->getPathInfo(ctxPath, relPath, false, found, unique);
- std::cout << "Info for path : ";
-
- for (ulong i = 0; i < ctxPath.size(); i++)
- std::cout << "/" << *ctxPath[i]->getStringValue();
-
- std::cout << std::endl << "found = " << found << " unique = "
- << unique << std::endl;
-
- relPath.resize(1);
- relPath[0] = ctxPath[ctxPath.size()-1];
- ctxPath.resize(ctxPath.size()-1);
-
- rootNode->getDataGuide()->getPathInfo(ctxPath, relPath, false, found, unique);
-
- std::cout << "found = " << found << " unique = " << unique
- << std::endl << std::endl;
- }
-#endif
- }
-
- //
- // Shutdown
- //
- lStore->deleteCollection(coll1->getUri()->getStringValue());
- coll1 = 0;
- doc = 0;
- doc2 = 0;
-
- lStore->shutdown();
- return 0;
-}
-
=== removed directory 'test/testsuites'
=== removed file 'test/testsuites/CMakeLists.txt'
--- test/testsuites/CMakeLists.txt 2013-02-07 17:24:36 +0000
+++ test/testsuites/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,27 +0,0 @@
-# Copyright 2006-2010 The FLWOR Foundation.
-#
-# Licensed 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.
-
-# This directory exists solely as a place for external testsuites to
-# be plugged in to the Zorba test system. By default it is empty and
-# has no tests. Any subdirectories (or symlinks to subdirectories)
-# that are placed here will be added so that they may add tests.
-#
-# To be picked up, subdirectories must be named "*_testsuite". Tests
-# which are added by these suites should have the string "*_testsuite"
-# in their name, to facilitate execution with ctest -R.
-
-file (GLOB testsuites "*_testsuite")
-foreach (testsuite ${testsuites})
- add_subdirectory("${testsuite}")
-endforeach (testsuite)
=== removed file 'test/timer.cpp'
--- test/timer.cpp 2013-02-07 17:24:36 +0000
+++ test/timer.cpp 1970-01-01 00:00:00 +0000
@@ -1,126 +0,0 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed 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.
- */
-#include "timer.h"
-#include <iostream>
-#include <stdio.h>
-
-
-//#define DEBUG
-
-Timer::Timer (bool start_, bool verbose_) : verbose (verbose_)
-{
- if (start_) start ();
-}
-
-void Timer::start()
-{
- startClock = clock();
-#ifndef WIN32
- struct timeval stime;
- gettimeofday(&stime, NULL);
- startTime=(double)stime.tv_sec+(1.e-6)*stime.tv_usec;
- if (verbose) printf("Start time: %lf\n",startTime);
-#else//WIN32
- if (verbose) printf("Start time: %lf\n",(double)startClock/CLOCKS_PER_SEC);
-#endif
-
- suspended = false;
- running = true;
-}
-
-void Timer::end()
-{
- endClock = clock();
-#ifndef WIN32
- struct timeval etime;
- gettimeofday(&etime, NULL);
- endTime=(double)etime.tv_sec+(1.e-6)*etime.tv_usec;
- if (verbose) printf("End time: %lf\n",endTime);
-#else///WIN32
- if (verbose) printf("End time: %lf\n",(double)endClock/CLOCKS_PER_SEC);
-#endif
- running = false;
-}
-
-void Timer::suspend()
-{
- suspendClock = clock();
-#ifndef WIN32
- struct timeval sustime;
- gettimeofday(&sustime,NULL);
- suspendTime = (double)sustime.tv_sec+(1.e-6)*sustime.tv_usec;
- if (verbose) printf("Suspend time: %lf\n",suspendTime);
-#else
- if (verbose) printf("Suspend time: %lf\n",(double)suspendClock/CLOCKS_PER_SEC);
-#endif
-
- suspended = true;
-}
-
-void Timer::resume()
-{
- clock_t resumeClock = clock();
- startClock = startClock +(resumeClock-suspendClock);
-#ifndef WIN32
- struct timeval sustime;
- gettimeofday(&sustime,NULL);
- double resumeTime = (double)sustime.tv_sec+(1.e-6)*sustime.tv_usec;
- if (verbose) printf("Resume time: %lf\n",resumeTime);
- startTime = startTime +(resumeTime-suspendTime);
- if (verbose) printf("New start Time: %lf\n",startTime);
-#else//WIN32
- if (verbose) printf("Resume time: %lf\n",(double)resumeClock/CLOCKS_PER_SEC);
-#endif
-
- suspended = false;
-}
-
-double Timer::getClock()
-{
- if (!suspended)
- return (double)(endClock-startClock)/(double) CLOCKS_PER_SEC;
-
- return (double)(suspendClock-startClock)/(double) CLOCKS_PER_SEC;
-}
-
-
-double Timer::getTime()
-{
-#ifndef WIN32
- if (!suspended)
- return (double)(endTime-startTime);
-
- return (double)(suspendTime-startTime);
-#else
- return 0;
-#endif
-}
-
-
-std::ostream& Timer::print(std::ostream& os)
-{
-#ifndef WIN32
- os << "Duration (with System Time): " << getTime() << " s" << std::endl;
-#endif
- os << "Duration (with CPU Clocks): " << getClock() << " s" << std::endl;
-
- return os;
-}
-
-bool Timer::isRunning()
-{
- return running;
-}
=== modified file 'test/unit/CMakeLists.txt'
--- test/unit/CMakeLists.txt 2013-02-07 17:24:36 +0000
+++ test/unit/CMakeLists.txt 2013-05-14 10:10:36 +0000
@@ -98,6 +98,7 @@
xmldatamanager.cpp
staticcollectionmanager.cpp
test_static_context.cpp
+ test_filesystempath.cpp
)
# multithread_simple.cpp
=== renamed file 'test/path_test.cpp' => 'test/unit/test_filesystempath.cpp'
--- test/path_test.cpp 2013-02-07 17:24:36 +0000
+++ test/unit/test_filesystempath.cpp 2013-05-14 10:10:36 +0000
@@ -23,20 +23,27 @@
using namespace std;
using namespace zorba;
-int main (int argc, const char **argv)
+std::string filesystempath_branch_tests[][2] = {
+ { "/d1/d2/../d3/.", "/d1" },
+ { "/dir", "/" }
+};
+#define NUM_BRANCH_TESTS 2
+
+std::string filesystempath_path_tests[][2] = {
+ { "/../d1/./././././././../..", "/" },
+ { "d1/d2/../../../../d3//", "../../d3" }
+};
+#define NUM_PATH_TESTS 2
+
+int test_filesystempath (int argc, char *argv[])
{
-
- // initialize and deinitialize zorba in order to avoid
- // valgrind showing still reachables
- void* store = zorba::StoreManager::getStore();
- zorba::Zorba * engine = zorba::Zorba::getInstance(store);
-
- if (strcmp (argv [1], "--branch-path") == 0)
+ bool final_success = true;
+ for (int i = 0; i < NUM_BRANCH_TESTS; i++)
{
- filesystem_path branch_test(argv [2], filesystem_path::CONVERT_SLASHES);
- filesystem_path result = branch_test.branch_path();
- std::string result_path;
- result_path = result.get_path();
+ filesystem_path branch_test(filesystempath_branch_tests[i][0],
+ filesystem_path::CONVERT_SLASHES);
+ filesystem_path result = branch_test.branch_path();
+ std::string result_path = result.get_path();
//for Windows, CMake has a problem with '\' so we make an workaround
#if defined WIN32 && !defined UNIX
{
@@ -47,13 +54,27 @@
}
}
#endif
- cout << result_path << endl;
- } else if (strcmp (argv [1], "--path") == 0) {
- cout << filesystem_path (argv [2]).get_path () << endl;
+ bool success = result_path == filesystempath_branch_tests[i][1];
+ cout << "filesystem_path branch test " << i
+ << (success ? " passed" : " failed") << ": expected '"
+ << filesystempath_branch_tests[i][1] << " and got '"
+ << result_path << "'" << endl;
+ if (!success) {
+ final_success = false;
+ }
+ }
+ for (int i = 0; i < NUM_PATH_TESTS; i++) {
+ std::string result_path =
+ filesystem_path (filesystempath_path_tests[i][0]).get_path();
+ bool success = result_path == filesystempath_path_tests[i][1];
+ cout << "filesystem_path path test " << i
+ << (success ? " passed" : " failed") << ": expected '"
+ << filesystempath_path_tests[i][1] << " and got "
+ << result_path << "'" << endl;
+ if (!success) {
+ final_success = false;
+ }
}
- engine->shutdown();
- zorba::StoreManager::shutdownStore(store);
-
- return 0;
+ return (final_success ? 0 : 1);
}
=== removed directory 'test/zorbatest'
=== removed file 'test/zorbatest/acceptance_failure_email_body.txt'
--- test/zorbatest/acceptance_failure_email_body.txt 2013-02-07 17:24:36 +0000
+++ test/zorbatest/acceptance_failure_email_body.txt 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
-Hello,
-
-One or more acceptance tests are now failing. Please review the attached
-report.
-
-Automated regards,
-The Zorba Test Server
-https://fifthelement.inf.ethz.ch/zorba-test
-
-P.S. Here's the list of people who committed changes since the last test
-run:
=== removed file 'test/zorbatest/bl_regression_origin.xqy'
--- test/zorbatest/bl_regression_origin.xqy 2013-02-07 17:24:36 +0000
+++ test/zorbatest/bl_regression_origin.xqy 1970-01-01 00:00:00 +0000
@@ -1,17 +0,0 @@
-declare variable $bl_raw_regress external;
-declare variable $bl_prev_regress external;
-declare variable $now external;
-declare variable $rev external;
-
-<root>{
-for $r in $bl_raw_regress//regress
-return
-<regress>
-{$r/case} {
-
-let $prevr := $bl_prev_regress//regress [case eq $r/case] return
-if ($prevr) then $prevr/since
-else <since><rev>{$rev}</rev><date>{$now}</date></since>
-
-}</regress>}{$bl_raw_regress//progress}
-</root>
=== removed file 'test/zorbatest/compile'
--- test/zorbatest/compile 2013-02-07 17:24:36 +0000
+++ test/zorbatest/compile 1970-01-01 00:00:00 +0000
@@ -1,28 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-# Mandatory vars: $ROOT, $SRC, $BUILD, $ZORBA
-# Optional vars: $BUILD_TYPE
-
-test "$BUILD_TYPE" || export BUILD_TYPE="Debug"
-
-rm -f $ZORBA
-
-cd $BUILD
-
-cmake -DCMAKE_BUILD_TYPE="$BUILD_TYPE" -DZORBA_WITH_REST=OFF $SRC
-make -j 2
-
-test -f $ZORBA || exit 1
=== removed directory 'test/zorbatest/doc'
=== removed file 'test/zorbatest/doc/README.txt'
--- test/zorbatest/doc/README.txt 2013-02-07 17:24:36 +0000
+++ test/zorbatest/doc/README.txt 1970-01-01 00:00:00 +0000
@@ -1,60 +0,0 @@
-***** Requirements
-
-To run the testing framework locally, you need
-
-* zorba build requirements
-* Saxon 8 (requires in turn Sun's Java)
-
-
-***** Running
-
-cd zorbatest
-# only first time
-./setup_framework
-# every time
-./integrate
-
-Optional arguments: --no-clean (don't rebuild from scratch), --rev
-(specify a certain revision)
-
-
-***** Directory hierarchy
-
-testing-+--tests-+--acceptance
- | +--regression
- +--results
-
-
-***** Writing tests
-
-To create a new test (say foobar), you start in zorbatest/testing, and
-create two new directories with two new files:
-
-* in tests/acceptance, create foobar/run. This must be an executable
-file (i.e. chmod a+x foobar/run). You can place additional files here if
-you want to. The framework will clone the foobar/ directory every time,
-and run the test from that cloned directory. Any files left behind by
-the test will be copied to the output directory (which is linked to from
-the corresponding report in case there is a failure).
-
-* in test_results/acceptance, create foobar/result.txt. This file must
-contain in the first line the string SUCCESS or FAILURE (depending on
-whether you expect foobar/run to exit successfully or return an error
-code, e.g. by using "exit 1" in a shell script), then the expected
-(textual) output of foobar/run.
-
-Have a look at acceptance/valgrind for an example.
-
-
-***** Custom project files
-
-These scripts should be modified if framework is reused in another
-project:
-
-* build_project
-
-* on_build_failure
-
-* load_test_env
-
-* process_test_results
=== removed file 'test/zorbatest/error_email.txt'
--- test/zorbatest/error_email.txt 2013-02-07 17:24:36 +0000
+++ test/zorbatest/error_email.txt 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-zorba-coders@xxxxxxxxxxxxxxxxx
=== removed file 'test/zorbatest/idx_snapshots'
--- test/zorbatest/idx_snapshots 2013-02-07 17:24:36 +0000
+++ test/zorbatest/idx_snapshots 1970-01-01 00:00:00 +0000
@@ -1,71 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-TITLE=$1; test "$TITLE" || TITLE="Zorbatest reports"
-NOW=`date --iso-8601=seconds`
-
-cd snapshots
-
-cat >index.html <<EOF
-<html>
-<head><title>$TITLE</title></head>
-<body><h1>$TITLE</h1>
-<table summary=""><tr><th>Revision</th><th>Snapshot</th></tr>
-EOF
-
-cat >atom.xml <<EOF
-<?xml version="1.0" encoding="utf-8"?>
-<feed xmlns="http://www.w3.org/2005/Atom">
-
- <title>$TITLE feed</title>
- <link href="http://example.org/"/>
- <updated>$NOW</updated>
-
- <author>
- <name>Zorbatest</name>
- </author>
-EOF
-
-i=0
-for f in `ls -rd 200*`; do
- REV=`cat $f/rev`
- echo '<tr><td>' $REV '</td><td>' '<a href="'$f'">'$f'</a></td></tr>'
-
- if test $i -lt 20; then
- let i=$i+1
- ISOTSTAMP=`echo $f | perl -pe 's/_/:/g;s/(.*)-(.*):/$1T$2:/'`+0200
- NREG=`cat $f/regressions.xml | fgrep '<regress>' | wc -l`
- if test $NREG -eq 0; then REG=""; else REG=" ($NREG regressions)"; fi
-
-cat >>atom.xml <<EOF
-<entry>
-<title>$TITLE: r${REV}${REG}</title>
-<link href="https://fifthelement.inf.ethz.ch/zorba-test/snapshots/$f/"></link>
-<id>https://fifthelement.inf.ethz.ch/zorba-test/snapshots/$f/</id>
-<updated>$ISOTSTAMP</updated>
-</entry>
-EOF
-
- fi
-
-done >>index.html
-
-cat >>index.html <<EOF
-</table></body></html>
-EOF
-
-cat >>atom.xml <<EOF
-</feed>
-EOF
=== removed file 'test/zorbatest/integrate'
--- test/zorbatest/integrate 2013-02-07 17:24:36 +0000
+++ test/zorbatest/integrate 1970-01-01 00:00:00 +0000
@@ -1,249 +0,0 @@
-#!/bin/sh
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-export ROOT=`pwd`
-export NOW=`date +%F-%T | tr ':' '_'`
-
-. $ROOT/zorbatest_functions.sh
-
-#
-# Process command line arguments
-#
-
-export NEW_SNAPSHOT=1
-export CLEAN_BUILD=""
-export BUILD_TYPE=""
-export TEST_MODE="local"
-export REV=""
-export SRC=""
-export REGRESS_TEST=""
-export ACCEPT_TEST=1
-export SEND_MAIL=""
-export LASTDATE=""
-
-export SNAPSHOT=$ROOT/snapshots/$NOW
-export TESTS=$ROOT/testing
-export BUILD=$ROOT/build
-
-export BLREGRESS_SNAPSHOT=$ROOT/snapshots/regress_baseline; test -e $BLREGRESS_SNAPSHOT || BLREGRESS_SNAPSHOT=""
-
-set_snapshot () {
- NOW=$1; echo Timestamp $NOW
- SNAPSHOT=$ROOT/snapshots/$NOW
- if test -d $SNAPSHOT; then
- NEW_SNAPSHOT=""
- REV=`cat $SNAPSHOT/rev`
- LASTDATE=`cat $SNAPSHOT/prev/timestamp 2>/dev/null`
- BLREGRESS_SNAPSHOT=`cat $SNAPSHOT/regress_baseline/timestamp 2>/dev/null`
- if test "$BLREGRESS_SNAPSHOT"; then BLREGRESS_SNAPSHOT=$ROOT/snapshots/$BLREGRESS_SNAPSHOT; fi
- fi
-}
-
-while test $# -gt 0; do
-case $1 in
---clean) CLEAN_BUILD=1 ;;
---src) SRC=$2; shift ;;
---rev) REV=$2; shift ;;
---regress) REGRESS_TEST=1 ;;
---no-accept) ACCEPT_TEST="" ;;
---mail) SEND_MAIL=1 ;;
---tstamp) set_snapshot $2; shift ;;
---snapshot) set_snapshot `cat $2/timestamp`; shift ;;
---last-tstamp) LASTDATE=$2; shift ;;
---build-type) BUILD_TYPE=$2; BUILD=$ROOT/build_$BUILD_TYPE; shift;;
-local) TEST_MODE=local ;;
-server) TEST_MODE=server ;;
-esac
-shift
-done
-
-
-#
-# Compile
-#
-
-do_compile () {
-
-if test $CLEAN_BUILD; then rm -rf build; fi
-
-mkdir -p $BUILD
-nice ./compile > build_log.txt 2>&1 || { ./on_build_failure; exit 1; }
-echo Build succeeded
-
-mkdir -p $SNAPSHOT
-cd $SNAPSHOT
-echo $REV >rev; echo $NOW >timestamp
-touch BUILD_OK
-mv -f $ROOT/build_log.txt $ROOT/svn_log.xml .
-gzip -9 build_log.txt
-
-}
-
-
-#
-# Test
-#
-
-do_acceptance () {
-echo 'Running acceptance tests...'
-
-. $ROOT/load_test_env
-
-(cd $TESTS; tar cf - tests) | tar xf -
-cd tests
-find . -name fixture -exec $ROOT/run_fixture {} \;
-find . -name run -exec $ROOT/run_test {} \;
-cd $SNAPSHOT
-
-#
-# Process test results
-#
-
-$ROOT/process_test_results
-
-(cd test_results; diff -qr acceptance $TESTS/test_results/acceptance | $ROOT/report_acceptance_failure $TESTS >../acceptance_failures.xmlfrag)
-if test -s acceptance_failures.xmlfrag; then
- export ACCEPTANCE_FAILURES=1
- echo Some acceptance tests failed, see $PWD/index.html
-# export COMMITTERS=`echo '//span [@id="committers"]' | $ROOT/xquery -s index.html - | cut -f 2- -d'>' | cut -f1 -d'<'`
- test "x$TEST_MODE" != "xlocal" && echo Committers: $COMMITTERS
-else
- echo 'All acceptance tests passed'
-fi
-
-{ echo '<root>'; cat acceptance_failures.xmlfrag; echo '</root>'; } >acceptance_failures.xml
-rm acceptance_failures.xmlfrag
-
-} # do_acceptance
-
-
-compute_regressions () {
-
-local ref=$1
-local out=$2
-
-(
-echo '<root>'
-$SRC/test/cmp_ctest_logs $ref/ctest/LastTestsFailed.log.gz ctest/LastTestsFailed.log |
-perl -pe 's#^[-](.*)$#<regress><case>$1</case></regress>#g;s#^[+](.*)$#<progress><case>$1</case></progress>#g'
-echo '</root>'
-) >$out
-
-} # compute_regressions
-
-run_ctest () {
- cd $BUILD
- export VALGRIND=onfail
- ctest
- cp -a Testing/Temporary $SNAPSHOT/ctest
- cd $SNAPSHOT
-}
-
-do_regression () {
-
- compute_regressions $ROOT/snapshots/$LASTDATE regressions.xml;
- if test "$BLREGRESS_SNAPSHOT"; then
- compute_regressions $BLREGRESS_SNAPSHOT bl_raw_regressions.xml
- BL_REGRESS_CNT=`egrep '^[<]regress[>]' bl_raw_regressions.xml | wc -l`
- $ROOT/xquery $ROOT/bl_regression_origin.xqy +bl_raw_regress=bl_raw_regressions.xml +bl_prev_regress=$ROOT/snapshots/$LASTDATE/bl_regressions.xml now=$NOW rev=$REV >bl_regressions.xml
- echo $BL_REGRESS_CNT baseline regressions
- if test "$BL_REGRESS_CNT" = "0" -a "$NEW_SNAPSHOT"; then
- rm -f $ROOT/snapshots/regress_baseline
- (cd $ROOT/snapshots; ln -s $NOW regress_baseline)
- echo Snapshot $NOW becomes new regression baseline
- fi
- fi
-
- echo 'Collecting errors...'
- (echo '<pre>'; $SRC/test/collect_ctest_log_errors --html --blame --parse-err <ctest/LastTest.log; echo '</pre>') | perl -pe "s#$SRC/?##g" >errors.xml
-
- echo 'Extracting elapsed times...'
- chmod a+x $SRC/test/ctest_time_elapsed
- cat ctest/LastTest.log | $SRC/test/ctest_time_elapsed | tail -10 | sort | perl -ne 'if (/([0-9:]+) (.*)/) { print "<entry><q>$2</q><t>$1</t></entry>\n" }' | (echo '<root>'; cat; echo '</root>') >worst_times.xml
-
- gzip -9 ctest/*
-}
-
-
-#
-# Main
-#
-
-if test "x$TEST_MODE" = "xlocal"; then
- REV="local"
- test $SRC || SRC=$ROOT/../..
-else
- test $SRC || SRC=$ROOT/src
-fi
-
-mkdir -p snapshots
-test -z "$LASTDATE" -a "$NEW_SNAPSHOT" && LASTDATE=`latest_snapshot`
-if test "$LASTDATE"; then
- LASTREV=`cat snapshots/$LASTDATE/rev`
- BLREV=`cat snapshots/regress_baseline/rev 2>/dev/null`
- BLDATE=`cat snapshots/regress_baseline/timestamp 2>/dev/null`
- echo Last date $LASTDATE, revision $LASTREV
-fi
-if test "$BLREGRESS_SNAPSHOT"; then
- echo "Regress baseline snapshot $BLREGRESS_SNAPSHOT"
-fi
-
-if test "$NEW_SNAPSHOT"; then
-
- test "$REV" || REV='HEAD'
- update_src
- echo Building for snapshot $NOW, revision $REV
-
- . $ROOT/load_test_env
-
- do_compile
- # Compile succeeded.
- # From this point on, the default current directory is $SNAPSHOT
-
- test "$LASTDATE" && ln -s $ROOT/snapshots/$LASTDATE prev
- test "$BLREGRESS_SNAPSHOT" && ln -s $BLREGRESS_SNAPSHOT regress_baseline
-
- # Rewrite "latest" link
- (cd $ROOT/snapshots;
- if test "$LASTDATE"; then cd "$LASTDATE"; rm -f next; ln -s ../$NOW next; cd ..; fi;
- rm -f latest; ln -s `latest_snapshot` latest)
-
- if test -d $TESTS/tests/acceptance -a "x$ACCEPT_TEST" != "x"; then do_acceptance; fi
-
- if test "x$TEST_MODE" = "xserver" -a "x$REGRESS_TEST" != "x"; then
- run_ctest
- fi
-
-else
- cd $SNAPSHOT
- gunzip ctest/* 2>/dev/null || true
-fi # if test $NEW_SNAPSHOT
-
-if test "x$TEST_MODE" = "xserver" -a "x$REGRESS_TEST" != "x"; then
- if test "x$LASTDATE" != "x"; then
- do_regression
- else
- ln -s $SNAPSHOT $ROOT/snapshots/regress_baseline
- fi
-fi
-
-cp $ROOT/report.xqy .
-echo 'Generating report...'
-$ROOT/xquery report.xqy now=$NOW rev=$REV lastdate=$LASTDATE lastrev=$LASTREV blrev=$BLREV bldate=$BLDATE >index.html
-
-if test "x$TEST_MODE" != "xlocal" -a "x$ACCEPTANCE_FAILURES" != "x" -a "x$SEND_MAIL" != "x"; then
- echo 'Sending e-mail to committers.'
- # echo $COMMITTERS | mutt -i $ROOT/acceptance_failure_email_body.txt -s "Zorba testing: acceptance failures" -a index.html `cat $ROOT/error_email.txt`
-fi
=== removed file 'test/zorbatest/load_test_env'
--- test/zorbatest/load_test_env 2013-02-07 17:24:36 +0000
+++ test/zorbatest/load_test_env 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-
-export ZORBA_BUILD_DIR=$BUILD
-
-export ZORBA_EXEC_DIR=$ZORBA_BUILD_DIR/test/
-
-export ZORBA=$ZORBA_EXEC_DIR/apitest
=== removed file 'test/zorbatest/on_build_failure'
--- test/zorbatest/on_build_failure 2013-02-07 17:24:36 +0000
+++ test/zorbatest/on_build_failure 1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-#!/bin/sh
-echo Build failed, see build_log.txt
-if test "x$SEND_MAIL" != "x"; then
- echo Sending e-mail
- # echo "The Zorba build is broken at revision $REV; see attached build log." | mutt -x -s "Zorba build broken" -a build_log.txt `cat $ROOT/error_email.txt`
-fi
=== removed file 'test/zorbatest/process_test_results'
--- test/zorbatest/process_test_results 2013-02-07 17:24:36 +0000
+++ test/zorbatest/process_test_results 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-#!/bin/sh
=== removed file 'test/zorbatest/report.xqy'
--- test/zorbatest/report.xqy 2013-02-07 17:24:36 +0000
+++ test/zorbatest/report.xqy 1970-01-01 00:00:00 +0000
@@ -1,53 +0,0 @@
-declare function local:parse-duration ($d as xs:string) as xs:dayTimeDuration {
- xs:time ($d) - xs:time ("00:00:00")
-};
-
-declare function local:percentage ($n as xs:double) as xs:string {
- concat (string (fn:round ($n * 100)), "%")
-};
-
-declare variable $buildtag external;
-declare variable $now := "RIGHT NOW";
-declare variable $rev := "12345";
-declare variable $tests := fn:doc("./Testing/$buildtag/Test.xml")/Site/Testing/Test;
-declare variable $tests_old := fn:doc("./Testing/PreviousTest.xml")/Site/Testing/Test;
-
-<html>
-<head>
-<title>Integration report for Zorba</title>
-<style>
-table {{ border-collapse: collapse; }}
-td, th {{ border: solid black 1px; padding: 0.5em; }}
-</style>
-</head>
-
-<body>
-
-<h2>About this report</h2>
-
-<p><a href="../{ $now }">This report</a> was created on { $now } for Zorba revision { $rev }.
-</p>
-
-<a name="qtimes"></a>
-<h2>Execution times</h2>
-<table summary="Execution times">
-<tr><th>Query</th><th>Time</th><th>Previous time</th><th>Change</th></tr>
-{
- for $test in $tests
- let $testname := data($test/Name)
- let $qt := data($test/Results/NamedMeasurement[@name eq "Execution Time"]/Value)
- let $test_old := $tests_old[data(Name) eq $testname]
- let $qt_old := data($tests_old/Results/NamedMeasurement[@name eq "Execution Time"]/Value)
- return <tr>
- <td>{$testname}</td>
- <td>{$qt}</td>
- <td>{$qt_old}</td>
- <td>{ let $d := local:parse-duration ($qt) return
- (local:percentage ((local:parse-duration ($qt_old) - $d) div $d),
- "+/-", local:percentage (xs:dayTimeDuration ("PT0.5S") div $d))
- }</td>
-</tr> }
-</table>
-
-</body>
-</html>
=== removed file 'test/zorbatest/report_acceptance_failure'
--- test/zorbatest/report_acceptance_failure 2013-02-07 17:24:36 +0000
+++ test/zorbatest/report_acceptance_failure 1970-01-01 00:00:00 +0000
@@ -1,47 +0,0 @@
-#!/usr/bin/perl
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-use strict;
-use File::Basename;
-
-sub parse_test_file {
- my ($fname) = @_;
- my $fh1;
- open ($fh1, $fname) or die ("$fname not found");
- my $code=chomp $fh1;
- my $text = do { local ($/); <$fh1>; };
-
- return ($code, $text);
-}
-
-sub report_failure {
- my $expected_dir=shift;
- my $test_name=shift;
-
- my $f1="$test_name/result.txt";
- my $f2="$expected_dir/test_results/$test_name/result.txt";
-
- my ($code1, $text1) = parse_test_file ($f1);
- my ($code2, $text2) = parse_test_file ($f2);
-
- print ("<failure test='$test_name'><code><actual>$code1</actual><expected>$code2</expected></code><text><actual>$text1</actual><expected>$text2</expected></text></failure>\n");
-}
-
-my $test_dir = shift;
-while (<>) {
- if (/^Files ([^ ]+) /) {
- report_failure ($test_dir, dirname $1);
- }
-}
=== removed file 'test/zorbatest/run_fixture'
--- test/zorbatest/run_fixture 2013-02-07 17:24:36 +0000
+++ test/zorbatest/run_fixture 1970-01-01 00:00:00 +0000
@@ -1,16 +0,0 @@
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-#!/bin/sh
-
-echo Running fixture $1
=== removed file 'test/zorbatest/run_pending_tests'
--- test/zorbatest/run_pending_tests 2013-02-07 17:24:36 +0000
+++ test/zorbatest/run_pending_tests 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
-#!/bin/sh
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-# To run from inittab:
-#zt:12345:respawn:nice -n -18 /usr/local/src/zorbatest_regressions/run_pending_tests >/var/log/zorbatest 2>&1
-
-cd `dirname $0`
-unalias -a
-export PATH=/usr/local/bin:$PATH
-
-while true; do
- rs=""
- while test -z "$rs"; do sleep 20; rs=`cd totest; ls`; done
- echo Revisions to test: $rs
- for r in $rs; do
- if test -f totest/$r; then
- /etc/init.d/crond stop >/dev/null 2>&1
- while ps ax | grep [r]un-parts; do sleep 30; done
-
- ./integrate --no-accept --rev $r --regress --no-clean server
- rm totest/$r
-
- /etc/init.d/crond start >/dev/null 2>&1
- sleep 180
- fi
- done
-done
=== removed file 'test/zorbatest/run_test'
--- test/zorbatest/run_test 2013-02-07 17:24:36 +0000
+++ test/zorbatest/run_test 1970-01-01 00:00:00 +0000
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-TEST=$1
-DIR=`dirname $TEST`
-echo Running test $TEST
-cd $DIR
-mkdir -p $SNAPSHOT/test_results/$DIR
-TMP=`mktemp /tmp/zorbatest.XXXXXX`
-OUTDIR=$SNAPSHOT/test_results/$DIR
-OUT=$OUTDIR/result.txt
-./`basename $TEST` >$TMP
-{ if test $? -eq 0; then echo SUCCESS; else echo FAILURE; fi; } > $OUT
-cat $TMP >>$OUT
-rm -f $TMP
-
-for f in `find . -type f -o -type l`; do
- test -f $TESTS/tests/$DIR/$f || mv $f $OUTDIR
-done
=== removed file 'test/zorbatest/setup_framework'
--- test/zorbatest/setup_framework 2013-02-07 17:24:36 +0000
+++ test/zorbatest/setup_framework 1970-01-01 00:00:00 +0000
@@ -1,24 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-echo 'Enter saxon location (Cygwin users: use cygwin paths)'
-read sax
-echo '#!/bin/sh' >xquery
-if which cygpath &>/dev/null; then
- JARS=`find $sax/ -name '*.jar'`; echo jars $JARS
- echo 'exec java -cp '"'"`for f in $JARS; do cygpath -w $f; done | tr '\n' ';'`."'"' net.sf.saxon.Query $*' >>xquery
-else
- echo 'exec java -cp '`find $sax/ -name *.jar | tr '\n' :`.' net.sf.saxon.Query -q:$*' >>xquery
-fi
-chmod u+x xquery
=== removed directory 'test/zorbatest/testing'
=== removed directory 'test/zorbatest/testing/test_results'
=== removed directory 'test/zorbatest/testing/test_results/acceptance'
=== removed directory 'test/zorbatest/testing/test_results/acceptance/rbkt'
=== removed file 'test/zorbatest/testing/test_results/acceptance/rbkt/result.txt'
--- test/zorbatest/testing/test_results/acceptance/rbkt/result.txt 2013-02-07 17:24:36 +0000
+++ test/zorbatest/testing/test_results/acceptance/rbkt/result.txt 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-SUCCESS
-
-
-rbkt.sh : number of failed queries = 0
-
=== removed directory 'test/zorbatest/testing/test_results/acceptance/valgrind'
=== removed file 'test/zorbatest/testing/test_results/acceptance/valgrind/result.txt'
--- test/zorbatest/testing/test_results/acceptance/valgrind/result.txt 2013-02-07 17:24:36 +0000
+++ test/zorbatest/testing/test_results/acceptance/valgrind/result.txt 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
-SUCCESS
-NO_ERRORS
=== removed directory 'test/zorbatest/testing/tests'
=== removed directory 'test/zorbatest/testing/tests/acceptance'
=== removed directory 'test/zorbatest/testing/tests/acceptance/rbkt'
=== removed file 'test/zorbatest/testing/tests/acceptance/rbkt/run'
--- test/zorbatest/testing/tests/acceptance/rbkt/run 2013-02-07 17:24:36 +0000
+++ test/zorbatest/testing/tests/acceptance/rbkt/run 1970-01-01 00:00:00 +0000
@@ -1,57 +0,0 @@
-#!/bin/bash
-# Copyright 2006-2008 The FLWOR Foundation.
-#
-# Licensed 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.
-
-#
-# Note: the standard output of this script goes to a temp file, which is then
-# appended to the file:
-#
-# /zorbatest/snapshots/latest/test_results/acceptance/rbkt/result.txt
-#
-
-if [ ! ${zorbaRepos} ]; then
-
- if [ ! ${SRC} ]; then
- echo "ERROR: SRC variable is not set"
- exit 1
- fi
-
- export zorbaRepos=$SRC
-fi
-
-
-if [ ! ${zorbaExecDir} ]; then
-
- if [ ! ${ZORBA_EXEC_DIR} ]; then
- echo "ERROR: ZORBA_EXEC_DIR variable is not set"
- exit 1
- fi
-
- export zorbaExecDir=$ZORBA_EXEC_DIR
-fi
-
-# pwd = /zorbatest/snapshots/latest/tests/acceptance/rbkt/
-
-$zorbaExecDir/rbkt/Scripts/rbkt.sh -b zorba/paths > /dev/null
-
-
-# pwd = /zorbatest/snapshots/latest/tests/acceptance/rbkt/
-
-
-echo
-cat rbkt_summary.txt
-echo
-
-rm -f rbkt_summary.txt
-rm -f query.xml query.dot
=== removed directory 'test/zorbatest/testing/tests/acceptance/valgrind'
=== removed file 'test/zorbatest/testing/tests/acceptance/valgrind/run'
--- test/zorbatest/testing/tests/acceptance/valgrind/run 2013-02-07 17:24:36 +0000
+++ test/zorbatest/testing/tests/acceptance/valgrind/run 1970-01-01 00:00:00 +0000
@@ -1,16 +0,0 @@
-#!/bin/bash
-
-if which valgrind >/dev/null 2>&1; then
- VALGRIND='valgrind --log-file-exactly=valgrind.log'
-else
- VALGRIND=""
- echo "Valgrind not present. 0 errors " >valgrind.log
-fi
-
-if $VALGRIND $ZORBA x.xq &> /dev/null && grep " 0 errors " valgrind.log >& /dev/null; then
- echo NO_ERRORS
-else
- echo ERRORS
-fi
-
-test -f valgrind.log && chmod a+r valgrind.log
=== removed file 'test/zorbatest/testing/tests/acceptance/valgrind/x.xq'
--- test/zorbatest/testing/tests/acceptance/valgrind/x.xq 2013-02-07 17:24:36 +0000
+++ test/zorbatest/testing/tests/acceptance/valgrind/x.xq 1970-01-01 00:00:00 +0000
@@ -1,17 +0,0 @@
-(:
- : Copyright 2006-2009 The FLWOR Foundation.
- :
- : Licensed 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.
-:)
-
-1+2,3*4,(),(5,6),fn:string-length("a")
=== removed file 'test/zorbatest/zorbatest_functions.sh'
--- test/zorbatest/zorbatest_functions.sh 2013-02-07 17:24:36 +0000
+++ test/zorbatest/zorbatest_functions.sh 1970-01-01 00:00:00 +0000
@@ -1,36 +0,0 @@
-latest_snapshot () {
- (cd $ROOT/snapshots; ls -rd *-*-*-*_*_* 2>/dev/null | head -1)
-}
-
-
-#
-# Check out sources
-#
-
-# Mandatory vars: $REV, $SRC
-# Optional vars: $LASTREV
-# Modifies $REV.
-# Creates svn_log.xml
-
-update_src () {
-
-local NEWREV;
-
-if test "x$REV" != "xlocal"; then
- echo 'Updating sources...'
- echo $HOME
- id
- NEWREV=`svn update -r $REV $SRC | perl -ne 'if (/ revision ([0-9]+)\./) { print $1; }'`
- REV=$NEWREV
-
- if test -z $REV; then echo 'Could not update sources'; exit 1; fi
- if test "x$REV" = "x$LASTREV"; then echo No changes, exiting; exit; fi
-fi
-
-rm -f svn_log.xml
-if test "x$LASTREV" != "x" -a "x$REV" != "xlocal" -a "x$REV" != "x$LASTREV"; then
- svn log --xml $SRC -r`expr $LASTREV + 1`:$REV >svn_log.xml
-fi
-test -f svn_log.xml -a -s svn_log.xml || echo '<?xml version="1.0" encoding="UTF-8"?><log />' >svn_log.xml
-
-} # update_src
Follow ups
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: noreply, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Chris Hillery, 2013-05-14
-
Re: [Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Luis Rodriguez Gonzalez, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
Re: [Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Chris Hillery, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
Re: [Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Zorba Build Bot, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Chris Hillery, 2013-05-14
-
Re: [Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Chris Hillery, 2013-05-14
-
[Merge] lp:~zorba-coders/zorba/prune-test-dir into lp:zorba
From: Chris Hillery, 2013-05-14