|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// -*- mode: c++; c-basic-offset:4 -*-
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// This file is part of libdap, A C++ implementation of the OPeNDAP Data
|
|
Packit |
a4aae4 |
// Access Protocol.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// Copyright (c) 2003 OPeNDAP, Inc.
|
|
Packit |
a4aae4 |
// Author: James Gallagher <jgallagher@opendap.org>
|
|
Packit |
a4aae4 |
//
|
|
Packit |
a4aae4 |
// This library is free software; you can redistribute it and/or
|
|
Packit |
a4aae4 |
// modify it under the terms of the GNU Lesser General Public
|
|
Packit |
a4aae4 |
// License as published by the Free Software Foundation; either
|
|
Packit |
a4aae4 |
// version 2.1 of the License, or (at your option) any later version.
|
|
Packit |
a4aae4 |
//
|
|
Packit |
a4aae4 |
// This library is distributed in the hope that it will be useful,
|
|
Packit |
a4aae4 |
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
a4aae4 |
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
a4aae4 |
// Lesser General Public License for more details.
|
|
Packit |
a4aae4 |
//
|
|
Packit |
a4aae4 |
// You should have received a copy of the GNU Lesser General Public
|
|
Packit |
a4aae4 |
// License along with this library; if not, write to the Free Software
|
|
Packit |
a4aae4 |
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
Packit |
a4aae4 |
//
|
|
Packit |
a4aae4 |
// You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
// Tests for the AISMerge class.
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include <cppunit/TextTestRunner.h>
|
|
Packit |
a4aae4 |
#include <cppunit/extensions/TestFactoryRegistry.h>
|
|
Packit |
a4aae4 |
#include <cppunit/extensions/HelperMacros.h>
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
//#define DODS_DEBUG
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include "Connect.h"
|
|
Packit |
a4aae4 |
#include "AISMerge.h"
|
|
Packit |
a4aae4 |
#include "debug.h"
|
|
Packit |
a4aae4 |
#include <test_config.h>
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
#include "testFile.h"
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
using namespace CppUnit;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
namespace libdap
|
|
Packit |
a4aae4 |
{
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
class AISMergeTest:public TestFixture {
|
|
Packit |
a4aae4 |
private:
|
|
Packit |
a4aae4 |
AISMerge * ais_merge;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
static string fnoc1, fnoc2, fnoc3, bears, coads, three_fnoc;
|
|
Packit |
a4aae4 |
static string fnoc1_ais, fnoc2_ais, digit_ais, fnoc3_das;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
static string fnoc1_ais_string, bears_1_ais_string, coads_ais_string;
|
|
Packit |
a4aae4 |
static string fnoc1_merge_ais, fnoc2_merge_ais, fnoc3_merge_ais;
|
|
Packit |
a4aae4 |
static string three_fnoc_merge_ais, starts_with_number_ais_string;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string dump2string(FILE * res) {
|
|
Packit |
a4aae4 |
string stuff = "";
|
|
Packit |
a4aae4 |
char line[256];
|
|
Packit |
a4aae4 |
while (!feof(res) && !ferror(res)
|
|
Packit |
a4aae4 |
&& fgets(&line[0], 256, res) != 0)
|
|
Packit |
a4aae4 |
stuff += line;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
return stuff;
|
|
Packit |
a4aae4 |
} public:
|
|
Packit |
a4aae4 |
AISMergeTest() {
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
~AISMergeTest() {
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
void setUp() {
|
|
Packit |
a4aae4 |
ais_merge = new AISMerge("ais_testsuite/ais_database.xml");
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
void tearDown() {
|
|
Packit |
a4aae4 |
delete ais_merge;
|
|
Packit |
a4aae4 |
ais_merge = 0;
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
CPPUNIT_TEST_SUITE(AISMergeTest);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
CPPUNIT_TEST(get_ais_resource_test);
|
|
Packit |
a4aae4 |
CPPUNIT_TEST(merge_test);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
CPPUNIT_TEST_SUITE_END();
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
void get_ais_resource_test() {
|
|
Packit |
a4aae4 |
try {
|
|
Packit |
a4aae4 |
ResourceVector rv = ais_merge->d_ais_db.get_resource(fnoc1);
|
|
Packit |
a4aae4 |
Response *res = ais_merge->get_ais_resource(rv[0].get_url());
|
|
Packit |
a4aae4 |
string stuff = dump2string(res->get_stream());
|
|
Packit |
a4aae4 |
DBG(cerr << "AIS Resource: " << stuff << endl);
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(stuff.find(fnoc1_ais_string)
|
|
Packit |
a4aae4 |
!= string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
rv = ais_merge->d_ais_db.get_resource(coads);
|
|
Packit |
a4aae4 |
res = ais_merge->get_ais_resource(rv[0].get_url());
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(dump2string(res->get_stream()).
|
|
Packit |
a4aae4 |
find(coads_ais_string)
|
|
Packit |
a4aae4 |
!= string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
rv = ais_merge->d_ais_db.get_resource(three_fnoc);
|
|
Packit |
a4aae4 |
res = ais_merge->get_ais_resource(rv[0].get_url());
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(dump2string(res->get_stream()).
|
|
Packit |
a4aae4 |
find(starts_with_number_ais_string)
|
|
Packit |
a4aae4 |
!= string::npos);
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
catch(Error & e) {
|
|
Packit |
a4aae4 |
cerr << "Error: " << e.get_error_message() << endl;
|
|
Packit |
a4aae4 |
// If the exception is Not Found then this is not an error; there
|
|
Packit |
a4aae4 |
// are many reasons why the resource might not be found...
|
|
Packit |
a4aae4 |
if (e.get_error_message().find("Not Found:") == string::npos)
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(!"Error");
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
void merge_test() {
|
|
Packit |
a4aae4 |
try {
|
|
Packit |
a4aae4 |
Connect *conn;
|
|
Packit |
a4aae4 |
DAS das;
|
|
Packit |
a4aae4 |
string sof;
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
conn = new Connect(fnoc1); // test overwrite (default)
|
|
Packit |
a4aae4 |
conn->request_das(das);
|
|
Packit |
a4aae4 |
ais_merge->merge(fnoc1, das);
|
|
Packit |
a4aae4 |
FILE2string(sof, of, das.print(of));
|
|
Packit |
a4aae4 |
DBG(cerr << "Merged fnoc1 DAS: " << sof << endl);
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(sof.find(fnoc1_merge_ais) != string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
delete conn;
|
|
Packit |
a4aae4 |
conn = 0;
|
|
Packit |
a4aae4 |
das.erase();
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
conn = new Connect(fnoc2); // test replace
|
|
Packit |
a4aae4 |
conn->request_das(das);
|
|
Packit |
a4aae4 |
ais_merge->merge(fnoc2, das);
|
|
Packit |
a4aae4 |
FILE2string(sof, of, das.print(of));
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(sof.find(fnoc2_merge_ais) != string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
delete conn;
|
|
Packit |
a4aae4 |
conn = 0;
|
|
Packit |
a4aae4 |
das.erase();
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
conn = new Connect(fnoc3); // test fallback
|
|
Packit |
a4aae4 |
conn->request_das(das); // with a non-empty das, nothing happens
|
|
Packit |
a4aae4 |
ais_merge->merge(fnoc3, das);
|
|
Packit |
a4aae4 |
FILE2string(sof, of, das.print(of));
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(sof.find(fnoc3_das) != string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
das.erase(); // empty das, should add attributes
|
|
Packit |
a4aae4 |
ais_merge->merge(fnoc3, das);
|
|
Packit |
a4aae4 |
FILE2string(sof, of, das.print(of));
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(sof.find(fnoc3_merge_ais) != string::npos);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
conn = new Connect(three_fnoc); // test regexp
|
|
Packit |
a4aae4 |
conn->request_das(das); // with a non-empty das, nothing happens
|
|
Packit |
a4aae4 |
ais_merge->merge(three_fnoc, das);
|
|
Packit |
a4aae4 |
FILE2string(sof, of, das.print(of));
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(sof.find(three_fnoc_merge_ais)
|
|
Packit |
a4aae4 |
!= string::npos);
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
catch(Error & e) {
|
|
Packit |
a4aae4 |
cerr << "Error: " << e.get_error_message() << endl;
|
|
Packit |
a4aae4 |
if (e.get_error_message().find("Not Found:") == string::npos)
|
|
Packit |
a4aae4 |
CPPUNIT_ASSERT(!"Error");
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
};
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc1 =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/fnoc1.nc";
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc2 =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/fnoc2.nc";
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc3 =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/fnoc3.nc";
|
|
Packit |
a4aae4 |
string AISMergeTest::bears =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/bears.nc";
|
|
Packit |
a4aae4 |
string AISMergeTest::coads =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/coads_climatology.nc";
|
|
Packit |
a4aae4 |
string AISMergeTest::three_fnoc =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/opendap/data/nc/3fnoc.nc";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc1_ais =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/ais/fnoc1.nc.das";
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc2_ais =
|
|
Packit |
a4aae4 |
"http://test.opendap.org/ais/fnoc2.nc.das";
|
|
Packit |
a4aae4 |
string AISMergeTest::digit_ais = (string)TEST_SRC_DIR + "/ais_testsuite/starts_with_number.das";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc1_ais_string = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String DODS_Name \"UWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String DODS_Name \"VWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::bears_1_ais_string = "Attributes {\n\
|
|
Packit |
a4aae4 |
bears {\n\
|
|
Packit |
a4aae4 |
String longname \"Test data\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::coads_ais_string = "Attributes {\n\
|
|
Packit |
a4aae4 |
COADSX {\n\
|
|
Packit |
a4aae4 |
String long_name \"Longitude\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::starts_with_number_ais_string = "Attributes {\n\
|
|
Packit |
a4aae4 |
NC_GLOBAL {\n\
|
|
Packit |
a4aae4 |
String AIS_Test_info \"This dataset's name starts with a digit.\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc3_das = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Vector wind eastward component\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Vector wind northward component\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lat {\n\
|
|
Packit |
a4aae4 |
String units \"degree North\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lon {\n\
|
|
Packit |
a4aae4 |
String units \"degree East\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
time {\n\
|
|
Packit |
a4aae4 |
String units \"hours from base_time\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
NC_GLOBAL {\n\
|
|
Packit |
a4aae4 |
String base_time \"88-245-00:00:00\";\n\
|
|
Packit |
a4aae4 |
String title \" FNOC UV wind components from 1988-245 to 1988-247.\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
DODS_EXTRA {\n\
|
|
Packit |
a4aae4 |
String Unlimited_Dimension \"time_a\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc1_merge_ais = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Vector wind eastward component\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
String DODS_Name \"UWind\", \"UWind\";\n\
|
|
Packit |
a4aae4 |
Byte b 128;\n\
|
|
Packit |
a4aae4 |
Int32 i 32000;\n\
|
|
Packit |
a4aae4 |
Url WOA01 \"http://localhost/junk\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Vector wind northward component\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
String DODS_Name \"VWind\", \"VWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lat {\n\
|
|
Packit |
a4aae4 |
String units \"degree North\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lon {\n\
|
|
Packit |
a4aae4 |
String units \"degree East\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
time {\n\
|
|
Packit |
a4aae4 |
String units \"hours from base_time\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
NC_GLOBAL {\n\
|
|
Packit |
a4aae4 |
String base_time \"88- 10-00:00:00\";\n\
|
|
Packit |
a4aae4 |
String title \" FNOC UV wind components from 1988- 10 to 1988- 13.\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
DODS_EXTRA {\n\
|
|
Packit |
a4aae4 |
String Unlimited_Dimension \"time_a\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc2_merge_ais = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"UWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String long_name \"VWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lat {\n\
|
|
Packit |
a4aae4 |
String units \"degree North\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Latitude\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lon {\n\
|
|
Packit |
a4aae4 |
String units \"degree East\";\n\
|
|
Packit |
a4aae4 |
String long_name \"Longitude\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
time {\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
NC_GLOBAL {\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
DODS_EXTRA {\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::fnoc3_merge_ais = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String long_name \"UWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String long_name \"VWind\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lat {\n\
|
|
Packit |
a4aae4 |
String long_name \"Latitude\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lon {\n\
|
|
Packit |
a4aae4 |
String long_name \"Longitude\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
string AISMergeTest::three_fnoc_merge_ais = "Attributes {\n\
|
|
Packit |
a4aae4 |
u {\n\
|
|
Packit |
a4aae4 |
String long_name \"UWind\", \"Vector wind eastward component\";\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
v {\n\
|
|
Packit |
a4aae4 |
String long_name \"VWind\", \"Vector wind northward component\";\n\
|
|
Packit |
a4aae4 |
String units \"meter per second\";\n\
|
|
Packit |
a4aae4 |
String missing_value \"-32767\";\n\
|
|
Packit |
a4aae4 |
String scale_factor \"0.005\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lat {\n\
|
|
Packit |
a4aae4 |
String long_name \"Latitude\";\n\
|
|
Packit |
a4aae4 |
String units \"degree North\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
lon {\n\
|
|
Packit |
a4aae4 |
String long_name \"Longitude\";\n\
|
|
Packit |
a4aae4 |
String units \"degree East\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
time {\n\
|
|
Packit |
a4aae4 |
String units \"hours from base_time\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
NC_GLOBAL {\n\
|
|
Packit |
a4aae4 |
String base_time \"88-245-00:00:00\";\n\
|
|
Packit |
a4aae4 |
String title \" FNOC UV wind components from 1988-245 to 1988-247.\";\n\
|
|
Packit |
a4aae4 |
String AIS_Test_info \"This dataset's name starts with a digit.\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
DODS_EXTRA {\n\
|
|
Packit |
a4aae4 |
String Unlimited_Dimension \"time_a\";\n\
|
|
Packit |
a4aae4 |
}\n\
|
|
Packit |
a4aae4 |
}";
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
CPPUNIT_TEST_SUITE_REGISTRATION(AISMergeTest);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
} // namespace libdap
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
int main(int, char **)
|
|
Packit |
a4aae4 |
{
|
|
Packit |
a4aae4 |
CppUnit::TextTestRunner runner;
|
|
Packit |
a4aae4 |
runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest());
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
bool wasSuccessful = runner.run("", false);
|
|
Packit |
a4aae4 |
|
|
Packit |
a4aae4 |
return wasSuccessful ? 0 : 1;
|
|
Packit |
a4aae4 |
}
|
|
Packit |
a4aae4 |
|