Blame tests/DMRTest.at

Packit a4aae4
# Process with autom4te to create an -*- Autotest -*- test suite.
Packit a4aae4
Packit a4aae4
AT_INIT([dmr-test])
Packit a4aae4
Packit a4aae4
AT_ARG_OPTION_ARG([baselines],
Packit a4aae4
    [--baselines=yes|no   Build the baseline file for parser test 'arg'],
Packit a4aae4
    [echo "baselines set to $at_arg_baselines";
Packit a4aae4
     baselines=$at_arg_baselines],[baselines=])
Packit a4aae4
Packit a4aae4
# There is no easy way to write a --generate... option for the function expression
Packit a4aae4
# tests. Better to do it by hand... Use ... .num.func_base as the extension for the
Packit a4aae4
# baselines.
Packit a4aae4
 
Packit a4aae4
# Usage DMR_PARSE $1 <test_input> $2 <pass/xfail>
Packit a4aae4
# The baseline is assumed to be $1.baseline
Packit a4aae4
m4_define([DMR_PARSE], [
Packit a4aae4
Packit a4aae4
    AT_SETUP([parse $1])
Packit a4aae4
    AT_KEYWORDS([parse])
Packit a4aae4
    
Packit a4aae4
    input=$abs_srcdir/$1
Packit a4aae4
    baseline=$input.baseline
Packit a4aae4
    
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -p $input || true], [], [stdout], [])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -p $input || true], [], [stdout], [stderr])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout || diff -b -B $baseline stderr], [], [ignore],[],[])
Packit a4aae4
        AT_XFAIL_IF([test "$2" = "xfail"])
Packit a4aae4
        ])
Packit a4aae4
    
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_TRANS $1 <test_input> $2 <pass/xfail>
Packit a4aae4
# This code tests the values printed when the received document is decoded.
Packit a4aae4
m4_define([DMR_TRANS], [
Packit a4aae4
    # Test transmitting data (i.e., writing the Data DMR to a file and then decoding it)
Packit a4aae4
    AT_SETUP([trans $1])
Packit a4aae4
    AT_KEYWORDS([trans])
Packit a4aae4
    
Packit a4aae4
    # WORD_ORDER is set by configure in atlocal.
Packit a4aae4
    # This is a fix for the issue where the CRC32 checksum is different
Packit a4aae4
    # on little- and big-endian machines, so we use different baseline
Packit a4aae4
    # files.  jhrg 9/30/15
Packit a4aae4
        
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/$WORD_ORDER/$1.trans_base
Packit a4aae4
    
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input], [0], [stdout], [ignore])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input || true], [], [stdout], [stderr])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout || diff -b -B $baseline stderr], [], [ignore],[],[])
Packit a4aae4
    
Packit a4aae4
        AT_XFAIL_IF([test "$2" = "xfail"])
Packit a4aae4
        ])
Packit a4aae4
        
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_TRANS_UNIVERSAL $1 <test_input> $2 <pass/xfail>
Packit a4aae4
# This code tests the values printed when the received document is decoded.
Packit a4aae4
m4_define([DMR_TRANS_UNIVERSAL], [
Packit a4aae4
    # Test transmitting data (i.e., writing the Data DMR to a file and then decoding it)
Packit a4aae4
    AT_SETUP([trans $1])
Packit a4aae4
    AT_KEYWORDS([trans])
Packit a4aae4
    
Packit a4aae4
    # WORD_ORDER is set by configure in atlocal.
Packit a4aae4
    # This is a fix for the issue where the CRC32 checksum is different
Packit a4aae4
    # on little- and big-endian machines, so we use different baseline
Packit a4aae4
    # files.  jhrg 9/30/15
Packit a4aae4
    
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/universal/$1.trans_base
Packit a4aae4
    
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        echo "The command <>$abs_builddir/dmr-test -x -t $input $checksum_filt<>"
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input | sed 's@<Value>[[0-9a-f]][[0-9a-f]]*</Value>@@' ], [0], [stdout], [ignore])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input | sed 's@<Value>[[0-9a-f]][[0-9a-f]]*</Value>@@' ], [], [stdout], [ignore])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout], [], [ignore],[],[])
Packit a4aae4
    
