This is an automated email from the ASF dual-hosted git repository.
wkaras pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new 19551e294d Raise unit tests for src/proxy/http/remap from the dead.
(#11259)
19551e294d is described below
commit 19551e294d1fd3ff414932aaffa2895928968790
Author: Walt Karas <[email protected]>
AuthorDate: Tue Apr 23 15:47:53 2024 -0400
Raise unit tests for src/proxy/http/remap from the dead. (#11259)
The plugin load unit tests are not currently working.
---
include/proxy/http/remap/PluginFactory.h | 2 -
src/proxy/http/remap/CMakeLists.txt | 4 +
src/proxy/http/remap/unit-tests/CMakeLists.txt | 176 +++++++++++++++++++++
.../http/remap/unit-tests/nexthop_test_stubs.cc | 4 +-
.../remap/unit-tests/test_NextHopConsistentHash.cc | 16 +-
.../remap/unit-tests/test_NextHopRoundRobin.cc | 8 +-
.../unit-tests/test_NextHopStrategyFactory.cc | 10 +-
src/proxy/http/remap/unit-tests/test_PluginDso.cc | 24 +--
.../http/remap/unit-tests/test_PluginFactory.cc | 4 +-
.../http/remap/unit-tests/test_RemapPlugin.cc | 4 +-
10 files changed, 215 insertions(+), 37 deletions(-)
diff --git a/include/proxy/http/remap/PluginFactory.h
b/include/proxy/http/remap/PluginFactory.h
index 1ebcadd81e..edded5cb1e 100644
--- a/include/proxy/http/remap/PluginFactory.h
+++ b/include/proxy/http/remap/PluginFactory.h
@@ -31,8 +31,6 @@
#include "proxy/http/remap/PluginDso.h"
#include "proxy/http/remap/RemapPluginInfo.h"
-#include "tscore/Ptr.h"
-
#include "tscore/ink_uuid.h"
#include "ts/apidefs.h"
diff --git a/src/proxy/http/remap/CMakeLists.txt
b/src/proxy/http/remap/CMakeLists.txt
index ca2540683e..ff0f63da03 100644
--- a/src/proxy/http/remap/CMakeLists.txt
+++ b/src/proxy/http/remap/CMakeLists.txt
@@ -40,3 +40,7 @@ target_link_libraries(
PUBLIC ts::proxy ts::tscore
PRIVATE ts::inkevent ts::inkutils yaml-cpp::yaml-cpp
)
+
+if(BUILD_TESTING)
+ add_subdirectory(unit-tests)
+endif()
diff --git a/src/proxy/http/remap/unit-tests/CMakeLists.txt
b/src/proxy/http/remap/unit-tests/CMakeLists.txt
new file mode 100644
index 0000000000..ca6793fedc
--- /dev/null
+++ b/src/proxy/http/remap/unit-tests/CMakeLists.txt
@@ -0,0 +1,176 @@
+#######################
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
contributor license
+# agreements. See the NOTICE file distributed with this work for additional
information regarding
+# copyright ownership. The ASF licenses this file to you under the Apache
License, Version 2.0
+# (the "License"); you may not use this file except in compliance with the
License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
distributed under the License
+# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express
+# or implied. See the License for the specific language governing permissions
and limitations under
+# the License.
+#
+#######################
+
+### The shared libraries built here are only used by the plugin tests
####################
+
+function(add_plugin_ut_lib name)
+ add_library(${name} MODULE ${ARGN})
+ set_target_properties(${name} PROPERTIES PREFIX "")
+ set_target_properties(${name} PROPERTIES SUFFIX ".so")
+ target_include_directories(
+ ${name} PRIVATE "$<TARGET_PROPERTY:libswoc::libswoc,INCLUDE_DIRECTORIES>"
+
"$<TARGET_PROPERTY:libswoc::libswoc,INTERFACE_INCLUDE_DIRECTORIES>"
+ )
+endfunction()
+
+# Test plugins will not build on OSX
+#
+# add_plugin_ut_lib(plugin_v1 plugin_misc_cb.cc)
+# target_compile_definitions(plugin_v1 PRIVATE PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_v2 plugin_misc_cb.cc)
+# target_compile_definitions(plugin_v2 PRIVATE PLUGINDSOVER=2)
+#
+# add_plugin_ut_lib(plugin_init_fail plugin_init_fail.cc)
+#
+# add_plugin_ut_lib(plugin_instinit_fail plugin_instinit_fail.cc)
+#
+# add_plugin_ut_lib(plugin_required_cb plugin_required_cb.cc)
+# target_compile_definitions(plugin_required_cb PRIVATE PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_missing_deleteinstance
plugin_missing_deleteinstance.cc)
+# target_compile_definitions(plugin_missing_deleteinstance PRIVATE
PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_missing_doremap plugin_missing_doremap.cc)
+# target_compile_definitions(plugin_missing_doremap PRIVATE PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_missing_init plugin_missing_init.cc)
+# target_compile_definitions(plugin_missing_init PRIVATE PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_missing_newinstance plugin_missing_newinstance.cc)
+# target_compile_definitions(plugin_missing_newinstance PRIVATE PLUGINDSOVER=1)
+#
+# add_plugin_ut_lib(plugin_testing_calls plugin_testing_calls.cc
plugin_testing_common.cc)
+# target_compile_definitions(plugin_testing_calls PRIVATE PLUGINDSOVER=1)
+
+### test_PluginDso
########################################################################
+
+add_executable(test_PluginDso test_PluginDso.cc plugin_testing_common.cc
../PluginDso.cc)
+
+target_compile_definitions(test_PluginDso PRIVATE PLUGIN_DSO_TESTS)
+
+target_include_directories(test_PluginDso PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(test_PluginDso PRIVATE catch2::catch2 ts::inkutils
tscore libswoc::libswoc)
+
+# This test currently does not pass.
+# add_test(NAME test_PluginDso COMMAND $<TARGET_FILE:test_PluginDso>)
+
+### test_PluginFactory
########################################################################
+
+add_executable(
+ test_PluginFactory test_PluginFactory.cc plugin_testing_common.cc
../PluginFactory.cc ../PluginDso.cc
+ ../RemapPluginInfo.cc
+)
+
+target_compile_definitions(test_PluginFactory PRIVATE PLUGIN_DSO_TESTS)
+
+target_include_directories(test_PluginFactory PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(test_PluginFactory PRIVATE catch2::catch2 ts::inkutils
tscore libswoc::libswoc)
+
+# This test currently does not pass.
+# add_test(NAME test_PluginFactory COMMAND $<TARGET_FILE:test_PluginFactory>)
+
+### test_RemapPluginInfo
########################################################################
+
+add_executable(test_RemapPluginInfo test_RemapPlugin.cc
plugin_testing_common.cc ../PluginDso.cc ../RemapPluginInfo.cc)
+
+target_compile_definitions(test_RemapPluginInfo PRIVATE PLUGIN_DSO_TESTS)
+
+target_include_directories(test_RemapPluginInfo PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(test_RemapPluginInfo PRIVATE catch2::catch2 ts::inkutils
tscore libswoc::libswoc)
+
+# This test currently does not pass.
+# add_test(NAME test_RemapPluginInfo COMMAND
$<TARGET_FILE:test_RemapPluginInfo>)
+
+### test_NextHopStrategyFactory
########################################################################
+
+add_executable(
+ test_NextHopStrategyFactory
+ test_NextHopStrategyFactory.cc
+ nexthop_test_stubs.cc
+ ../NextHopSelectionStrategy.cc
+ ../NextHopStrategyFactory.cc
+ ../NextHopRoundRobin.cc
+ ../NextHopConsistentHash.cc
+ ../NextHopHealthStatus.cc
+ ${PROJECT_SOURCE_DIR}/src/api/APIHooks.cc
+)
+
+target_compile_definitions(
+ test_NextHopStrategyFactory PRIVATE _NH_UNIT_TESTS_
TS_SRC_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}\"
+)
+
+target_include_directories(test_NextHopStrategyFactory PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(
+ test_NextHopStrategyFactory PRIVATE catch2::catch2 ts::hdrs ts::inkutils
tscore libswoc::libswoc yaml-cpp::yaml-cpp
+)
+
+add_test(NAME test_NextHopStrategyFactory COMMAND
$<TARGET_FILE:test_NextHopStrategyFactory>)
+
+### test_NextHopRoundRobin
########################################################################
+
+add_executable(
+ test_NextHopRoundRobin
+ test_NextHopRoundRobin.cc
+ nexthop_test_stubs.cc
+ ../NextHopSelectionStrategy.cc
+ ../NextHopStrategyFactory.cc
+ ../NextHopRoundRobin.cc
+ ../NextHopConsistentHash.cc
+ ../NextHopHealthStatus.cc
+ ${PROJECT_SOURCE_DIR}/src/api/APIHooks.cc
+)
+
+target_compile_definitions(test_NextHopRoundRobin PRIVATE _NH_UNIT_TESTS_
TS_SRC_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}\")
+
+target_include_directories(test_NextHopRoundRobin PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(
+ test_NextHopRoundRobin PRIVATE catch2::catch2 ts::hdrs ts::inkutils tscore
libswoc::libswoc yaml-cpp::yaml-cpp
+)
+
+add_test(NAME test_NextHopRoundRobin COMMAND
$<TARGET_FILE:test_NextHopRoundRobin>)
+
+### test_NextHopConsistentHash
########################################################################
+
+add_executable(
+ test_NextHopConsistentHash
+ test_NextHopConsistentHash.cc
+ nexthop_test_stubs.cc
+ ../NextHopSelectionStrategy.cc
+ ../NextHopStrategyFactory.cc
+ ../NextHopConsistentHash.cc
+ ../NextHopRoundRobin.cc
+ ../NextHopHealthStatus.cc
+ ${PROJECT_SOURCE_DIR}/src/api/APIHooks.cc
+)
+
+target_compile_definitions(
+ test_NextHopConsistentHash PRIVATE _NH_UNIT_TESTS_
TS_SRC_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}\"
+)
+
+target_include_directories(test_NextHopConsistentHash PRIVATE
${PROJECT_SOURCE_DIR}/tests/include)
+
+target_link_libraries(
+ test_NextHopConsistentHash PRIVATE catch2::catch2 tscore ts::hdrs
ts::inkutils libswoc::libswoc yaml-cpp::yaml-cpp
+)
+
+add_test(NAME test_NextHopConsistentHash COMMAND
$<TARGET_FILE:test_NextHopConsistentHash>)
diff --git a/src/proxy/http/remap/unit-tests/nexthop_test_stubs.cc
b/src/proxy/http/remap/unit-tests/nexthop_test_stubs.cc
index c5b7078e34..559c536403 100644
--- a/src/proxy/http/remap/unit-tests/nexthop_test_stubs.cc
+++ b/src/proxy/http/remap/unit-tests/nexthop_test_stubs.cc
@@ -163,7 +163,7 @@ HttpRequestData::get_client_ip()
#include "api/InkAPIInternal.h"
void
-ConfigUpdateCbTable::invoke(char const *p)
+ConfigUpdateCbTable::invoke()
{
}
@@ -207,5 +207,5 @@ HostStatus::setHostStatus(const std::string_view host,
TSHostStatus status, unsi
this->hosts_statuses[std::string(host)]->status = status;
this->hosts_statuses[std::string(host)]->reasons = reason;
this->hosts_statuses[std::string(host)]->local_down_time = down_time;
- NH_Debug("next_hop", "setting host status for '%.*s' to %s", host.size(),
host.data(), HostStatusNames[status]);
+ NH_Dbg(DbgCtl{"next_hop"}, "setting host status for '%.*s' to %s",
host.size(), host.data(), HostStatusNames[status]);
}
diff --git a/src/proxy/http/remap/unit-tests/test_NextHopConsistentHash.cc
b/src/proxy/http/remap/unit-tests/test_NextHopConsistentHash.cc
index 886761565a..696d86683f 100644
--- a/src/proxy/http/remap/unit-tests/test_NextHopConsistentHash.cc
+++ b/src/proxy/http/remap/unit-tests/test_NextHopConsistentHash.cc
@@ -52,7 +52,7 @@ SCENARIO("Testing NextHopConsistentHash class, using policy
'consistent_hash'",
{
// load the configuration strtegies.
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("consistent-hash-1");
WHEN("the config is loaded.")
@@ -191,7 +191,7 @@ SCENARIO("Testing NextHopConsistentHash class (all
firstcalls), using policy 'co
GIVEN("Loading the consistent-hash-tests.yaml config for 'consistent_hash'
tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("consistent-hash-1");
WHEN("the config is loaded.")
@@ -301,7 +301,7 @@ SCENARIO("Testing NextHop ignore_self_detect false",
"[NextHopConsistentHash]")
{
// load the configuration strtegies.
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("ignore-self-detect-false");
HostStatus &hs = HostStatus::instance();
@@ -351,7 +351,7 @@ SCENARIO("Testing NextHop ignore_self_detect true",
"[NextHopConsistentHash]")
{
// load the configuration strtegies.
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("ignore-self-detect-true");
HostStatus &hs = HostStatus::instance();
@@ -401,7 +401,7 @@ SCENARIO("Testing NextHopConsistentHash same host different
port markdown", "[Ne
{
// load the configuration strtegies.
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("same-host-different-port");
WHEN("the config is loaded.")
@@ -469,7 +469,7 @@ SCENARIO("Testing NextHopConsistentHash hash_string
override", "[NextHopConsiste
{
// load the configuration strtegies.
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("hash-string-override");
WHEN("the config is loaded.")
@@ -529,7 +529,7 @@ SCENARIO("Testing NextHopConsistentHash class (alternating
rings), using policy
GIVEN("Loading the consistent-hash-tests.yaml config for 'consistent_hash'
tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR
"unit-tests/consistent-hash-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/consistent-hash-tests.yaml");
strategy = nhf.strategyInstance("consistent-hash-2");
WHEN("the config is loaded.")
@@ -648,7 +648,7 @@ SCENARIO("Testing NextHopConsistentHash using a peering
ring_mode.")
GIVEN("Loading the peering.yaml config for 'consistent_hash' tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/peering.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/peering.yaml");
strategy = nhf.strategyInstance("peering-group-1");
WHEN("the config is loaded.")
diff --git a/src/proxy/http/remap/unit-tests/test_NextHopRoundRobin.cc
b/src/proxy/http/remap/unit-tests/test_NextHopRoundRobin.cc
index 0a748e3a4a..9d0ef509c2 100644
--- a/src/proxy/http/remap/unit-tests/test_NextHopRoundRobin.cc
+++ b/src/proxy/http/remap/unit-tests/test_NextHopRoundRobin.cc
@@ -48,7 +48,7 @@ SCENARIO("Testing NextHopRoundRobin class, using policy
'rr-strict'", "[NextHopR
GIVEN("Loading the round-robin-tests.yaml config for round robin 'rr-strict'
tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/round-robin-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/round-robin-tests.yaml");
strategy = nhf.strategyInstance("rr-strict-exhaust-ring");
WHEN("the config is loaded.")
@@ -173,7 +173,7 @@ SCENARIO("Testing NextHopRoundRobin class, using policy
'first-live'", "[NextHop
GIVEN("Loading the round-robin-tests.yaml config for round robin
'first-live' tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/round-robin-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/round-robin-tests.yaml");
strategy = nhf.strategyInstance("first-live");
WHEN("the config is loaded.")
@@ -242,7 +242,7 @@ SCENARIO("Testing NextHopRoundRobin class, using policy
'rr-ip'", "[NextHopRound
GIVEN("Loading the round-robin-tests.yaml config for round robin 'rr-ip'
tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/round-robin-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/round-robin-tests.yaml");
strategy = nhf.strategyInstance("rr-ip");
sockaddr_in sa1, sa2;
sa1.sin_port = 10000;
@@ -329,7 +329,7 @@ SCENARIO("Testing NextHopRoundRobin class, using policy
'latched'", "[NextHopRou
GIVEN("Loading the round-robin-tests.yaml config for round robin 'latched'
tests.")
{
std::shared_ptr<NextHopSelectionStrategy> strategy;
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/round-robin-tests.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/round-robin-tests.yaml");
strategy = nhf.strategyInstance("latched");
WHEN("the config is loaded.")
diff --git a/src/proxy/http/remap/unit-tests/test_NextHopStrategyFactory.cc
b/src/proxy/http/remap/unit-tests/test_NextHopStrategyFactory.cc
index 4f550eea90..4bce72da75 100644
--- a/src/proxy/http/remap/unit-tests/test_NextHopStrategyFactory.cc
+++ b/src/proxy/http/remap/unit-tests/test_NextHopStrategyFactory.cc
@@ -44,9 +44,9 @@ SCENARIO("factory tests loading yaml configs", "[loadConfig]")
GIVEN("Loading the strategy.yaml with included 'hosts.yaml'.")
{
#ifdef TS_SRC_DIR
- REQUIRE(chdir(TS_SRC_DIR) == 0);
+ REQUIRE(chdir(TS_SRC_DIR "/..") == 0);
#endif
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/strategy.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/strategy.yaml");
WHEN("the two files are loaded.")
{
@@ -219,7 +219,7 @@ SCENARIO("factory tests loading yaml configs",
"[loadConfig]")
GIVEN("loading a yaml config, simple-strategy.yaml ")
{
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/simple-strategy.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/simple-strategy.yaml");
WHEN("loading the single file")
{
@@ -360,7 +360,7 @@ SCENARIO("factory tests loading yaml configs",
"[loadConfig]")
GIVEN("loading a yaml config combining hosts and strategies into one file,
combined.yaml")
{
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/combined.yaml");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/combined.yaml");
WHEN("loading the single file")
{
@@ -782,7 +782,7 @@ SCENARIO("factory tests loading yaml configs from a
directory", "[loadConfig]")
{
GIVEN("Loading the strategies using a directory of 'yaml' files")
{
- NextHopStrategyFactory nhf(TS_SRC_DIR "unit-tests/strategies-dir");
+ NextHopStrategyFactory nhf(TS_SRC_DIR "/strategies-dir");
WHEN("the two files are loaded.")
{
diff --git a/src/proxy/http/remap/unit-tests/test_PluginDso.cc
b/src/proxy/http/remap/unit-tests/test_PluginDso.cc
index 9f9dfe6be3..f3f350659b 100644
--- a/src/proxy/http/remap/unit-tests/test_PluginDso.cc
+++ b/src/proxy/http/remap/unit-tests/test_PluginDso.cc
@@ -43,7 +43,7 @@ std::error_code ec;
static fs::path sandboxDir = getTemporaryDir();
static fs::path runtimeDir = sandboxDir / fs::path("runtime");
static fs::path searchDir = sandboxDir / fs::path("search");
-static fs::path pluginBuildDir = fs::current_path() /
fs::path("unit-tests/.libs");
+static fs::path pluginBuildDir = fs::current_path();
/* The following are paths used in all scenarios in the unit tests */
static fs::path configPath = fs::path("plugin_v1.so");
@@ -110,7 +110,7 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("loading a valid plugin")
{
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect it to successfully load")
{
@@ -125,7 +125,7 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("loading a valid plugin")
{
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect saving the right DSO file modification time")
{
@@ -142,7 +142,7 @@ SCENARIO("loading plugins", "[plugin][core]")
{
CHECK(fs::remove_all(runtimeDir, ec) > 0);
CHECK_FALSE(fs::exists(runtimePath));
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect it to fail")
{
@@ -155,12 +155,12 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("loading a valid plugin twice in a row")
{
/* First attempt OK */
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
CHECK(true == result);
CHECK(error.empty());
/* Second attempt */
- result = plugin.load(error);
+ result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect it to fail the second attempt")
{
@@ -190,7 +190,7 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("unloading a valid plugin twice in a row")
{
/* First attempt OK */
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
CHECK(true == result);
CHECK(error.empty());
result = plugin.unload(error);
@@ -214,7 +214,7 @@ SCENARIO("loading plugins", "[plugin][core]")
CHECK_FALSE(fs::exists(runtimePath));
/* Load and make sure it is loaded */
- CHECK(plugin.load(error));
+ CHECK(plugin.load(error, fs::path())); // Dummy compiler path.
/* Effective and runtime path set */
CHECK(effectivePath == plugin.effectivePath());
CHECK(runtimePath == plugin.runtimePath());
@@ -243,7 +243,7 @@ SCENARIO("loading plugins", "[plugin][core]")
PluginDsoUnitTest localPlugin(configPath, effectivePath, runtimePath);
/* Load and make sure it is loaded */
- CHECK(localPlugin.load(error));
+ CHECK(localPlugin.load(error, fs::path())); // Dummy compiler path.
/* Effective and runtime path set */
CHECK(effectivePath == localPlugin.effectivePath());
CHECK(runtimePath == localPlugin.runtimePath());
@@ -269,7 +269,7 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("loading the plugin")
{
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect the load to fail")
{
@@ -300,7 +300,7 @@ SCENARIO("loading plugins", "[plugin][core]")
WHEN("loading an invalid plugin")
{
- bool result = plugin.load(error);
+ bool result = plugin.load(error, fs::path()); // Dummy compiler path.
THEN("expect it to fail to load")
{
@@ -341,7 +341,7 @@ SCENARIO("looking for symbols inside a plugin DSO",
"[plugin][core]")
/* Now test away. */
GIVEN("plugin loaded successfully")
{
- CHECK(plugin.load(error));
+ CHECK(plugin.load(error, fs::path())); // Dummy compiler path.
WHEN("looking for an existing symbol")
{
diff --git a/src/proxy/http/remap/unit-tests/test_PluginFactory.cc
b/src/proxy/http/remap/unit-tests/test_PluginFactory.cc
index 618b09f4c8..352ebad101 100644
--- a/src/proxy/http/remap/unit-tests/test_PluginFactory.cc
+++ b/src/proxy/http/remap/unit-tests/test_PluginFactory.cc
@@ -106,7 +106,7 @@ static fs::path sandboxDir = getTemporaryDir();
static fs::path runtimeRootDir = sandboxDir / "runtime";
static fs::path runtimeDir = runtimeRootDir / tempComponent;
static fs::path searchDir = sandboxDir / "search";
-static fs::path pluginBuildDir = fs::current_path() / "unit-tests/.libs";
+static fs::path pluginBuildDir = fs::current_path();
void
clean()
@@ -472,7 +472,7 @@ SCENARIO("multiple search dirs + multiple or no plugins
installed", "[plugin][co
fs::path runtimePath1 = runtimeDir /
effectivePath1.relative_path();
fs::path runtimePath2 = runtimeDir /
effectivePath2.relative_path();
fs::path runtimePath3 = runtimeDir /
effectivePath3.relative_path();
- fs::path pluginBuildPath = fs::current_path() /
fs::path("unit-tests/.libs") / pluginName;
+ fs::path pluginBuildPath = fs::current_path() / pluginName;
std::string error;
diff --git a/src/proxy/http/remap/unit-tests/test_RemapPlugin.cc
b/src/proxy/http/remap/unit-tests/test_RemapPlugin.cc
index dc9b657d34..0fc95f2727 100644
--- a/src/proxy/http/remap/unit-tests/test_RemapPlugin.cc
+++ b/src/proxy/http/remap/unit-tests/test_RemapPlugin.cc
@@ -44,7 +44,7 @@ std::error_code ec;
static fs::path sandboxDir = getTemporaryDir();
static fs::path runtimeDir = sandboxDir / "runtime";
static fs::path searchDir = sandboxDir / "search";
-static fs::path pluginBuildDir = fs::current_path() / "unit-tests/.libs";
+static fs::path pluginBuildDir = fs::current_path();
void
clean()
@@ -106,7 +106,7 @@ setupSandBox(const fs::path configPath)
bool
loadPlugin(RemapPluginUnitTest *plugin, std::string &error, PluginDebugObject
*&debugObject)
{
- bool result = plugin->load(error);
+ bool result = plugin->load(error, fs::path()); // Dummy compiler path.
debugObject = plugin->getDebugObject();
return result;
}