1# Process with autom4te to create an -*- Autotest -*- test suite.
2
3AT_INIT([dds-test])
4# AT_COPYRIGHT([])
5
6#AT_TESTED([dds-test])
7
8AT_ARG_OPTION_ARG([baselines],
9    [--baselines=yes|no   Build the baseline file for parser test 'arg'],
10    [echo "baselines set to $at_arg_baselines";
11     baselines=$at_arg_baselines],[baselines=])
12
13# Usage: _AT_TEST_*(<dds source>, <baseline file>, [xfail|xpass])
14
15m4_define([_AT_DDS_TEST],
16[
17    # AT_BANNER([Test $1 $2])
18    AT_SETUP([DDS $1])
19    AT_KEYWORDS([dds])
20
21    input=$1
22    baseline=$2
23
24    AS_IF([test -n "$baselines" -a x$baselines = xyes],
25        [
26        # The --baselines=yes option works only for tests that write to stdout
27        AT_CHECK([$abs_builddir/dds-test -p < $input || true], [0], [stdout], [ignore])
28        AT_CHECK([mv stdout $baseline.tmp])
29        ],
30        [
31        # Added '|| true' to ensure the command returns '0'
32        AT_CHECK([$abs_builddir/dds-test -p < $input || true], [0], [stdout], [stderr])
33        # Need to compare either stdout or stderr
34        AT_CHECK([diff -b -B $baseline stdout || diff -b -B $baseline stderr], [0], [ignore])
35        AT_XFAIL_IF([test "$3" = "xfail"])
36        ])
37
38    AT_CLEANUP
39])
40
41m4_define([AT_DDS_RESPONSE_TEST],
42[
43    # AT_BANNER([DDS response for $1.])
44    _AT_DDS_TEST([$abs_srcdir/dds-testsuite/$1], [$abs_srcdir/dds-testsuite/$1.base], $2)
45])
46
47
48AT_DDS_RESPONSE_TEST([3B42.980909.5.hacked.HDF.das.dds])
49AT_DDS_RESPONSE_TEST([3B42.980909.5.HDF.das.dds])
50AT_DDS_RESPONSE_TEST([3B42.980909.5.HDF.dds])
51AT_DDS_RESPONSE_TEST([AsciiOutputTest1.dds])
52AT_DDS_RESPONSE_TEST([fnoc1.nc.das.dds])
53AT_DDS_RESPONSE_TEST([fnoc1.nc.dds])
54AT_DDS_RESPONSE_TEST([S2000415.HDF.das.dds])
55AT_DDS_RESPONSE_TEST([S2000415.HDF.dds])
56AT_DDS_RESPONSE_TEST([test.1.dds])
57AT_DDS_RESPONSE_TEST([test.10.dds])
58AT_DDS_RESPONSE_TEST([test.11.dds])
59AT_DDS_RESPONSE_TEST([test.12.dds])
60AT_DDS_RESPONSE_TEST([test.13.dds])
61AT_DDS_RESPONSE_TEST([test.14.dds])
62AT_DDS_RESPONSE_TEST([test.15.dds])
63AT_DDS_RESPONSE_TEST([test.16.dds])
64AT_DDS_RESPONSE_TEST([test.17.dds])
65AT_DDS_RESPONSE_TEST([test.18.dds])
66AT_DDS_RESPONSE_TEST([test.19.dds])
67AT_DDS_RESPONSE_TEST([test.19b.das.dds])
68AT_DDS_RESPONSE_TEST([test.19b.dds])
69AT_DDS_RESPONSE_TEST([test.2.dds])
70AT_DDS_RESPONSE_TEST([test.20.dds])
71AT_DDS_RESPONSE_TEST([test.3.dds])
72AT_DDS_RESPONSE_TEST([test.4.dds])
73AT_DDS_RESPONSE_TEST([test.6.dds])
74AT_DDS_RESPONSE_TEST([test.7.dds])
75AT_DDS_RESPONSE_TEST([test.8.dds])
76AT_DDS_RESPONSE_TEST([test.9.dds])
77
78# Added these to test zero-length arrays
79
80AT_DDS_RESPONSE_TEST([test.21.dds])
81AT_DDS_RESPONSE_TEST([test.22.dds])
82AT_DDS_RESPONSE_TEST([test.23.dds])
83AT_DDS_RESPONSE_TEST([test.24.dds], [xpass])
84
85# Empty Structures
86AT_DDS_RESPONSE_TEST([test.25.dds], [xpass])
87AT_DDS_RESPONSE_TEST([test.26.dds], [xpass])
88
89