]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[master] Merge branch 'trac3918' (KEA_SOCKET_TEST_DIR variable)
authorTomek Mrugalski <tomasz@isc.org>
Wed, 24 Jun 2015 16:41:24 +0000 (18:41 +0200)
committerTomek Mrugalski <tomasz@isc.org>
Wed, 24 Jun 2015 16:41:24 +0000 (18:41 +0200)
Conflicts:
src/lib/util/tests/socketsession_unittest.cc

1  2 
src/bin/dhcp6/tests/ctrl_dhcp6_srv_unittest.cc
src/lib/util/tests/socketsession_unittest.cc

index 7657c38a0b8309f3506ebe02fcca69f5b772a8df,d1bf685bdbceb6abff25d31457183f12e0decc60..58a490b430ff6d9fe95b6d23c15008d1dc57686c
@@@ -155,13 -155,30 +155,30 @@@ private
  
  class ForwardTest : public ::testing::Test {
  protected:
-     ForwardTest() : listen_fd_(-1), forwarder_(TEST_UNIX_FILE),
+     /// @brief Returns socket path (using either hardcoded path or env variable)
+     /// @return path to the unix socket
+     std::string getSocketPath() {
+         std::string socket_path;
+         const char* env = getenv("KEA_SOCKET_TEST_DIR");
+         if (env) {
+             socket_path = string(env) + "/test.unix";
+         } else {
+             socket_path = string(TEST_DATA_BUILDDIR) + "/test.unix";
+         }
+         return (socket_path);
+     }
+     ForwardTest() : listen_fd_(-1), forwarder_(getSocketPath()),
                      large_text_(65535, 'a'),
-                     test_un_len_(2 + strlen(TEST_UNIX_FILE))
+                     test_un_len_(2 + strlen(getSocketPath().c_str()))
      {
-         remove(TEST_UNIX_FILE);
+         std::string unix_file = getSocketPath();
 -        unlink(unix_file.c_str());
++        remove(unix_file.c_str());
          test_un_.sun_family = AF_UNIX;
-         strncpy(test_un_.sun_path, TEST_UNIX_FILE, sizeof(test_un_.sun_path));
+         strncpy(test_un_.sun_path, unix_file.c_str(), sizeof(test_un_.sun_path));
  #ifdef HAVE_SA_LEN
          test_un_.sun_len = test_un_len_;
  #endif
          if (listen_fd_ != -1) {
              close(listen_fd_);
          }
-         remove(TEST_UNIX_FILE);
 -        unlink(getSocketPath().c_str());
++        remove(getSocketPath().c_str());
      }
  
      // Start an internal "socket session server".