Packit a4aae4
        AT_XFAIL_IF([test "$2" = "xfail"])
Packit a4aae4
        ])
Packit a4aae4
        
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_TRANS_CE <test_input> <ce> <baseline> <pass/xfail>
Packit a4aae4
# This code tests the values printed when the received document is decoded.
Packit a4aae4
m4_define([DMR_TRANS_CE], [
Packit a4aae4
    # Test transmitting data (i.e., writing the Data DMR to a file and then decoding it)
Packit a4aae4
    # after applying a constraint expression to the source DMR.
Packit a4aae4
    AT_SETUP([trans ce $1 $2 $3])
Packit a4aae4
    AT_KEYWORDS([trans_ce])
Packit a4aae4
    
Packit a4aae4
    # See above regarding $WORD_ORDER
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/$WORD_ORDER/$3
Packit a4aae4
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input -c "$2"], [], [stdout], [])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input -c "$2" || true], [], [stdout], [stderr])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout || diff -b -B $baseline stderr], [], [ignore],[],[])
Packit a4aae4
        AT_XFAIL_IF([test "X$4" = "Xxfail"])
Packit a4aae4
        ])
Packit a4aae4
    
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_TRANS_FUNC_CE <test_input> <func expr> <ce> <baseline> <pass/xfail>
Packit a4aae4
# This code tests the values printed when the received document is decoded.
Packit a4aae4
m4_define([DMR_TRANS_FUNC_CE], [
Packit a4aae4
    # Test transmitting data (i.e., writing the Data DMR to a file and then decoding it)
Packit a4aae4
    # after applying a function and constraint expression to the source DMR. If either
Packit a4aae4
    # the function or constraint are empty strings, they will be ignored.
Packit a4aae4
    AT_SETUP([trans $1 $2 $3 $4])
Packit a4aae4
    AT_KEYWORDS([trans_func_ce])
Packit a4aae4
    
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    fe="$2"
Packit a4aae4
    ce="$3"
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/$WORD_ORDER/$4
Packit a4aae4
    
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input -f "$fe" -c "$ce"], [], [stdout], [])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -t $input -f "$fe" -c "$ce" || true], [], [stdout], [stderr])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout || diff -b -B $baseline stderr], [], [ignore],[],[])
Packit a4aae4
        AT_XFAIL_IF([test "X$5" = "Xxfail"])
Packit a4aae4
        ])
Packit a4aae4
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_TRANS_SERIES_CE <test_input> <ce> <baseline> <pass/xfail>
Packit a4aae4
# This macro tests CEs using the series values from the Test classes.
Packit a4aae4
# It's intended to be used to test the filter expressions.
Packit a4aae4
# 
Packit a4aae4
# This is a 'universal' test - the baselines do not differ for word order
Packit a4aae4
# because the checksums are removed. jhrg 5/5/16
Packit a4aae4
m4_define([DMR_TRANS_SERIES_CE], [
Packit a4aae4
    AT_SETUP([filter $1 $2 $3])
Packit a4aae4
    AT_KEYWORDS([filter])
Packit a4aae4
    
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    ce="$2"
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/universal/$3
Packit a4aae4
    
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -e -t $input -c "$ce" | sed 's@<Value>[[0-9a-f]][[0-9a-f]]*</Value>@@' ], [], [stdout], [])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -e -t $input -c "$ce" | sed 's@<Value>[[0-9a-f]][[0-9a-f]]*</Value>@@' ], [], [stdout], [])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout], [], [ignore],[],[])
Packit a4aae4
        AT_XFAIL_IF([test "X$4" = "Xxfail"])
Packit a4aae4
        ])
