[svn] commit: r2650 - in /branches/trac296: configure.ac src/bin/auth/tests/auth_srv_unittest.cc src/lib/cc/session_unittests.cc src/lib/cc/session_unittests_config.h.in src/lib/config/tests/fake_session.h
BIND 10 source code commits
bind10-changes at lists.isc.org
Fri Aug 6 14:54:00 UTC 2010
Author: jelte
Date: Fri Aug 6 14:54:00 2010
New Revision: 2650
Log:
update other 'fake' session implementations to new interface
use build-dir based domain socket for tests (requires clean rebuild to generate .h file)
Added:
branches/trac296/src/lib/cc/session_unittests_config.h.in
Modified:
branches/trac296/configure.ac
branches/trac296/src/bin/auth/tests/auth_srv_unittest.cc
branches/trac296/src/lib/cc/session_unittests.cc
branches/trac296/src/lib/config/tests/fake_session.h
Modified: branches/trac296/configure.ac
==============================================================================
--- branches/trac296/configure.ac (original)
+++ branches/trac296/configure.ac Fri Aug 6 14:54:00 2010
@@ -473,6 +473,7 @@
src/lib/python/bind10_config.py
src/lib/dns/tests/testdata/gen-wiredata.py
src/lib/cc/session_config.h.pre
+ src/lib/cc/session_unittests_config.h
], [
chmod +x src/bin/cmdctl/run_b10-cmdctl.sh
chmod +x src/bin/xfrin/run_b10-xfrin.sh
Modified: branches/trac296/src/bin/auth/tests/auth_srv_unittest.cc
==============================================================================
--- branches/trac296/src/bin/auth/tests/auth_srv_unittest.cc (original)
+++ branches/trac296/src/bin/auth/tests/auth_srv_unittest.cc Fri Aug 6 14:54:00 2010
@@ -94,6 +94,8 @@
virtual void startRead(boost::function<void()> read_callback);
virtual int reply(ElementPtr& envelope, ElementPtr& newmsg);
virtual bool hasQueuedMsgs();
+ virtual void setTimeout(size_t timeout UNUSED_PARAM) {};
+ virtual size_t getTimeout() { return 0; };
void setMessage(ElementPtr msg) { msg_ = msg; }
void disableSend() { send_ok_ = false; }
Modified: branches/trac296/src/lib/cc/session_unittests.cc
==============================================================================
--- branches/trac296/src/lib/cc/session_unittests.cc (original)
+++ branches/trac296/src/lib/cc/session_unittests.cc Fri Aug 6 14:54:00 2010
@@ -30,6 +30,8 @@
#include <asio.hpp>
#include <boost/bind.hpp>
+#include "session_unittests_config.h"
+
using namespace isc::cc;
TEST(AsioSession, establish) {
@@ -109,6 +111,10 @@
};
*/
+// This class sets up a domain socket for the session to connect to
+// it will impersonate the msgq a tiny bit (if setSendLname() has
+// been called, it will send an 'answer' to the lname query that is
+// sent in the initialization of Session objects)
class TestDomainSocket {
public:
@@ -124,6 +130,7 @@
~TestDomainSocket() {
socket_.close();
+ ::unlink(BIND10_TEST_SOCKET_FILE);
}
void
@@ -169,40 +176,39 @@
TEST(Session, timeout_on_connect) {
asio::io_service my_io_service;
- ::unlink("/tmp/mysock.sock");
- TestDomainSocket tds(my_io_service, "/tmp/mysock.sock");
+ ::unlink(BIND10_TEST_SOCKET_FILE);
+ TestDomainSocket tds(my_io_service, BIND10_TEST_SOCKET_FILE);
Session sess(my_io_service);
// set to a short timeout so the test doesn't take too long
EXPECT_EQ(4000, sess.getTimeout());
sess.setTimeout(100);
EXPECT_EQ(100, sess.getTimeout());
// no answer, should timeout
- EXPECT_THROW(sess.establish("/tmp/mysock.sock"), isc::cc::SessionTimeout);
+ EXPECT_THROW(sess.establish(BIND10_TEST_SOCKET_FILE), isc::cc::SessionTimeout);
}
TEST(Session, connect_ok) {
asio::io_service my_io_service;
- ::unlink("/tmp/mysock.sock");
- TestDomainSocket tds(my_io_service, "/tmp/mysock.sock");
+ ::unlink(BIND10_TEST_SOCKET_FILE);
+ TestDomainSocket tds(my_io_service, BIND10_TEST_SOCKET_FILE);
tds.setSendLname();
Session sess(my_io_service);
- sess.establish("/tmp/mysock.sock");
-}
-
-TEST(Session, connect_ok2) {
+ sess.establish(BIND10_TEST_SOCKET_FILE);
+}
+
+TEST(Session, connect_ok_connection_reset) {
asio::io_service my_io_service;
- ::unlink("/tmp/mysock.sock");
+ ::unlink(BIND10_TEST_SOCKET_FILE);
Session sess(my_io_service);
- // Create a fake socket in a smaller scope, so we can
+ // Create a fake msgq in a smaller scope, so we can
// connect the session to it, but later calls on the
// underlying socket will fail
{
- TestDomainSocket tds(my_io_service, "/tmp/mysock.sock");
+ TestDomainSocket tds(my_io_service, BIND10_TEST_SOCKET_FILE);
tds.setSendLname();
-
- sess.establish("/tmp/mysock.sock");
+ sess.establish(BIND10_TEST_SOCKET_FILE);
}
isc::data::ElementPtr env, msg;
Modified: branches/trac296/src/lib/config/tests/fake_session.h
==============================================================================
--- branches/trac296/src/lib/config/tests/fake_session.h (original)
+++ branches/trac296/src/lib/config/tests/fake_session.h Fri Aug 6 14:54:00 2010
@@ -72,6 +72,8 @@
virtual int reply(isc::data::ElementPtr& envelope,
isc::data::ElementPtr& newmsg);
virtual bool hasQueuedMsgs();
+ virtual void setTimeout(size_t milliseconds) {};
+ virtual size_t getTimeout() { return 0; };
isc::data::ElementPtr getFirstMessage(std::string& group, std::string& to);
void addMessage(isc::data::ElementPtr, const std::string& group,
const std::string& to);
More information about the bind10-changes
mailing list