[svn] commit: r120 - in /branches/f2f200910: ./ src/lib/dns/
BIND 10 source code commits
bind10-changes at lists.isc.org
Tue Oct 27 01:47:31 UTC 2009
Author: jinmei
Date: Tue Oct 27 01:47:31 2009
New Revision: 120
Log:
ported minimal set of RR-related API for rapid prototyping and some test cases.
Added:
branches/f2f200910/src/lib/dns/rrset.cc
branches/f2f200910/src/lib/dns/rrset.h
Modified:
branches/f2f200910/configure
branches/f2f200910/configure.ac
branches/f2f200910/src/lib/dns/Makefile.am
branches/f2f200910/src/lib/dns/Makefile.in
branches/f2f200910/src/lib/dns/buffer.h
branches/f2f200910/src/lib/dns/name.cc
branches/f2f200910/src/lib/dns/name.h
branches/f2f200910/src/lib/dns/name_unittest.cc
branches/f2f200910/src/lib/dns/run_unittests.cc
Modified: branches/f2f200910/configure
==============================================================================
--- branches/f2f200910/configure (original)
+++ branches/f2f200910/configure Tue Oct 27 01:47:31 2009
@@ -691,6 +691,7 @@
ac_user_opts='
enable_option_checking
enable_dependency_tracking
+with_boost
with_gtest
'
ac_precious_vars='build_alias
@@ -1326,6 +1327,7 @@
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-boost=PATH specify a path to the boost if it's not automatically found
--with-gtest=PATH specify a path to Gtest header files (PATH/include) and library (PATH/lib)
Some influential environment variables:
@@ -4474,6 +4476,22 @@
fi
+
+#
+# Check availablity of boost
+#
+
+# Check whether --with-boost was given.
+if test "${with_boost+set}" = set; then :
+ withval=$with_boost; boost_path="$withval"
+else
+ boost_path="no"
+fi
+
+if test "$boost_path" != "no"
+then
+ CPPFLAGS="$CPPFLAGS -I$boost_path"
+fi
#
# Check availablity of gtest, which might be used for unit tests.
Modified: branches/f2f200910/configure.ac
==============================================================================
--- branches/f2f200910/configure.ac (original)
+++ branches/f2f200910/configure.ac Tue Oct 27 01:47:31 2009
@@ -19,6 +19,17 @@
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_TYPE_SIZE_T
+
+#
+# Check availablity of boost
+#
+AC_ARG_WITH(boost,
+[ --with-boost=PATH specify a path to the boost if it's not automatically found],
+ boost_path="$withval", boost_path="no")
+if test "$boost_path" != "no"
+then
+ CPPFLAGS="$CPPFLAGS -I$boost_path"
+fi
#
# Check availablity of gtest, which might be used for unit tests.
Modified: branches/f2f200910/src/lib/dns/Makefile.am
==============================================================================
--- branches/f2f200910/src/lib/dns/Makefile.am (original)
+++ branches/f2f200910/src/lib/dns/Makefile.am Tue Oct 27 01:47:31 2009
@@ -1,12 +1,12 @@
AM_CPPFLAGS = -I$(top_srcdir)/src/lib
lib_LIBRARIES = libdns.a
-libdns_a_SOURCES = name.cc buffer.cc name.h buffer.h
+libdns_a_SOURCES = name.cc buffer.cc rrset.cc name.h buffer.h rrset.h
TESTS =
if HAVE_GTEST
TESTS += run_unittests
-run_unittests_SOURCES = name_unittest.cc
+run_unittests_SOURCES = run_unittests.cc name_unittest.cc rrset_unittest.cc
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
run_unittests_LDFLAGS = $(GTEST_LDFLAGS)
run_unittests_LDADD = ./libdns.a $(GTEST_LDADD)
Modified: branches/f2f200910/src/lib/dns/Makefile.in
==============================================================================
--- branches/f2f200910/src/lib/dns/Makefile.in (original)
+++ branches/f2f200910/src/lib/dns/Makefile.in Tue Oct 27 01:47:31 2009
@@ -73,14 +73,17 @@
ARFLAGS = cru
libdns_a_AR = $(AR) $(ARFLAGS)
libdns_a_LIBADD =
-am_libdns_a_OBJECTS = name.$(OBJEXT) buffer.$(OBJEXT)
+am_libdns_a_OBJECTS = name.$(OBJEXT) buffer.$(OBJEXT) rrset.$(OBJEXT)
libdns_a_OBJECTS = $(am_libdns_a_OBJECTS)
@HAVE_GTEST_TRUE at am__EXEEXT_1 = run_unittests$(EXEEXT)
am__EXEEXT_2 = $(am__EXEEXT_1)
PROGRAMS = $(noinst_PROGRAMS)
-am__run_unittests_SOURCES_DIST = name_unittest.cc
+am__run_unittests_SOURCES_DIST = run_unittests.cc name_unittest.cc \
+ rrset_unittest.cc
@HAVE_GTEST_TRUE at am_run_unittests_OBJECTS = \
- at HAVE_GTEST_TRUE@ run_unittests-name_unittest.$(OBJEXT)
+ at HAVE_GTEST_TRUE@ run_unittests-run_unittests.$(OBJEXT) \
+ at HAVE_GTEST_TRUE@ run_unittests-name_unittest.$(OBJEXT) \
+ at HAVE_GTEST_TRUE@ run_unittests-rrset_unittest.$(OBJEXT)
run_unittests_OBJECTS = $(am_run_unittests_OBJECTS)
am__DEPENDENCIES_1 =
@HAVE_GTEST_TRUE at run_unittests_DEPENDENCIES = ./libdns.a \
@@ -203,8 +206,8 @@
top_srcdir = @top_srcdir@
AM_CPPFLAGS = -I$(top_srcdir)/src/lib
lib_LIBRARIES = libdns.a
-libdns_a_SOURCES = name.cc buffer.cc name.h buffer.h
- at HAVE_GTEST_TRUE@run_unittests_SOURCES = name_unittest.cc
+libdns_a_SOURCES = name.cc buffer.cc rrset.cc name.h buffer.h rrset.h
+ at HAVE_GTEST_TRUE@run_unittests_SOURCES = run_unittests.cc name_unittest.cc rrset_unittest.cc
@HAVE_GTEST_TRUE at run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
@HAVE_GTEST_TRUE at run_unittests_LDFLAGS = $(GTEST_LDFLAGS)
@HAVE_GTEST_TRUE at run_unittests_LDADD = ./libdns.a $(GTEST_LDADD)
@@ -293,7 +296,10 @@
@AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/buffer.Po at am__quote@
@AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/name.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/rrset.Po at am__quote@
@AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/run_unittests-name_unittest.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/run_unittests-rrset_unittest.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/run_unittests-run_unittests.Po at am__quote@
.cc.o:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -309,6 +315,20 @@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+run_unittests-run_unittests.o: run_unittests.cc
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT run_unittests-run_unittests.o -MD -MP -MF $(DEPDIR)/run_unittests-run_unittests.Tpo -c -o run_unittests-run_unittests.o `test -f 'run_unittests.cc' || echo '$(srcdir)/'`run_unittests.cc
+ at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/run_unittests-run_unittests.Tpo $(DEPDIR)/run_unittests-run_unittests.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='run_unittests.cc' object='run_unittests-run_unittests.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o run_unittests-run_unittests.o `test -f 'run_unittests.cc' || echo '$(srcdir)/'`run_unittests.cc
+
+run_unittests-run_unittests.obj: run_unittests.cc
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT run_unittests-run_unittests.obj -MD -MP -MF $(DEPDIR)/run_unittests-run_unittests.Tpo -c -o run_unittests-run_unittests.obj `if test -f 'run_unittests.cc'; then $(CYGPATH_W) 'run_unittests.cc'; else $(CYGPATH_W) '$(srcdir)/run_unittests.cc'; fi`
+ at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/run_unittests-run_unittests.Tpo $(DEPDIR)/run_unittests-run_unittests.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='run_unittests.cc' object='run_unittests-run_unittests.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o run_unittests-run_unittests.obj `if test -f 'run_unittests.cc'; then $(CYGPATH_W) 'run_unittests.cc'; else $(CYGPATH_W) '$(srcdir)/run_unittests.cc'; fi`
+
run_unittests-name_unittest.o: name_unittest.cc
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT run_unittests-name_unittest.o -MD -MP -MF $(DEPDIR)/run_unittests-name_unittest.Tpo -c -o run_unittests-name_unittest.o `test -f 'name_unittest.cc' || echo '$(srcdir)/'`name_unittest.cc
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/run_unittests-name_unittest.Tpo $(DEPDIR)/run_unittests-name_unittest.Po
@@ -322,6 +342,20 @@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='name_unittest.cc' object='run_unittests-name_unittest.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o run_unittests-name_unittest.obj `if test -f 'name_unittest.cc'; then $(CYGPATH_W) 'name_unittest.cc'; else $(CYGPATH_W) '$(srcdir)/name_unittest.cc'; fi`
+
+run_unittests-rrset_unittest.o: rrset_unittest.cc
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT run_unittests-rrset_unittest.o -MD -MP -MF $(DEPDIR)/run_unittests-rrset_unittest.Tpo -c -o run_unittests-rrset_unittest.o `test -f 'rrset_unittest.cc' || echo '$(srcdir)/'`rrset_unittest.cc
+ at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/run_unittests-rrset_unittest.Tpo $(DEPDIR)/run_unittests-rrset_unittest.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rrset_unittest.cc' object='run_unittests-rrset_unittest.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o run_unittests-rrset_unittest.o `test -f 'rrset_unittest.cc' || echo '$(srcdir)/'`rrset_unittest.cc
+
+run_unittests-rrset_unittest.obj: rrset_unittest.cc
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT run_unittests-rrset_unittest.obj -MD -MP -MF $(DEPDIR)/run_unittests-rrset_unittest.Tpo -c -o run_unittests-rrset_unittest.obj `if test -f 'rrset_unittest.cc'; then $(CYGPATH_W) 'rrset_unittest.cc'; else $(CYGPATH_W) '$(srcdir)/rrset_unittest.cc'; fi`
+ at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/run_unittests-rrset_unittest.Tpo $(DEPDIR)/run_unittests-rrset_unittest.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rrset_unittest.cc' object='run_unittests-rrset_unittest.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(run_unittests_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o run_unittests-rrset_unittest.obj `if test -f 'rrset_unittest.cc'; then $(CYGPATH_W) 'rrset_unittest.cc'; else $(CYGPATH_W) '$(srcdir)/rrset_unittest.cc'; fi`
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
Modified: branches/f2f200910/src/lib/dns/buffer.h
==============================================================================
--- branches/f2f200910/src/lib/dns/buffer.h (original)
+++ branches/f2f200910/src/lib/dns/buffer.h Tue Oct 27 01:47:31 2009
@@ -66,7 +66,7 @@
}
void write_data(const void *data, size_t len)
{
- const uint8_t* cp = static_cast<const uint8_t*>(cp);
+ const uint8_t* cp = static_cast<const uint8_t*>(data);
buf_.insert(buf_.end(), cp, cp + len);
}
void write_uint32(uint32_t data)
Modified: branches/f2f200910/src/lib/dns/name.cc
==============================================================================
--- branches/f2f200910/src/lib/dns/name.cc (original)
+++ branches/f2f200910/src/lib/dns/name.cc Tue Oct 27 01:47:31 2009
@@ -266,7 +266,7 @@
length_ = nused;
}
-Name::Name(NameDecompressor& decompressor, Buffer& buffer)
+Name::Name(Buffer& buffer, NameDecompressor& decompressor)
{
unsigned int nused, labels, n, nmax;
unsigned int current;
Modified: branches/f2f200910/src/lib/dns/name.h
==============================================================================
--- branches/f2f200910/src/lib/dns/name.h (original)
+++ branches/f2f200910/src/lib/dns/name.h Tue Oct 27 01:47:31 2009
@@ -54,7 +54,7 @@
public:
Name() : length_(0), labels_(0) {}
explicit Name(const std::string& namestr);
- explicit Name(NameDecompressor& decompressor, Buffer& buffer);
+ explicit Name(Buffer& buffer, NameDecompressor& decompressor);
// copy constructor (default cp-ctor should work fine)
//Name(const Name& orig);
// destructor (default dtor should work fine)
Modified: branches/f2f200910/src/lib/dns/name_unittest.cc
==============================================================================
--- branches/f2f200910/src/lib/dns/name_unittest.cc (original)
+++ branches/f2f200910/src/lib/dns/name_unittest.cc Tue Oct 27 01:47:31 2009
@@ -79,15 +79,7 @@
ISC::DNS::NameDecompressor decompressor;
example_name->to_wire(buffer, compressor);
-
- Name name2(decompressor, buffer);
- EXPECT_EQ(true, *example_name == name2);
+ EXPECT_EQ(std::string("www.example.com."),
+ Name(buffer, decompressor).to_text(false));
}
}
-
-int
-main(int argc, char* argv[])
-{
- ::testing::InitGoogleTest(&argc, argv);
- return (RUN_ALL_TESTS());
-}
Modified: branches/f2f200910/src/lib/dns/run_unittests.cc
==============================================================================
--- branches/f2f200910/src/lib/dns/run_unittests.cc (original)
+++ branches/f2f200910/src/lib/dns/run_unittests.cc Tue Oct 27 01:47:31 2009
@@ -14,49 +14,11 @@
// $Id$
-#include <iostream>
-#include <stdexcept>
-
-#include <cppunit/CompilerOutputter.h>
-#include <cppunit/TestCase.h>
-#include <cppunit/TestResult.h>
-#include <cppunit/TestResultCollector.h>
-#include <cppunit/TestRunner.h>
-#include <cppunit/TextTestProgressListener.h>
-
-#include <dns/name_unittest.h>
+#include <gtest/gtest.h>
int
main(int argc, char* argv[])
{
- CppUnit::TestRunner runner;
- CppUnit::TestResult controller;
-
- // Add a listener that collects test result
- CppUnit::TestResultCollector result;
- controller.addListener( &result );
-
- // Add a listener that print dots as test run.
- CppUnit::TextTestProgressListener progress;
- controller.addListener(&progress);
-
- runner.addTest(NameTest::suite());
-
- try {
- std::cout << "Running ";
- runner.run(controller, "");
-
- std::cerr << std::endl;
-
- // Print test in a compiler compatible format.
- CppUnit::CompilerOutputter outputter(&result, std::cerr);
- outputter.write();
- } catch (std::invalid_argument& e) { // Test path not resolved
- std::cerr << std::endl
- << "ERROR: " << e.what()
- << std::endl;
- return 0;
- }
-
- return (result.wasSuccessful() ? 0 : 1);
+ ::testing::InitGoogleTest(&argc, argv);
+ return (RUN_ALL_TESTS());
}
More information about the bind10-changes
mailing list