|
@@ -19,8 +19,6 @@
|
|
|
|
|
|
#include <exceptions/exceptions.h>
|
|
|
|
|
|
-#include <dns/name.h>
|
|
|
-
|
|
|
#include <gtest/gtest.h>
|
|
|
|
|
|
#include <boost/shared_ptr.hpp>
|
|
@@ -30,7 +28,6 @@
|
|
|
|
|
|
using std::string;
|
|
|
|
|
|
-using isc::dns::Name;
|
|
|
using namespace isc::datasrc;
|
|
|
using namespace isc::datasrc::test;
|
|
|
|
|
@@ -44,68 +41,20 @@ createSQLite3Accessor() {
|
|
|
if (std::system(install_cmd) != 0) {
|
|
|
// any exception will do, this is failure in test setup, but nice
|
|
|
// to show the command that fails, and shouldn't be caught
|
|
|
- isc_throw(isc::Exception,
|
|
|
+ isc_throw(isc::Unexpected,
|
|
|
"Error setting up; command failed: " << install_cmd);
|
|
|
}
|
|
|
|
|
|
boost::shared_ptr<DatabaseAccessor> accessor(
|
|
|
new SQLite3Accessor(TEST_DATA_BUILDDIR "/rwtest.sqlite3.copied",
|
|
|
"IN"));
|
|
|
-
|
|
|
- accessor->startUpdateZone("example.org.", true);
|
|
|
- string columns[DatabaseAccessor::ADD_COLUMN_COUNT];
|
|
|
- for (int i = 0; TEST_RECORDS[i][0] != NULL; ++i) {
|
|
|
- columns[DatabaseAccessor::ADD_NAME] = TEST_RECORDS[i][0];
|
|
|
- columns[DatabaseAccessor::ADD_REV_NAME] =
|
|
|
- Name(columns[DatabaseAccessor::ADD_NAME]).reverse().toText();
|
|
|
- columns[DatabaseAccessor::ADD_TYPE] = TEST_RECORDS[i][1];
|
|
|
- columns[DatabaseAccessor::ADD_TTL] = TEST_RECORDS[i][2];
|
|
|
- columns[DatabaseAccessor::ADD_SIGTYPE] = TEST_RECORDS[i][3];
|
|
|
- columns[DatabaseAccessor::ADD_RDATA] = TEST_RECORDS[i][4];
|
|
|
-
|
|
|
- accessor->addRecordToZone(columns);
|
|
|
- }
|
|
|
- // We don't add NSEC3s until we are explicitly told we need them
|
|
|
- // in enableNSEC3(); these would break some non NSEC3 tests.
|
|
|
- accessor->commit();
|
|
|
+ loadTestDataGeneric(*accessor);
|
|
|
|
|
|
return (accessor);
|
|
|
}
|
|
|
|
|
|
-void
|
|
|
-sqlite3EnableNSEC3(DatabaseAccessor& accessor) {
|
|
|
- accessor.startUpdateZone("example.org.", false);
|
|
|
-
|
|
|
- // Add NSECPARAM at the zone origin
|
|
|
- for (int i = 0; TEST_NSEC3PARAM_RECORDS[i][0] != NULL; ++i) {
|
|
|
- const string param_columns[DatabaseAccessor::ADD_COLUMN_COUNT] = {
|
|
|
- TEST_NSEC3PARAM_RECORDS[i][0], // name
|
|
|
- Name(param_columns[DatabaseAccessor::ADD_NAME]).reverse().toText(),
|
|
|
- // revname
|
|
|
- TEST_NSEC3PARAM_RECORDS[i][2], // TTL
|
|
|
- TEST_NSEC3PARAM_RECORDS[i][1], // RR type
|
|
|
- TEST_NSEC3PARAM_RECORDS[i][3], // sigtype
|
|
|
- TEST_NSEC3PARAM_RECORDS[i][4] }; // RDATA
|
|
|
- accessor.addRecordToZone(param_columns);
|
|
|
- }
|
|
|
-
|
|
|
- // Add NSEC3s
|
|
|
- for (int i = 0; TEST_NSEC3_RECORDS[i][0] != NULL; ++i) {
|
|
|
- const string nsec3_columns[DatabaseAccessor::ADD_NSEC3_COLUMN_COUNT] =
|
|
|
- {
|
|
|
- Name(TEST_NSEC3_RECORDS[i][0]).split(0, 1).toText(true),
|
|
|
- TEST_NSEC3_RECORDS[i][2], // TTL
|
|
|
- TEST_NSEC3_RECORDS[i][1], // RR type
|
|
|
- TEST_NSEC3_RECORDS[i][4] // RDATA
|
|
|
- };
|
|
|
- accessor.addNSEC3RecordToZone(nsec3_columns);
|
|
|
- }
|
|
|
-
|
|
|
- accessor.commit();
|
|
|
-}
|
|
|
-
|
|
|
const DatabaseClientTestParam sqlite3_param = { createSQLite3Accessor,
|
|
|
- sqlite3EnableNSEC3 };
|
|
|
+ enableNSEC3Generic };
|
|
|
|
|
|
INSTANTIATE_TEST_CASE_P(SQLite3, DatabaseClientTest,
|
|
|
::testing::Values(&sqlite3_param));
|