Packit a4aae4
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
# Usage DMR_INTERN $1 <test_input> $2 <pass/xfail>
Packit a4aae4
# This code tests the values printed when the received document is decoded.
Packit a4aae4
m4_define([DMR_INTERN], [
Packit a4aae4
    # Test reading/interning data (i.e., using the read() methods to load up objects with
Packit a4aae4
    # values without running them through serialize/deserialize)
Packit a4aae4
    AT_SETUP([intern $1])
Packit a4aae4
    AT_KEYWORDS([intern])
Packit a4aae4
    
Packit a4aae4
    # WORD_ORDER is set by configure in atlocal.
Packit a4aae4
    # This is a fix for the issue where the CRC32 checksum is different
Packit a4aae4
    # on little- and big-endian machines, so we use different baseline
Packit a4aae4
    # files.  jhrg 9/30/15
Packit a4aae4
    input=$abs_srcdir/dmr-testsuite/$1
Packit a4aae4
    baseline=$abs_srcdir/dmr-testsuite/$WORD_ORDER/$1.intern_base
Packit a4aae4
Packit a4aae4
    AS_IF([test -n "$baselines" -a x$baselines = xyes],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -i $input], [], [stdout], [])
Packit a4aae4
        AT_CHECK([mv stdout $baseline.tmp])
Packit a4aae4
        ],
Packit a4aae4
        [
Packit a4aae4
        AT_CHECK([$abs_builddir/dmr-test -x -i $input || true], [], [stdout], [stderr])
Packit a4aae4
        AT_CHECK([diff -b -B $baseline stdout], [], [ignore], [], [])
Packit a4aae4
    
Packit a4aae4
        AT_XFAIL_IF([test "$2" = "xfail"])
Packit a4aae4
        ])
Packit a4aae4
        
Packit a4aae4
    AT_CLEANUP
Packit a4aae4
])
Packit a4aae4
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_1.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_2.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_3.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_3_error_1.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_3_error_2.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_3_error_3.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_4.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_5.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_6.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_7.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_8.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_9.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_9.1.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_10.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_1.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_2.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_3.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_4.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_5.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_6.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_7.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_8.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_10.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_11.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_PARSE([dmr-testsuite/ignore_foreign_xml_1.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/ignore_foreign_xml_2.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/ignore_foreign_xml_3.xml], [pass])
Packit a4aae4
Packit a4aae4
# Transmit: Test building and then decoding the response
Packit a4aae4
# These calls don't include the 'dmr-testsuite' directory because the tests
Packit a4aae4
# need to choose baselines based on the word order. We could probably re-
Packit a4aae4
# organize these so that the dir names where here - which I prefer, but
Packit a4aae4
# the new 'baselines' option makes it far easier to build the baselines, and
Packit a4aae4
# that was the primary reason for keeping the directory names here and explicit;
Packit a4aae4
# it made it much easier to sort out what input to use when building a baseline.
Packit a4aae4
Packit a4aae4
DMR_TRANS([test_simple_1.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_2.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_3.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_4.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_5.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_6.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_7.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_8.xml], [xfail])
Packit a4aae4
DMR_TRANS([test_simple_9.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_9.1.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_10.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS([test_array_1.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_2.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_3.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_4.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_5.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_6.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_7.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_8.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_10.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_11.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_INTERN([test_simple_1.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_2.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_3.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_4.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_5.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_6.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_7.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_8.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_9.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_9.1.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_10.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_INTERN([test_array_1.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_2.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_3.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_4.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_5.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_6.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_7.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_8.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_10.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_11.xml], [pass])
Packit a4aae4
Packit a4aae4
# Test zero-length arrays. jhrg 1/28/16
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_9.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_12.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_13.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_array_14.xml], [pass])
Packit a4aae4
Packit a4aae4
# Test empty Structures. jhrg 1/29/16
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_6.2.xml], [pass])
Packit a4aae4
DMR_PARSE([dmr-testsuite/test_simple_6.3.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS([test_array_9.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_12.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_13.xml], [pass])
Packit a4aae4
DMR_TRANS([test_array_14.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS([test_simple_6.2.xml], [pass])
Packit a4aae4
DMR_TRANS([test_simple_6.3.xml], [pass])
Packit a4aae4
Packit a4aae4
# Test out the 'universal' tests
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_array_9.xml], [pass])
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_array_12.xml], [pass])
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_array_13.xml], [pass])
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_array_14.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_simple_6.2.xml], [pass])
Packit a4aae4
DMR_TRANS_UNIVERSAL([test_simple_6.3.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_INTERN([test_array_9.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_12.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_13.xml], [pass])
Packit a4aae4
DMR_INTERN([test_array_14.xml], [pass])
Packit a4aae4
Packit a4aae4
DMR_INTERN([test_simple_6.2.xml], [pass])
Packit a4aae4
DMR_INTERN([test_simple_6.3.xml], [pass])
Packit a4aae4
Packit a4aae4
# These tests only work for little-endian machines at this time. If baselines for
Packit a4aae4
# big-endian machines are built, this AS_IF can be removed.
Packit a4aae4
Packit a4aae4
# Added these tests as part of https://opendap.atlassian.net/browse/HYRAX-98.
Packit a4aae4
# jhrg 4/13/16
Packit a4aae4
 
Packit a4aae4
AS_IF([test "$WORD_ORDER" = "little-endian"],
Packit a4aae4
[
Packit a4aae4
DMR_TRANS_CE([test_array_3.1.dmr], [row;x], [test_array_3.1.dmr.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_3.1.dmr], [row=[[2:3]];x], [test_array_3.1.dmr.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_3.1.dmr], [row=[[2:3]];x[[0:1]]], [test_array_3.1.dmr.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_3.1.dmr], [x[[0:1]]], [test_array_3.1.dmr.4.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_3.1.dmr], [x], [test_array_3.1.dmr.5.trans_base], [pass])
Packit a4aae4
],
Packit a4aae4
[])
Packit a4aae4
Packit a4aae4
# Test various facets of the CE parser and evaluation engine
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [a], [test_array_4.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [a[[]][[]] ], [test_array_4.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [/row=[[0:1]];/col=[[3]];a],  [test_array_4.xml.3.trans_base], [pass])
Packit a4aae4
    
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [/row=[[0:1]];/col=[[3]];a[[]][[]] ],  [test_array_4.xml.4.trans_base], [pass])
Packit a4aae4
    
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [/row=[[0:1]];/col=[[3]];a[[]][[]];b[[0]][[]];c[[0:]][[0:]] ],  [test_array_4.xml.5.trans_base], [pass])
Packit a4aae4
    
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [x[[]][[]] ], [/test_array_4.xml.6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [/row=[[0:1]];x[[]][[]] ], [test_array_4.xml.7.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_4.xml], [c[[2:]][[2:]] ], [test_array_4.xml.8.trans_base], [pass])
Packit a4aae4
    
Packit a4aae4
DMR_TRANS_CE([test_simple_6.xml], [s], [test_simple_6.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.xml], [s.i1], [test_simple_6.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.xml], [s.s], [test_simple_6.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.1.xml], [s.inner.i2], [test_simple_6.1.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_simple_6.xml], [s{i1}], [test_simple_6.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.xml], [s{s}], [test_simple_6.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.1.xml], [s{inner.i2}], [test_simple_6.1.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_6.1.xml], [s{inner{i2}}], [test_simple_6.1.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_6 holds a 2D array of Structure
Packit a4aae4
DMR_TRANS_CE([test_array_6.xml], [a], [test_array_6.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.xml], [a[[]][[]] ], [test_array_6.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.xml], [/row=[[0:1]];a[[]][[]] ], [test_array_6.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.xml], [/row=[[0:1]];a[[]][[1:2]] ], [test_array_6.xml.3.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array holds a Structure that has a 2D array for a field
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a], [test_array_6.2.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a{i;j}], [test_array_6.2.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a.i], [test_array_6.2.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a{i}], [test_array_6.2.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a.i[[0]][[1:2]] ], [test_array_6.2.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a{i[[0]][[1:2]]} ], [test_array_6.2.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [/row=[[0:1]];a.i[[]][[1:2]] ], [test_array_6.2.xml.4.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [/row=[[0:1]];a{i[[]][[1:2]]} ], [test_array_6.2.xml.4.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_6.2.xml], [a.j], [test_array_6.2.xml.5.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_6.1 is an array of Structure that holds an array and a scalar
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [a], [test_array_6.1.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# slice the structure but not the field
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [/row=[[1:2]];a[[]][[0]] ], [test_array_6.1.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [/row=[[1:2]];a[[]][[0]]{i;j} ], [test_array_6.1.xml.2.trans_base], [pass])
Packit a4aae4
# Do we really need the FQN?
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [row=[[1:2]];a[[]][[0]]{i;j} ], [test_array_6.1.xml.2.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# slice the field but not the structure
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [a{i[[1:2]][[1:3]];j} ], [test_array_6.1.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [a[[]][[]]{i[[1:2]][[1:3]];j} ], [test_array_6.1.xml.3.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# slice both the structure and the array it contains using both the shared dim and 
Packit a4aae4
# a local slice for each
Packit a4aae4
DMR_TRANS_CE([test_array_6.1.xml], [/row=[[1]];a[[]][[0]]{i[[]][[0:1]]} ], [test_array_6.1.xml.4.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# Test sequences and arrays of sequences
Packit a4aae4
DMR_TRANS_CE([test_simple_7.xml], [s], [test_simple_7.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_7.xml], [s{i1;s}], [test_simple_7.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_simple_7.xml], [s.i1], [test_simple_7.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_simple_7.xml], [s{i1}], [test_simple_7.xml.2.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_simple_8.xml], [outer], [test_simple_8.xml.1.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_CE([test_simple_8.xml], [outer.s.s], [test_simple_8.xml.2.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_CE([test_simple_8.xml], [outer{s{s}}], [test_simple_8.xml.2.trans_base], [xfail])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s], [test_array_7.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s{i1;s}], [test_array_7.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s.i1], [test_array_7.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s{i1}], [test_array_7.xml.2.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s[[1]] ], [test_array_7.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s[[1]]{i1;s}], [test_array_7.xml.3.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.xml], [s[[1]]{i1}], [test_array_7.xml.4.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_8 has a 2D Sequence that uses a shared dim
Packit a4aae4
DMR_TRANS_CE([test_array_8.xml], [/col=[[1:2]];s[[1]][[]]{i1}], [test_array_8.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_8.xml], [col=[[1:2]];s[[1]][[]]{i1}], [test_array_8.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_7.1 holds a sequence that has an array for one of its fields
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [], [test_array_7.1.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s], [test_array_7.1.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s.i1], [test_array_7.1.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s.i1[[]][[]] ], [test_array_7.1.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s{i1}], [test_array_7.1.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s{i1[[]][[]]} ], [test_array_7.1.xml.2.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s.i1[[0]][[0]] ], [test_array_7.1.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s{i1[[0]][[0]]} ], [test_array_7.1.xml.3.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [s.i1[[0:2]][[1:2]] ], [test_array_7.1.xml.4.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# Should this CE be supported? jhrg 12/23/13
Packit a4aae4
# DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]] ], [test_array_7.1.xml.5.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]];s ], [test_array_7.1.xml.5.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]];s.i1 ], [test_array_7.1.xml.6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]];s.i1[[]][[]] ], [test_array_7.1.xml.6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]];s{i1} ], [test_array_7.1.xml.6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.1.xml], [/row=[[2:3]];/col=[[2:3]];s{i1[[]][[]]} ], [test_array_7.1.xml.6.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_7.2 is a sequence array that holds an array as one of its fields
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[]]{i1}], [test_array_7.2.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[]]{i1[[]][[]]}], [test_array_7.2.xml.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s{i1[[]][[]]}], [test_array_7.2.xml.1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[]]{i1[[0]][[]]}], [test_array_7.2.xml.2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s{i1[[0]][[]]}], [test_array_7.2.xml.2.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[0]]{i1}], [test_array_7.2.xml.3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[0]]{i1[[]][[]]}], [test_array_7.2.xml.3.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_CE([test_array_7.2.xml], [/col=[[1:2]];s[[0]]{i1[[0]][[]]}], [test_array_7.2.xml.4.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# Test the function parser and evaluator. The function 'scale' is defined 
Packit a4aae4
# for both DAP2 and DAP4 in D4TestFunction.cc/h
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,1)], [], [test_array_1.xml.1.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,10)], [], [test_array_1.xml.2.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,-10)], [], [test_array_1.xml.3.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,0.001)], [], [test_array_1.xml.4.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,-0.001)], [], [test_array_1.xml.5.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Test the largest signed int64 value (it will be stored in a D4RValue that 
Packit a4aae4
# holds a Int64 variable).
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,0x7fffffffffffffff)], [], [test_array_1.xml.6.func_base], [pass])
Packit a4aae4
# This only fits in a unsigned long long (DAP4's UInt64)
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_1.xml], [scale(x,0x8fffffffffffffff)], [], [test_array_1.xml.7.func_base], [pass])
Packit a4aae4
Packit a4aae4
# test_array_5 has 64 bit ints in c and d; a and b are Int8 and UInt8 types
Packit a4aae4
# all of these test arrays that use named dimensions
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_5.xml], [scale(a,0.001)], [], [test_array_5.xml.1.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_5.xml], [scale(b,0.001)], [], [test_array_5.xml.2.func_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_5.xml], [scale(c,0.001)], [], [test_array_5.xml.3.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([test_array_5.xml], [scale(d,0.001)], [], [test_array_5.xml.4.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Use the vol_1_ce_* datasets for tests
Packit a4aae4
Packit a4aae4
# Test using variables for source values and functional composition
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(u,10)], [], [vol_1_ce_1.xml.1.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(u,v)], [], [vol_1_ce_1.xml.2.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(scale(u,10),0.01)], [], [vol_1_ce_1.xml.3.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Test name parsing for Structure members
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(Point.x,10)], [], [vol_1_ce_1.xml.4.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(Point.x,Point.y)], [], [vol_1_ce_1.xml.5.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(scale(Point.x,10),0.01)], [], [vol_1_ce_1.xml.6.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Test the 'array constant' special form (we need a dataset only because the parser needs a DMR to run)
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Byte(20:1,2,3,4),10)], [], [vol_1_ce_1.xml.7.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Int8(20:10,11,12,-9),10)], [], [vol_1_ce_1.xml.8.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$UInt16(20:1,2,3,4),10)], [], [vol_1_ce_1.xml.9.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Int16(20:1,2,3,-4),10)], [], [vol_1_ce_1.xml.10.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$UInt32(20:1,2,3,4),10)], [], [vol_1_ce_1.xml.11.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Int32(20:1,2,3,-4),10)], [], [vol_1_ce_1.xml.12.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$UInt64(20:1,2,3,0xffffffffffffffff),1)], [], [vol_1_ce_1.xml.13.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Int64(20:1,2,3,0x7fffffffffffffff),1)], [], [vol_1_ce_1.xml.14.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Float32(20:1,2,3,4.55),10)], [], [vol_1_ce_1.xml.15.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_1.xml], [scale(\$Float64(20:1,2,3,4.55),10)], [], [vol_1_ce_1.xml.16.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Test a sequence of function calls and the application of a Constraint to 
Packit a4aae4
# a function result
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_10.xml], [scale(lat,10)], [], [vol_1_ce_10.xml.1.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_10.xml], [scale(lat,10);scale(lon,10)], [], [vol_1_ce_10.xml.2.func_base], [pass])
Packit a4aae4
DMR_TRANS_FUNC_CE([vol_1_ce_10.xml], [scale(lat,10);scale(lon,10)], [lat[[10:11]][[10:11]];lon[[10:11]][[10:11]]], [vol_1_ce_10.xml.3.func_base], [pass])
Packit a4aae4
Packit a4aae4
# Tests added for the D4Sequence filter support. jhrg 4/28/16
Packit a4aae4
# These will be 'universal' tests (the idea was introduced on the 
Packit a4aae4
# master branch and tested out up above. See the calls to 
Packit a4aae4
# DMR_TRANS_UNIVERSAL jhrg 5/5/16
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s], [test_simple_7.xml.f.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1==1024], [test_simple_7.xml.f1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1!=1024], [test_simple_7.xml.f2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1<=1024], [test_simple_7.xml.f3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1<1024], [test_simple_7.xml.f4.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1<=1024], [test_simple_7.xml.f5.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1>1024], [test_simple_7.xml.f6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1>=1024], [test_simple_7.xml.f7.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|1024
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|1024<=i1<=32768], [test_simple_7.xml.f9.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|i1>=1024.0], [test_simple_7.xml.fa.trans_base], [pass])
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s==\"Silly test string: 2\"], [test_simple_7.xml.fs1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s!=\"Silly test string: 2\"], [test_simple_7.xml.fs2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s<\"Silly test string: 2\"], [test_simple_7.xml.fs3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s<=\"Silly test string: 2\"], [test_simple_7.xml.fs4.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s>\"Silly test string: 2\"], [test_simple_7.xml.fs5.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s>=\"Silly test string: 2\"], [test_simple_7.xml.fs6.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s|s~=\".*2\"], [test_simple_7.xml.fs7.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# Test filtering a sequence that has only one field projected, including filtering on the values
Packit a4aae4
# of a filed not projected.
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s{i1}|i1<32768], [test_simple_7.xml.g1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_7.xml], [s{i1}|s<=\"Silly test string: 2\"], [test_simple_7.xml.g1.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# A nested sequence with flots in the outer sequence and the int, string combination in the inner
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_8.1.xml], [outer], [test_simple_8.1.xml.f1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_8.1.xml], [outer{x;y}], [test_simple_8.1.xml.f2.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_8.1.xml], [outer{x;y;inner}], [test_simple_8.1.xml.f3.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_8.1.xml], [outer{x;y;inner|i1<1000}], [test_simple_8.1.xml.f4.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([test_simple_8.1.xml], [outer{x;y;inner|i1<1000}|x<0.0], [test_simple_8.1.xml.f5.trans_base], [pass])
Packit a4aae4
Packit a4aae4
# These tests are regression tests for bug Hyrax-267. Spaces in variables names
Packit a4aae4
# broke the DAP4 CE parser
Packit a4aae4
Packit a4aae4
# These mostly fail because thee's a second bug where the variables in a group are 
Packit a4aae4
# not printing values. 
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces.dmr], [/u], [names_with_spaces.dmr.1.trans_base], [pass])
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces.dmr], [/inst2/u], [names_with_spaces.dmr.2.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces.dmr], [/inst2/Point.x], [names_with_spaces.dmr.3.trans_base], [xfail])
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces2.dmr], [/inst2/\"Point Break\".x], [names_with_spaces2.dmr.1.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces2.dmr], [/inst2/Point%20Break.x], [names_with_spaces2.dmr.1.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces2.dmr], [/inst2/\"Point%20Break\".x], [names_with_spaces2.dmr.1.trans_base], [xfail])
Packit a4aae4
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces3.dmr], [/inst2/\"New Group\"/x], [names_with_spaces3.dmr.1.trans_base], [xfail])
Packit a4aae4
DMR_TRANS_SERIES_CE([names_with_spaces3.dmr], [/inst2/New%20Group/x], [names_with_spaces3.dmr.1.trans_base], [xfail])