This is an automated email from the ASF dual-hosted git repository.

szaszm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git

commit 7312a966f89f6d0a17920e83b0d864780035bd99
Author: Adam Debreceni <adebrec...@apache.org>
AuthorDate: Fri Oct 6 14:17:27 2023 +0200

    MINIFICPP-2178 Move tests to their extension's directory
    
    Closes #1658
    
    Signed-off-by: Marton Szasz <sza...@apache.org>
---
 extensions/azure/CMakeLists.txt                    |  2 +-
 .../azure/tests}/AzureBlobStorageTestsFixture.h    |  4 +--
 .../tests}/AzureDataLakeStorageTestsFixture.h      |  4 +--
 .../azure/tests}/CMakeLists.txt                    |  1 +
 .../azure/tests}/DeleteAzureBlobStorageTests.cpp   |  0
 .../tests}/DeleteAzureDataLakeStorageTests.cpp     |  0
 .../azure/tests}/FetchAzureBlobStorageTests.cpp    |  0
 .../tests}/FetchAzureDataLakeStorageTests.cpp      |  2 +-
 .../azure/tests}/ListAzureBlobStorageTests.cpp     |  6 ++--
 .../azure/tests}/ListAzureDataLakeStorageTests.cpp |  6 ++--
 .../azure/tests}/MockBlobStorage.h                 |  0
 .../azure/tests}/MockDataLakeStorageClient.h       |  0
 .../azure/tests}/PutAzureBlobStorageTests.cpp      |  0
 .../azure/tests}/PutAzureDataLakeStorageTests.cpp  |  0
 extensions/gps/CMakeLists.txt                      |  2 +-
 .../gps/tests}/CMakeLists.txt                      |  1 +
 .../gps/tests}/GPSTests.cpp                        |  6 ++--
 extensions/jni/CMakeLists.txt                      |  2 +-
 extensions/libarchive/ArchiveTests.h               |  6 ++--
 extensions/libarchive/CMakeLists.txt               |  2 +-
 .../libarchive/tests}/ArchiveStreamTests.cpp       | 12 +++-----
 .../libarchive/tests}/CMakeLists.txt               |  3 +-
 .../libarchive/tests}/CompressContentTests.cpp     |  8 ++---
 .../libarchive/tests}/FocusArchiveTests.cpp        |  6 ++--
 .../libarchive/tests}/ManipulateArchiveTests.cpp   | 32 +++++++++----------
 .../libarchive/tests}/MergeFileTests.cpp           |  8 ++---
 .../libarchive/tests}/util/ArchiveTests.cpp        | 14 ++++-----
 extensions/pcap/CMakeLists.txt                     |  2 +-
 .../pcap/tests}/CMakeLists.txt                     |  0
 .../pcap/tests}/PcapTest.cpp                       |  4 +--
 extensions/rocksdb-repos/CMakeLists.txt            |  2 +-
 .../rocksdb-repos/tests}/CMakeLists.txt            |  1 +
 .../rocksdb-repos/tests}/ContentSessionTests.cpp   |  4 +--
 .../tests}/DBContentRepositoryTests.cpp            |  8 ++---
 .../tests}/DBProvenanceRepositoryTests.cpp         |  8 ++---
 .../rocksdb-repos/tests}/EncryptionTests.cpp       |  4 +--
 .../rocksdb-repos/tests}/ProvenanceTests.cpp       |  6 ++--
 .../rocksdb-repos/tests}/RepoTests.cpp             |  6 ++--
 .../rocksdb-repos/tests}/RocksDBStreamTests.cpp    | 12 ++++----
 .../rocksdb-repos/tests}/RocksDBTests.cpp          | 14 ++++-----
 .../rocksdb-repos/tests}/SwapTests.cpp             |  8 ++---
 extensions/sensors/CMakeLists.txt                  |  2 +-
 .../sensors/tests}/CMakeLists.txt                  |  0
 .../sensors/tests}/SensorTests.cpp                 |  6 ++--
 extensions/sql/CMakeLists.txt                      |  2 +-
 .../sql/tests}/CMakeLists.txt                      |  0
 .../sql/tests}/ExecuteSQLTests.cpp                 |  0
 .../sql/tests}/FlowFileMatcher.h                   |  4 +--
 .../sql/tests}/PutSQLTests.cpp                     |  4 +--
 .../sql/tests}/QueryDatabaseTableTests.cpp         |  4 +--
 .../sql/tests}/SQLColumnIdentifierTests.cpp        |  4 +--
 .../sql/tests}/SQLTestController.h                 |  4 +--
 .../sql/tests}/SQLTestPlan.h                       |  4 +--
 .../sql/tests}/mocks/MockConnectors.cpp            |  0
 .../sql/tests}/mocks/MockConnectors.h              |  0
 .../sql/tests}/mocks/MockODBCService.h             |  0
 extensions/usb-camera/CMakeLists.txt               |  2 +-
 libminifi/test/SingleProcessorTestController.h     |  2 +-
 libminifi/test/Utils.h                             |  2 +-
 libminifi/test/coap-tests/CMakeLists.txt           | 32 -------------------
 libminifi/test/jni-tests/CMakeLists.txt            | 36 ----------------------
 libminifi/test/usb-camera-tests/CMakeLists.txt     | 34 --------------------
 62 files changed, 124 insertions(+), 224 deletions(-)

diff --git a/extensions/azure/CMakeLists.txt b/extensions/azure/CMakeLists.txt
index 34c1ab50b..eab013088 100644
--- a/extensions/azure/CMakeLists.txt
+++ b/extensions/azure/CMakeLists.txt
@@ -45,6 +45,6 @@ if (WIN32)
     target_link_libraries(minifi-azure crypt32.lib bcrypt.lib)
 endif()
 
-register_extension(minifi-azure "AZURE EXTENSIONS" AZURE-EXTENSIONS "This 
enables Azure support" "${TEST_DIR}/azure-tests")
+register_extension(minifi-azure "AZURE EXTENSIONS" AZURE-EXTENSIONS "This 
enables Azure support" "extensions/azure/tests")
 
 register_extension_linter(minifi-azure-extensions-linter)
diff --git a/libminifi/test/azure-tests/AzureBlobStorageTestsFixture.h 
b/extensions/azure/tests/AzureBlobStorageTestsFixture.h
similarity index 99%
rename from libminifi/test/azure-tests/AzureBlobStorageTestsFixture.h
rename to extensions/azure/tests/AzureBlobStorageTestsFixture.h
index 9f08b5576..002bd3e65 100644
--- a/libminifi/test/azure-tests/AzureBlobStorageTestsFixture.h
+++ b/extensions/azure/tests/AzureBlobStorageTestsFixture.h
@@ -24,8 +24,8 @@
 #include <vector>
 #include <memory>
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "core/Processor.h"
 #include "processors/GetFile.h"
 #include "processors/PutFile.h"
diff --git a/libminifi/test/azure-tests/AzureDataLakeStorageTestsFixture.h 
b/extensions/azure/tests/AzureDataLakeStorageTestsFixture.h
similarity index 99%
rename from libminifi/test/azure-tests/AzureDataLakeStorageTestsFixture.h
rename to extensions/azure/tests/AzureDataLakeStorageTestsFixture.h
index dbb0ba912..b2319ce63 100644
--- a/libminifi/test/azure-tests/AzureDataLakeStorageTestsFixture.h
+++ b/extensions/azure/tests/AzureDataLakeStorageTestsFixture.h
@@ -25,8 +25,8 @@
 #include <string>
 
 #include "MockDataLakeStorageClient.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "utils/TestUtils.h"
 #include "utils/IntegrationTestUtils.h"
 #include "core/Processor.h"
diff --git a/libminifi/test/azure-tests/CMakeLists.txt 
b/extensions/azure/tests/CMakeLists.txt
similarity index 95%
rename from libminifi/test/azure-tests/CMakeLists.txt
rename to extensions/azure/tests/CMakeLists.txt
index 189c75662..59b87529f 100644
--- a/libminifi/test/azure-tests/CMakeLists.txt
+++ b/extensions/azure/tests/CMakeLists.txt
@@ -27,6 +27,7 @@ FOREACH(testfile ${AZURE_INTEGRATION_TESTS})
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/azure")
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/azure/storage")
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/expression-language")
+    target_include_directories(${testfilename} BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/libminifi/test")
     target_compile_features(${testfilename} PRIVATE cxx_std_14)
     createTests("${testfilename}")
     target_link_libraries(${testfilename} Catch2WithMain)
diff --git a/libminifi/test/azure-tests/DeleteAzureBlobStorageTests.cpp 
b/extensions/azure/tests/DeleteAzureBlobStorageTests.cpp
similarity index 100%
rename from libminifi/test/azure-tests/DeleteAzureBlobStorageTests.cpp
rename to extensions/azure/tests/DeleteAzureBlobStorageTests.cpp
diff --git a/libminifi/test/azure-tests/DeleteAzureDataLakeStorageTests.cpp 
b/extensions/azure/tests/DeleteAzureDataLakeStorageTests.cpp
similarity index 100%
rename from libminifi/test/azure-tests/DeleteAzureDataLakeStorageTests.cpp
rename to extensions/azure/tests/DeleteAzureDataLakeStorageTests.cpp
diff --git a/libminifi/test/azure-tests/FetchAzureBlobStorageTests.cpp 
b/extensions/azure/tests/FetchAzureBlobStorageTests.cpp
similarity index 100%
rename from libminifi/test/azure-tests/FetchAzureBlobStorageTests.cpp
rename to extensions/azure/tests/FetchAzureBlobStorageTests.cpp
diff --git a/libminifi/test/azure-tests/FetchAzureDataLakeStorageTests.cpp 
b/extensions/azure/tests/FetchAzureDataLakeStorageTests.cpp
similarity index 99%
rename from libminifi/test/azure-tests/FetchAzureDataLakeStorageTests.cpp
rename to extensions/azure/tests/FetchAzureDataLakeStorageTests.cpp
index bfa10bab2..52ccf8cb7 100644
--- a/libminifi/test/azure-tests/FetchAzureDataLakeStorageTests.cpp
+++ b/extensions/azure/tests/FetchAzureDataLakeStorageTests.cpp
@@ -22,7 +22,7 @@
 
 namespace {
 
-using namespace std::chrono_literals;
+using namespace std::literals::chrono_literals;
 
 using FetchAzureDataLakeStorageTestsFixture = 
AzureDataLakeStorageTestsFixture<minifi::azure::processors::FetchAzureDataLakeStorage>;
 
diff --git a/libminifi/test/azure-tests/ListAzureBlobStorageTests.cpp 
b/extensions/azure/tests/ListAzureBlobStorageTests.cpp
similarity index 99%
rename from libminifi/test/azure-tests/ListAzureBlobStorageTests.cpp
rename to extensions/azure/tests/ListAzureBlobStorageTests.cpp
index 6b05710d9..f658e68bf 100644
--- a/libminifi/test/azure-tests/ListAzureBlobStorageTests.cpp
+++ b/extensions/azure/tests/ListAzureBlobStorageTests.cpp
@@ -16,8 +16,8 @@
  * limitations under the License.
  */
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "MockBlobStorage.h"
 #include "utils/IntegrationTestUtils.h"
 #include "processors/LogAttribute.h"
@@ -78,7 +78,7 @@ class ListAzureBlobStorageTestsFixture {
 
 namespace {
 
-using namespace std::chrono_literals;
+using namespace std::literals::chrono_literals;
 
 TEST_CASE_METHOD(ListAzureBlobStorageTestsFixture, "Test credentials 
settings", "[azureStorageCredentials]") {
   plan_->setProperty(list_azure_blob_storage_, "Container Name", 
CONTAINER_NAME);
diff --git a/libminifi/test/azure-tests/ListAzureDataLakeStorageTests.cpp 
b/extensions/azure/tests/ListAzureDataLakeStorageTests.cpp
similarity index 99%
rename from libminifi/test/azure-tests/ListAzureDataLakeStorageTests.cpp
rename to extensions/azure/tests/ListAzureDataLakeStorageTests.cpp
index 2f01f941f..071a7a377 100644
--- a/libminifi/test/azure-tests/ListAzureDataLakeStorageTests.cpp
+++ b/extensions/azure/tests/ListAzureDataLakeStorageTests.cpp
@@ -16,8 +16,8 @@
  * limitations under the License.
  */
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "MockDataLakeStorageClient.h"
 #include "utils/IntegrationTestUtils.h"
 #include "processors/LogAttribute.h"
@@ -79,7 +79,7 @@ class ListAzureDataLakeStorageTestsFixture {
 
 namespace {
 
-using namespace std::chrono_literals;
+using namespace std::literals::chrono_literals;
 
 TEST_CASE_METHOD(ListAzureDataLakeStorageTestsFixture, "Azure storage 
credentials service is empty", "[azureDataLakeStorageParameters]") {
   plan_->setProperty(list_azure_data_lake_storage_, 
minifi::azure::processors::ListAzureDataLakeStorage::AzureStorageCredentialsService,
 "");
diff --git a/libminifi/test/azure-tests/MockBlobStorage.h 
b/extensions/azure/tests/MockBlobStorage.h
similarity index 100%
rename from libminifi/test/azure-tests/MockBlobStorage.h
rename to extensions/azure/tests/MockBlobStorage.h
diff --git a/libminifi/test/azure-tests/MockDataLakeStorageClient.h 
b/extensions/azure/tests/MockDataLakeStorageClient.h
similarity index 100%
rename from libminifi/test/azure-tests/MockDataLakeStorageClient.h
rename to extensions/azure/tests/MockDataLakeStorageClient.h
diff --git a/libminifi/test/azure-tests/PutAzureBlobStorageTests.cpp 
b/extensions/azure/tests/PutAzureBlobStorageTests.cpp
similarity index 100%
rename from libminifi/test/azure-tests/PutAzureBlobStorageTests.cpp
rename to extensions/azure/tests/PutAzureBlobStorageTests.cpp
diff --git a/libminifi/test/azure-tests/PutAzureDataLakeStorageTests.cpp 
b/extensions/azure/tests/PutAzureDataLakeStorageTests.cpp
similarity index 100%
rename from libminifi/test/azure-tests/PutAzureDataLakeStorageTests.cpp
rename to extensions/azure/tests/PutAzureDataLakeStorageTests.cpp
diff --git a/extensions/gps/CMakeLists.txt b/extensions/gps/CMakeLists.txt
index 03be15211..32f7df875 100644
--- a/extensions/gps/CMakeLists.txt
+++ b/extensions/gps/CMakeLists.txt
@@ -35,5 +35,5 @@ add_library(minifi-gps SHARED ${SOURCES})
 target_link_libraries(minifi-gps ${LIBMINIFI} )
 target_link_libraries(minifi-gps ${LIBGPS_LIBRARIES})
 
-register_extension(minifi-gps "GPS EXTENSIONS" GPS-EXTENSION "Enables LibGPS 
Functionality and the GetGPS processor." "${TEST_DIR}/gps-tests")
+register_extension(minifi-gps "GPS EXTENSIONS" GPS-EXTENSION "Enables LibGPS 
Functionality and the GetGPS processor." "extensions/gps/tests")
 register_extension_linter(minifi-gps-linter)
diff --git a/libminifi/test/gps-tests/CMakeLists.txt 
b/extensions/gps/tests/CMakeLists.txt
similarity index 94%
rename from libminifi/test/gps-tests/CMakeLists.txt
rename to extensions/gps/tests/CMakeLists.txt
index 3744842df..59600debd 100644
--- a/libminifi/test/gps-tests/CMakeLists.txt
+++ b/extensions/gps/tests/CMakeLists.txt
@@ -24,6 +24,7 @@ FOREACH(testfile ${GPS_INTEGRATION_TESTS})
     add_executable("${testfilename}" "${testfile}")
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/standard-processors")
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/gps/")
+    target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/libminifi/test/")
     createTests("${testfilename}")
     target_link_libraries(${testfilename} minifi-gps)
     target_link_libraries(${testfilename} minifi-standard-processors)
diff --git a/libminifi/test/gps-tests/GPSTests.cpp 
b/extensions/gps/tests/GPSTests.cpp
similarity index 96%
rename from libminifi/test/gps-tests/GPSTests.cpp
rename to extensions/gps/tests/GPSTests.cpp
index c95f50cb7..40a322de6 100644
--- a/libminifi/test/gps-tests/GPSTests.cpp
+++ b/extensions/gps/tests/GPSTests.cpp
@@ -33,9 +33,9 @@
 #include "FlowController.h"
 #include "GetGPS.h"
 #include "processors/GetFile.h"
-#include "../TestBase.h"
-#include "../Catch.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "TestBase.h"
+#include "Catch.h"
+#include "unit/ProvenanceTestHelper.h"
 
 TEST_CASE("GPSD Create", "[gpsdtest1]") {
   TestController testController;
diff --git a/extensions/jni/CMakeLists.txt b/extensions/jni/CMakeLists.txt
index d66e19bcd..ec6275b15 100644
--- a/extensions/jni/CMakeLists.txt
+++ b/extensions/jni/CMakeLists.txt
@@ -111,5 +111,5 @@ else()
     target_link_libraries (minifi-jni ${JAVA_JVM_LIBRARY})
 endif()
 
-register_extension(minifi-jni "JNI EXTENSIONS" JNI-EXTENSION "Enables JNI 
capabilities to support loading Java Classes." "${TEST_DIR}/jni-tests")
+register_extension(minifi-jni "JNI EXTENSIONS" JNI-EXTENSION "Enables JNI 
capabilities to support loading Java Classes.")
 register_extension_linter(minifi-jni-linter)
diff --git a/extensions/libarchive/ArchiveTests.h 
b/extensions/libarchive/ArchiveTests.h
index 7f349b3b4..a2bc076f9 100644
--- a/extensions/libarchive/ArchiveTests.h
+++ b/extensions/libarchive/ArchiveTests.h
@@ -50,11 +50,11 @@ typedef struct {
     FN_VEC_T order;
 } OrderedTestArchive;
 
-TAE_MAP_T build_test_archive_map(int, const char**, const char**);
+TAE_MAP_T build_test_archive_map(int, const char* const*, const char* const*);
 
-FN_VEC_T build_test_archive_order(int, const char**);
+FN_VEC_T build_test_archive_order(int, const char* const*);
 
-OrderedTestArchive build_ordered_test_archive(int, const char**, const char**);
+OrderedTestArchive build_ordered_test_archive(int, const char* const*, const 
char* const*);
 
 void build_test_archive(const std::filesystem::path&, const TAE_MAP_T& 
entries, FN_VEC_T order = FN_VEC_T());
 void build_test_archive(const std::filesystem::path&, OrderedTestArchive&);
diff --git a/extensions/libarchive/CMakeLists.txt 
b/extensions/libarchive/CMakeLists.txt
index 2b89d3ea7..12a604b76 100644
--- a/extensions/libarchive/CMakeLists.txt
+++ b/extensions/libarchive/CMakeLists.txt
@@ -39,5 +39,5 @@ add_library(minifi-archive-extensions SHARED ${SOURCES})
 target_link_libraries(minifi-archive-extensions ${LIBMINIFI} Threads::Threads)
 target_link_libraries(minifi-archive-extensions LibArchive::LibArchive)
 
-register_extension(minifi-archive-extensions "ARCHIVE EXTENSIONS" 
ARCHIVE-EXTENSIONS "This Enables libarchive functionality including 
MergeContent, CompressContent, (Un)FocusArchiveEntry and ManipulateArchive." 
"${TEST_DIR}/archive-tests")
+register_extension(minifi-archive-extensions "ARCHIVE EXTENSIONS" 
ARCHIVE-EXTENSIONS "This Enables libarchive functionality including 
MergeContent, CompressContent, (Un)FocusArchiveEntry and ManipulateArchive." 
"extensions/libarchive/tests")
 register_extension_linter(minifi-archive-extensions-linter)
diff --git a/libminifi/test/archive-tests/ArchiveStreamTests.cpp 
b/extensions/libarchive/tests/ArchiveStreamTests.cpp
similarity index 86%
rename from libminifi/test/archive-tests/ArchiveStreamTests.cpp
rename to extensions/libarchive/tests/ArchiveStreamTests.cpp
index cbb13ac10..072ed7183 100644
--- a/libminifi/test/archive-tests/ArchiveStreamTests.cpp
+++ b/extensions/libarchive/tests/ArchiveStreamTests.cpp
@@ -16,23 +16,21 @@
  * limitations under the License.
  */
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "WriteArchiveStream.h"
 #include "ReadArchiveStream.h"
 
-using namespace minifi;
-
 TEST_CASE("Create and read archive") {
   std::map<std::string, std::string> files{
       {"a.txt", "hello, I'm file A"},
       {"b.txt", "hello, I'm file B"}
   };
 
-  auto archive = std::make_shared<io::BufferStream>();
+  auto archive = std::make_shared<minifi::io::BufferStream>();
 
   {
-    io::WriteArchiveStreamImpl compressor(9, io::CompressionFormat::GZIP, 
archive);
+    minifi::io::WriteArchiveStreamImpl compressor(9, 
minifi::io::CompressionFormat::GZIP, archive);
 
     for (const auto& [filename, content] : files) {
       REQUIRE(compressor.newEntry({filename, content.length()}));
@@ -41,7 +39,7 @@ TEST_CASE("Create and read archive") {
   }
 
   {
-    io::ReadArchiveStreamImpl decompressor(archive);
+    minifi::io::ReadArchiveStreamImpl decompressor(archive);
 
     size_t extracted_entries = 0;
     while (auto info = decompressor.nextEntry()) {
diff --git a/libminifi/test/archive-tests/CMakeLists.txt 
b/extensions/libarchive/tests/CMakeLists.txt
similarity index 90%
rename from libminifi/test/archive-tests/CMakeLists.txt
rename to extensions/libarchive/tests/CMakeLists.txt
index 6c35ccc60..64a068a49 100644
--- a/libminifi/test/archive-tests/CMakeLists.txt
+++ b/extensions/libarchive/tests/CMakeLists.txt
@@ -22,9 +22,10 @@ file(GLOB ARCHIVE_INTEGRATION_TESTS  "*.cpp")
 SET(EXTENSIONS_TEST_COUNT 0)
 FOREACH(testfile ${ARCHIVE_INTEGRATION_TESTS})
     get_filename_component(testfilename "${testfile}" NAME_WE)
-    add_executable("${testfilename}" "${testfile}" 
"${TEST_DIR}/archive-tests/util/ArchiveTests.cpp")
+    add_executable("${testfilename}" "${testfile}" "util/ArchiveTests.cpp")
     target_include_directories(${testfilename} BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/extensions/libarchive")
     target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/standard-processors")
+    target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/libminifi/test/")
     target_link_libraries(${testfilename} minifi-archive-extensions)
     target_link_libraries(${testfilename} minifi-standard-processors)
     createTests("${testfilename}")
diff --git a/libminifi/test/archive-tests/CompressContentTests.cpp 
b/extensions/libarchive/tests/CompressContentTests.cpp
similarity index 99%
rename from libminifi/test/archive-tests/CompressContentTests.cpp
rename to extensions/libarchive/tests/CompressContentTests.cpp
index e70b67e99..eb8b7d064 100644
--- a/libminifi/test/archive-tests/CompressContentTests.cpp
+++ b/extensions/libarchive/tests/CompressContentTests.cpp
@@ -27,11 +27,11 @@
 #include <iostream>
 
 #include "FlowController.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "core/Core.h"
 #include "../../include/core/FlowFile.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "unit/ProvenanceTestHelper.h"
 #include "core/Processor.h"
 #include "core/ProcessContext.h"
 #include "core/ProcessSession.h"
@@ -43,7 +43,7 @@
 #include "processors/GetFile.h"
 #include "processors/PutFile.h"
 #include "utils/file/FileUtils.h"
-#include "../Utils.h"
+#include "Utils.h"
 #include "utils/gsl.h"
 
 class ReadCallback {
diff --git a/libminifi/test/archive-tests/FocusArchiveTests.cpp 
b/extensions/libarchive/tests/FocusArchiveTests.cpp
similarity index 98%
rename from libminifi/test/archive-tests/FocusArchiveTests.cpp
rename to extensions/libarchive/tests/FocusArchiveTests.cpp
index dee7434f1..8b54fd8cb 100644
--- a/libminifi/test/archive-tests/FocusArchiveTests.cpp
+++ b/extensions/libarchive/tests/FocusArchiveTests.cpp
@@ -32,10 +32,10 @@
 #include "processors/LogAttribute.h"
 #include "processors/PutFile.h"
 #include "UnfocusArchiveEntry.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "repository/VolatileContentRepository.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "unit/ProvenanceTestHelper.h"
 
 namespace org::apache::nifi::minifi::processors::test {
 
diff --git a/libminifi/test/archive-tests/ManipulateArchiveTests.cpp 
b/extensions/libarchive/tests/ManipulateArchiveTests.cpp
similarity index 93%
rename from libminifi/test/archive-tests/ManipulateArchiveTests.cpp
rename to extensions/libarchive/tests/ManipulateArchiveTests.cpp
index e4db56c9f..bddea2128 100644
--- a/libminifi/test/archive-tests/ManipulateArchiveTests.cpp
+++ b/extensions/libarchive/tests/ManipulateArchiveTests.cpp
@@ -21,8 +21,8 @@
 #include <memory>
 #include <utility>
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "ArchiveTests.h"
 #include "core/PropertyDefinition.h"
 #include "processors/GetFile.h"
@@ -31,13 +31,13 @@
 #include "ManipulateArchive.h"
 #include "FocusArchiveEntry.h"
 #include "UnfocusArchiveEntry.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "unit/ProvenanceTestHelper.h"
 #include "repository/VolatileContentRepository.h"
 
-const char TEST_ARCHIVE_NAME[] = "manipulate_test_archive.tar";
+constexpr const char* TEST_ARCHIVE_NAME = "manipulate_test_archive.tar";
 const int NUM_FILES = 3;
-const char* FILE_NAMES[NUM_FILES] = {"first", "middle", "last"};
-const char* FILE_CONTENT[NUM_FILES] = {"Test file 1\n", "Test file 2\n", "Test 
file 3\n"};
+constexpr std::array<const char*, NUM_FILES> FILE_NAMES = {"first", "middle", 
"last"};
+constexpr std::array<const char*, NUM_FILES> FILE_CONTENT = {"Test file 1\n", 
"Test file 2\n", "Test file 3\n"};
 
 const char* MODIFY_SRC = FILE_NAMES[0];
 const char* ORDER_ANCHOR = FILE_NAMES[1];
@@ -116,7 +116,7 @@ TEST_CASE("Test creation of ManipulateArchive", 
"[manipulatearchiveCreate]") {
 }
 
 TEST_CASE("Test ManipulateArchive Touch", "[testManipulateArchiveTouch]") {
-  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, FILE_NAMES, 
FILE_CONTENT);
+  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Destination, MODIFY_DEST},
@@ -139,7 +139,7 @@ TEST_CASE("Test ManipulateArchive Touch", 
"[testManipulateArchiveTouch]") {
 }
 
 TEST_CASE("Test ManipulateArchive Copy", "[testManipulateArchiveCopy]") {
-  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, FILE_NAMES, 
FILE_CONTENT);
+  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -155,7 +155,7 @@ TEST_CASE("Test ManipulateArchive Copy", 
"[testManipulateArchiveCopy]") {
 }
 
 TEST_CASE("Test ManipulateArchive Move", "[testManipulateArchiveMove]") {
-  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, FILE_NAMES, 
FILE_CONTENT);
+  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -176,7 +176,7 @@ TEST_CASE("Test ManipulateArchive Move", 
"[testManipulateArchiveMove]") {
 }
 
 TEST_CASE("Test ManipulateArchive Remove", "[testManipulateArchiveRemove]") {
-  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, FILE_NAMES, 
FILE_CONTENT);
+  TAE_MAP_T test_archive_map = build_test_archive_map(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -193,7 +193,7 @@ TEST_CASE("Test ManipulateArchive Remove", 
"[testManipulateArchiveRemove]") {
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Touch (before)", 
"[testManipulateArchiveOrderedTouchBefore]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Destination, MODIFY_DEST},
@@ -220,7 +220,7 @@ TEST_CASE("Test ManipulateArchive Ordered Touch (before)", 
"[testManipulateArchi
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Copy (before)", 
"[testManipulateArchiveOrderedCopyBefore]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -239,7 +239,7 @@ TEST_CASE("Test ManipulateArchive Ordered Copy (before)", 
"[testManipulateArchiv
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Move (before)", 
"[testManipulateArchiveOrderedMoveBefore]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -267,7 +267,7 @@ TEST_CASE("Test ManipulateArchive Ordered Move (before)", 
"[testManipulateArchiv
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Touch (after)", 
"[testManipulateArchiveOrderedTouchAfter]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Destination, MODIFY_DEST},
@@ -295,7 +295,7 @@ TEST_CASE("Test ManipulateArchive Ordered Touch (after)", 
"[testManipulateArchiv
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Copy (after)", 
"[testManipulateArchiveOrderedCopyAfter]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
@@ -315,7 +315,7 @@ TEST_CASE("Test ManipulateArchive Ordered Copy (after)", 
"[testManipulateArchive
 }
 
 TEST_CASE("Test ManipulateArchive Ordered Move (after)", 
"[testManipulateArchiveOrderedMoveAfter]") {
-  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES, FILE_CONTENT);
+  OrderedTestArchive test_archive = build_ordered_test_archive(NUM_FILES, 
FILE_NAMES.data(), FILE_CONTENT.data());
 
   PROP_MAP_T properties{
       {ManipulateArchive::Target, MODIFY_SRC},
diff --git a/libminifi/test/archive-tests/MergeFileTests.cpp 
b/extensions/libarchive/tests/MergeFileTests.cpp
similarity index 99%
rename from libminifi/test/archive-tests/MergeFileTests.cpp
rename to extensions/libarchive/tests/MergeFileTests.cpp
index e23ca8b4d..af43a801b 100644
--- a/libminifi/test/archive-tests/MergeFileTests.cpp
+++ b/extensions/libarchive/tests/MergeFileTests.cpp
@@ -35,12 +35,12 @@
 #include "../../include/core/FlowFile.h"
 #include "MergeContent.h"
 #include "processors/LogAttribute.h"
-#include "../TestBase.h"
-#include "../Catch.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "TestBase.h"
+#include "Catch.h"
+#include "unit/ProvenanceTestHelper.h"
 #include "serialization/FlowFileV3Serializer.h"
 #include "serialization/PayloadSerializer.h"
-#include "../Utils.h"
+#include "Utils.h"
 #include "utils/gsl.h"
 #include "utils/span.h"
 
diff --git a/libminifi/test/archive-tests/util/ArchiveTests.cpp 
b/extensions/libarchive/tests/util/ArchiveTests.cpp
similarity index 93%
rename from libminifi/test/archive-tests/util/ArchiveTests.cpp
rename to extensions/libarchive/tests/util/ArchiveTests.cpp
index 2874980a5..52eb8797c 100644
--- a/libminifi/test/archive-tests/util/ArchiveTests.cpp
+++ b/extensions/libarchive/tests/util/ArchiveTests.cpp
@@ -27,11 +27,11 @@
 #include <string>
 #include <utility>
 
-#include "../../TestBase.h"
-#include "../../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "utils/gsl.h"
 
-TAE_MAP_T build_test_archive_map(int NUM_FILES, const char** FILE_NAMES, const 
char** FILE_CONTENT) {
+TAE_MAP_T build_test_archive_map(int NUM_FILES, const char* const* FILE_NAMES, 
const char* const* FILE_CONTENT) {
   TAE_MAP_T test_entries;
 
   for (int i = 0; i < NUM_FILES; i++) {
@@ -54,14 +54,14 @@ TAE_MAP_T build_test_archive_map(int NUM_FILES, const 
char** FILE_NAMES, const c
   return test_entries;
 }
 
-FN_VEC_T build_test_archive_order(int NUM_FILES, const char** FILE_NAMES) {
+FN_VEC_T build_test_archive_order(int NUM_FILES, const char* const* 
FILE_NAMES) {
   FN_VEC_T ret;
   for (int i = 0; i < NUM_FILES; i++)
     ret.push_back(FILE_NAMES[i]);
   return ret;
 }
 
-OrderedTestArchive build_ordered_test_archive(int NUM_FILES, const char** 
FILE_NAMES, const char** FILE_CONTENT) {
+OrderedTestArchive build_ordered_test_archive(int NUM_FILES, const char* 
const* FILE_NAMES, const char* const* FILE_CONTENT) {
   OrderedTestArchive ret;
   ret.map = build_test_archive_map(NUM_FILES, FILE_NAMES, FILE_CONTENT);
   ret.order = build_test_archive_order(NUM_FILES, FILE_NAMES);
@@ -88,7 +88,7 @@ void build_test_archive(const std::filesystem::path& path, 
const TAE_MAP_T& entr
 
     archive_entry_set_filetype(entry, test_entry.type);
     archive_entry_set_pathname(entry, test_entry.name.c_str());
-    archive_entry_set_size(entry, test_entry.size);
+    archive_entry_set_size(entry, gsl::narrow<la_int64_t>(test_entry.size));
     archive_entry_set_perm(entry, test_entry.perms);
     archive_entry_set_uid(entry, test_entry.uid);
     archive_entry_set_gid(entry, test_entry.gid);
@@ -113,7 +113,7 @@ bool check_archive_contents(const std::filesystem::path& 
path, const TAE_MAP_T&
   FN_VEC_T extra_names;
   bool ok = true;
   struct archive *a = archive_read_new();
-  struct archive_entry *entry;
+  struct archive_entry *entry = nullptr;
 
   archive_read_support_format_all(a);
   archive_read_support_filter_all(a);
diff --git a/extensions/pcap/CMakeLists.txt b/extensions/pcap/CMakeLists.txt
index a243a202a..a0e659d8b 100644
--- a/extensions/pcap/CMakeLists.txt
+++ b/extensions/pcap/CMakeLists.txt
@@ -73,5 +73,5 @@ endif ()
 
 target_link_libraries(minifi-pcap ${LIBMINIFI} Threads::Threads)
 
-register_extension(minifi-pcap "PCAP EXTENSIONS" PCAP-EXTENSION "Enables 
libPCAP Functionality and the PacketCapture processor." 
"${TEST_DIR}/pcap-tests")
+register_extension(minifi-pcap "PCAP EXTENSIONS" PCAP-EXTENSION "Enables 
libPCAP Functionality and the PacketCapture processor." "extensions/pcap/tests")
 register_extension_linter(minifi-pcap-linter)
diff --git a/libminifi/test/pcap-tests/CMakeLists.txt 
b/extensions/pcap/tests/CMakeLists.txt
similarity index 100%
rename from libminifi/test/pcap-tests/CMakeLists.txt
rename to extensions/pcap/tests/CMakeLists.txt
diff --git a/libminifi/test/pcap-tests/PcapTest.cpp 
b/extensions/pcap/tests/PcapTest.cpp
similarity index 97%
rename from libminifi/test/pcap-tests/PcapTest.cpp
rename to extensions/pcap/tests/PcapTest.cpp
index 94ad71350..9d79eee64 100644
--- a/libminifi/test/pcap-tests/PcapTest.cpp
+++ b/extensions/pcap/tests/PcapTest.cpp
@@ -20,12 +20,12 @@
 #include <cassert>
 #include <chrono>
 #include <string>
-#include "../TestBase.h"
+#include "TestBase.h"
 #include "core/ProcessGroup.h"
 #include "FlowController.h"
 #include "core/ConfigurableComponent.h"
 #include "core/state/ProcessorController.h"
-#include "../integration/IntegrationBase.h"
+#include "integration/IntegrationBase.h"
 #include "CapturePacket.h"
 #include "utils/IntegrationTestUtils.h"
 
diff --git a/extensions/rocksdb-repos/CMakeLists.txt 
b/extensions/rocksdb-repos/CMakeLists.txt
index e6f20ad35..830a28e1e 100644
--- a/extensions/rocksdb-repos/CMakeLists.txt
+++ b/extensions/rocksdb-repos/CMakeLists.txt
@@ -38,5 +38,5 @@ add_library(minifi-rocksdb-repos SHARED ${SOURCES})
 target_link_libraries(minifi-rocksdb-repos ${LIBMINIFI} Threads::Threads)
 target_link_libraries(minifi-rocksdb-repos RocksDB::RocksDB)
 
-register_extension(minifi-rocksdb-repos "ROCKSDB REPOS" ROCKSDB-REPOS "This 
Enables persistent provenance, flowfile, and content repositories using 
RocksDB" "${TEST_DIR}/rocksdb-tests")
+register_extension(minifi-rocksdb-repos "ROCKSDB REPOS" ROCKSDB-REPOS "This 
Enables persistent provenance, flowfile, and content repositories using 
RocksDB" "extensions/rocksdb-repos/tests")
 register_extension_linter(minifi-rocksdb-repos-linter)
diff --git a/libminifi/test/rocksdb-tests/CMakeLists.txt 
b/extensions/rocksdb-repos/tests/CMakeLists.txt
similarity index 94%
rename from libminifi/test/rocksdb-tests/CMakeLists.txt
rename to extensions/rocksdb-repos/tests/CMakeLists.txt
index bad12b51c..400acd267 100644
--- a/libminifi/test/rocksdb-tests/CMakeLists.txt
+++ b/extensions/rocksdb-repos/tests/CMakeLists.txt
@@ -24,6 +24,7 @@ FOREACH(testfile ${ROCKSDB_UNIT_TESTS})
     add_executable("${testfilename}" "${testfile}")
     target_include_directories(${testfilename} BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/extensions/rocksdb-repos/")
     target_include_directories(${testfilename} SYSTEM BEFORE PRIVATE 
"${ROCKSDB_THIRDPARTY_ROOT}/include")
+    target_include_directories(${testfilename} BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/libminifi/test")
     createTests("${testfilename}")
     target_link_libraries(${testfilename} Catch2WithMain)
     target_link_libraries(${testfilename} minifi-rocksdb-repos)
diff --git a/libminifi/test/rocksdb-tests/ContentSessionTests.cpp 
b/extensions/rocksdb-repos/tests/ContentSessionTests.cpp
similarity index 99%
rename from libminifi/test/rocksdb-tests/ContentSessionTests.cpp
rename to extensions/rocksdb-repos/tests/ContentSessionTests.cpp
index 87723e8c5..79833612c 100644
--- a/libminifi/test/rocksdb-tests/ContentSessionTests.cpp
+++ b/extensions/rocksdb-repos/tests/ContentSessionTests.cpp
@@ -26,8 +26,8 @@
 #include "DatabaseContentRepository.h"
 #include "BufferedContentSession.h"
 #include "FlowFileRecord.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "utils/gsl.h"
 
 template<typename ContentRepositoryClass>
diff --git a/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp 
b/extensions/rocksdb-repos/tests/DBContentRepositoryTests.cpp
similarity index 98%
rename from libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp
rename to extensions/rocksdb-repos/tests/DBContentRepositoryTests.cpp
index 592418d7e..7ba2d81b1 100644
--- a/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp
+++ b/extensions/rocksdb-repos/tests/DBContentRepositoryTests.cpp
@@ -24,10 +24,10 @@
 #include "FlowFileRecord.h"
 #include "properties/Configure.h"
 #include "provenance/Provenance.h"
-#include "../TestBase.h"
-#include "../Catch.h"
-#include "../unit/ProvenanceTestHelper.h"
-#include "../unit/ContentRepositoryDependentTests.h"
+#include "TestBase.h"
+#include "Catch.h"
+#include "unit/ProvenanceTestHelper.h"
+#include "unit/ContentRepositoryDependentTests.h"
 #include "IntegrationTestUtils.h"
 
 class TestDatabaseContentRepository : public 
core::repository::DatabaseContentRepository {
diff --git a/libminifi/test/rocksdb-tests/DBProvenanceRepositoryTests.cpp 
b/extensions/rocksdb-repos/tests/DBProvenanceRepositoryTests.cpp
similarity index 95%
rename from libminifi/test/rocksdb-tests/DBProvenanceRepositoryTests.cpp
rename to extensions/rocksdb-repos/tests/DBProvenanceRepositoryTests.cpp
index 8f2e23138..ecd2d0266 100644
--- a/libminifi/test/rocksdb-tests/DBProvenanceRepositoryTests.cpp
+++ b/extensions/rocksdb-repos/tests/DBProvenanceRepositoryTests.cpp
@@ -22,11 +22,11 @@
 #include <vector>
 
 #include "ProvenanceRepository.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 
-#define TEST_PROVENANCE_STORAGE_SIZE (1024*100)  // 100 KB
-#define TEST_MAX_PROVENANCE_STORAGE_SIZE (100*1024*1024)  // 100 MB
+static constexpr size_t TEST_PROVENANCE_STORAGE_SIZE = 100_KiB;
+static constexpr size_t TEST_MAX_PROVENANCE_STORAGE_SIZE = 100_MiB;
 
 using namespace std::literals::chrono_literals;
 
diff --git a/libminifi/test/rocksdb-tests/EncryptionTests.cpp 
b/extensions/rocksdb-repos/tests/EncryptionTests.cpp
similarity index 98%
rename from libminifi/test/rocksdb-tests/EncryptionTests.cpp
rename to extensions/rocksdb-repos/tests/EncryptionTests.cpp
index 9dd6577f3..5c5377f29 100644
--- a/libminifi/test/rocksdb-tests/EncryptionTests.cpp
+++ b/extensions/rocksdb-repos/tests/EncryptionTests.cpp
@@ -16,8 +16,8 @@
  * limitations under the License.
  */
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "FlowFileRepository.h"
 #include "utils/IntegrationTestUtils.h"
 #include "repository/VolatileContentRepository.h"
diff --git a/libminifi/test/rocksdb-tests/ProvenanceTests.cpp 
b/extensions/rocksdb-repos/tests/ProvenanceTests.cpp
similarity index 98%
rename from libminifi/test/rocksdb-tests/ProvenanceTests.cpp
rename to extensions/rocksdb-repos/tests/ProvenanceTests.cpp
index 09e3d4e0b..98dcbea6c 100644
--- a/libminifi/test/rocksdb-tests/ProvenanceTests.cpp
+++ b/extensions/rocksdb-repos/tests/ProvenanceTests.cpp
@@ -27,9 +27,9 @@
 #include "core/RepositoryFactory.h"
 #include "FlowFileRecord.h"
 #include "provenance/Provenance.h"
-#include "../unit/ProvenanceTestHelper.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "unit/ProvenanceTestHelper.h"
+#include "TestBase.h"
+#include "Catch.h"
 
 namespace provenance = minifi::provenance;
 using namespace std::literals::chrono_literals;
diff --git a/libminifi/test/rocksdb-tests/RepoTests.cpp 
b/extensions/rocksdb-repos/tests/RepoTests.cpp
similarity index 99%
rename from libminifi/test/rocksdb-tests/RepoTests.cpp
rename to extensions/rocksdb-repos/tests/RepoTests.cpp
index 1294f4c40..a443c2631 100644
--- a/libminifi/test/rocksdb-tests/RepoTests.cpp
+++ b/extensions/rocksdb-repos/tests/RepoTests.cpp
@@ -31,9 +31,9 @@
 #include "ProvenanceRepository.h"
 #include "provenance/Provenance.h"
 #include "properties/Configure.h"
-#include "../unit/ProvenanceTestHelper.h"
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "unit/ProvenanceTestHelper.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "utils/gsl.h"
 #include "utils/IntegrationTestUtils.h"
 #include "core/repository/VolatileFlowFileRepository.h"
diff --git a/libminifi/test/rocksdb-tests/RocksDBStreamTests.cpp 
b/extensions/rocksdb-repos/tests/RocksDBStreamTests.cpp
similarity index 91%
rename from libminifi/test/rocksdb-tests/RocksDBStreamTests.cpp
rename to extensions/rocksdb-repos/tests/RocksDBStreamTests.cpp
index 63830b23a..4b8e2563d 100644
--- a/libminifi/test/rocksdb-tests/RocksDBStreamTests.cpp
+++ b/extensions/rocksdb-repos/tests/RocksDBStreamTests.cpp
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-#include "../TestBase.h"
-#include "../Catch.h"
-#include "../../extensions/rocksdb-repos/RocksDbStream.h"
-#include "../../extensions/rocksdb-repos/DatabaseContentRepository.h"
-#include "../../extensions/rocksdb-repos/database/StringAppender.h"
+#include "TestBase.h"
+#include "Catch.h"
+#include "../RocksDbStream.h"
+#include "../DatabaseContentRepository.h"
+#include "../database/StringAppender.h"
 
 class RocksDBStreamTest : TestController {
  public:
@@ -74,7 +74,7 @@ TEST_CASE_METHOD(RocksDBStreamTest, "Read zero bytes") {
 
   minifi::io::RocksDbStream stream("one", gsl::make_not_null(db.get()));
 
-  std::byte fake_buffer[1];
+  std::array<std::byte, 1> fake_buffer{};
   REQUIRE(stream.read(std::span(fake_buffer).subspan(0, 0)) == 0);
 
   minifi::io::RocksDbStream nonExistingStream("two", 
gsl::make_not_null(db.get()));
diff --git a/libminifi/test/rocksdb-tests/RocksDBTests.cpp 
b/extensions/rocksdb-repos/tests/RocksDBTests.cpp
similarity index 96%
rename from libminifi/test/rocksdb-tests/RocksDBTests.cpp
rename to extensions/rocksdb-repos/tests/RocksDBTests.cpp
index a17f1d494..51cea8e7c 100644
--- a/libminifi/test/rocksdb-tests/RocksDBTests.cpp
+++ b/extensions/rocksdb-repos/tests/RocksDBTests.cpp
@@ -17,15 +17,15 @@
 
 #include <fstream>
 
-#include "../TestBase.h"
-#include "../Catch.h"
-#include "../../extensions/rocksdb-repos/database/RocksDatabase.h"
-#include "../../extensions/rocksdb-repos/database/RocksDbInstance.h"
-#include "../../extensions/rocksdb-repos/database/ColumnHandle.h"
-#include "../../extensions/rocksdb-repos/database/DbHandle.h"
+#include "TestBase.h"
+#include "Catch.h"
+#include "../database/RocksDatabase.h"
+#include "../database/RocksDbInstance.h"
+#include "../database/ColumnHandle.h"
+#include "../database/DbHandle.h"
 #include "IntegrationTestUtils.h"
 #include "database/StringAppender.h"
-#include 
"../../extensions/rocksdb-repos/encryption/RocksDbEncryptionProvider.h"
+#include "../encryption/RocksDbEncryptionProvider.h"
 
 #undef NDEBUG
 
diff --git a/libminifi/test/rocksdb-tests/SwapTests.cpp 
b/extensions/rocksdb-repos/tests/SwapTests.cpp
similarity index 98%
rename from libminifi/test/rocksdb-tests/SwapTests.cpp
rename to extensions/rocksdb-repos/tests/SwapTests.cpp
index 206bda8c2..9904712ad 100644
--- a/libminifi/test/rocksdb-tests/SwapTests.cpp
+++ b/extensions/rocksdb-repos/tests/SwapTests.cpp
@@ -15,19 +15,19 @@
  * limitations under the License.
  */
 
-#include "../Catch.h"
+#include "Catch.h"
 #include "core/RepositoryFactory.h"
 #include "core/repository/VolatileContentRepository.h"
 #include "FlowFileRepository.h"
-#include "../TestBase.h"
-#include "../Utils.h"
+#include "TestBase.h"
+#include "Utils.h"
 #include "StreamPipe.h"
 #include "IntegrationTestUtils.h"
 #include "core/Processor.h"
 #include "core/ProcessSession.h"
 #include "core/PropertyDefinition.h"
 #include "core/RelationshipDefinition.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "unit/ProvenanceTestHelper.h"
 
 namespace org::apache::nifi::minifi::test {
 
diff --git a/extensions/sensors/CMakeLists.txt 
b/extensions/sensors/CMakeLists.txt
index ea5267d8a..1c2e9b115 100644
--- a/extensions/sensors/CMakeLists.txt
+++ b/extensions/sensors/CMakeLists.txt
@@ -35,5 +35,5 @@ target_link_libraries(minifi-sensors ${LIBMINIFI} 
Threads::Threads)
 add_dependencies(minifi-sensors RTIMULib::RTIMULib)
 target_link_libraries(minifi-sensors RTIMULib::RTIMULib)
 
-register_extension(minifi-sensors "SENSOR EXTENSIONS" SENSOR-EXTENSIONS 
"Enables the package of sensor extensions." "${TEST_DIR}/sensors-tests")
+register_extension(minifi-sensors "SENSOR EXTENSIONS" SENSOR-EXTENSIONS 
"Enables the package of sensor extensions." "extensions/sensors/tests")
 register_extension_linter(minifi-sensors-linter)
diff --git a/libminifi/test/sensors-tests/CMakeLists.txt 
b/extensions/sensors/tests/CMakeLists.txt
similarity index 100%
rename from libminifi/test/sensors-tests/CMakeLists.txt
rename to extensions/sensors/tests/CMakeLists.txt
diff --git a/libminifi/test/sensors-tests/SensorTests.cpp 
b/extensions/sensors/tests/SensorTests.cpp
similarity index 96%
rename from libminifi/test/sensors-tests/SensorTests.cpp
rename to extensions/sensors/tests/SensorTests.cpp
index 2fbecfa73..d8a4678f2 100644
--- a/libminifi/test/sensors-tests/SensorTests.cpp
+++ b/extensions/sensors/tests/SensorTests.cpp
@@ -29,16 +29,16 @@
 #include <vector>
 #include <iostream>
 #include <sstream>
-#include "../TestBase.h"
+#include "TestBase.h"
 #include "utils/StringUtils.h"
 #include "core/Core.h"
 #include "core/logging/Logger.h"
 #include "core/ProcessGroup.h"
 #include "FlowController.h"
 #include "properties/Configure.h"
-#include "../unit/ProvenanceTestHelper.h"
+#include "unit/ProvenanceTestHelper.h"
 #include "core/ConfigurableComponent.h"
-#include "../integration/IntegrationBase.h"
+#include "integration/IntegrationBase.h"
 #include "GetEnvironmentalSensors.h"
 #include "utils/IntegrationTestUtils.h"
 
diff --git a/extensions/sql/CMakeLists.txt b/extensions/sql/CMakeLists.txt
index e381443b7..0643adb90 100644
--- a/extensions/sql/CMakeLists.txt
+++ b/extensions/sql/CMakeLists.txt
@@ -173,4 +173,4 @@ target_link_libraries(minifi-sql SOCI::libsoci_odbc 
SOCI::libsoci_core)
 
 target_link_libraries(minifi-sql ${LIBMINIFI} Threads::Threads)
 
-register_extension(minifi-sql "SQL EXTENSIONS" SQL-EXTENSIONS "Enables the SQL 
Suite of Tools" "${TEST_DIR}/sql-tests")
+register_extension(minifi-sql "SQL EXTENSIONS" SQL-EXTENSIONS "Enables the SQL 
Suite of Tools" "extensions/sql/tests")
diff --git a/libminifi/test/sql-tests/CMakeLists.txt 
b/extensions/sql/tests/CMakeLists.txt
similarity index 100%
rename from libminifi/test/sql-tests/CMakeLists.txt
rename to extensions/sql/tests/CMakeLists.txt
diff --git a/libminifi/test/sql-tests/ExecuteSQLTests.cpp 
b/extensions/sql/tests/ExecuteSQLTests.cpp
similarity index 100%
rename from libminifi/test/sql-tests/ExecuteSQLTests.cpp
rename to extensions/sql/tests/ExecuteSQLTests.cpp
diff --git a/libminifi/test/sql-tests/FlowFileMatcher.h 
b/extensions/sql/tests/FlowFileMatcher.h
similarity index 98%
rename from libminifi/test/sql-tests/FlowFileMatcher.h
rename to extensions/sql/tests/FlowFileMatcher.h
index 4002b2b6f..97f3657bd 100644
--- a/libminifi/test/sql-tests/FlowFileMatcher.h
+++ b/extensions/sql/tests/FlowFileMatcher.h
@@ -25,8 +25,8 @@
 #include <utility>
 #include <vector>
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "core/FlowFile.h"
 
 struct AttributeValue {
diff --git a/libminifi/test/sql-tests/PutSQLTests.cpp 
b/extensions/sql/tests/PutSQLTests.cpp
similarity index 99%
rename from libminifi/test/sql-tests/PutSQLTests.cpp
rename to extensions/sql/tests/PutSQLTests.cpp
index 02778cb55..581f28ffc 100644
--- a/libminifi/test/sql-tests/PutSQLTests.cpp
+++ b/extensions/sql/tests/PutSQLTests.cpp
@@ -18,8 +18,8 @@
 
 #undef NDEBUG
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "SQLTestController.h"
 
 #include "processors/PutSQL.h"
diff --git a/libminifi/test/sql-tests/QueryDatabaseTableTests.cpp 
b/extensions/sql/tests/QueryDatabaseTableTests.cpp
similarity index 99%
rename from libminifi/test/sql-tests/QueryDatabaseTableTests.cpp
rename to extensions/sql/tests/QueryDatabaseTableTests.cpp
index 573a9541c..7a903eaa6 100644
--- a/libminifi/test/sql-tests/QueryDatabaseTableTests.cpp
+++ b/extensions/sql/tests/QueryDatabaseTableTests.cpp
@@ -18,8 +18,8 @@
 
 #undef NDEBUG
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "SQLTestController.h"
 #include "Utils.h"
 #include "FlowFileMatcher.h"
diff --git a/libminifi/test/sql-tests/SQLColumnIdentifierTests.cpp 
b/extensions/sql/tests/SQLColumnIdentifierTests.cpp
similarity index 98%
rename from libminifi/test/sql-tests/SQLColumnIdentifierTests.cpp
rename to extensions/sql/tests/SQLColumnIdentifierTests.cpp
index d42960ff0..e80a5544d 100644
--- a/libminifi/test/sql-tests/SQLColumnIdentifierTests.cpp
+++ b/extensions/sql/tests/SQLColumnIdentifierTests.cpp
@@ -18,8 +18,8 @@
 
 #undef NDEBUG
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "data/SQLColumnIdentifier.h"
 
 using org::apache::nifi::minifi::sql::SQLColumnIdentifier;
diff --git a/libminifi/test/sql-tests/SQLTestController.h 
b/extensions/sql/tests/SQLTestController.h
similarity index 98%
rename from libminifi/test/sql-tests/SQLTestController.h
rename to extensions/sql/tests/SQLTestController.h
index 2ac3ed27c..f89c7f0d1 100644
--- a/libminifi/test/sql-tests/SQLTestController.h
+++ b/extensions/sql/tests/SQLTestController.h
@@ -22,8 +22,8 @@
 #include <vector>
 #include <string>
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 
 #include "processors/PutSQL.h"
 #include "processors/GenerateFlowFile.h"
diff --git a/libminifi/test/sql-tests/SQLTestPlan.h 
b/extensions/sql/tests/SQLTestPlan.h
similarity index 98%
rename from libminifi/test/sql-tests/SQLTestPlan.h
rename to extensions/sql/tests/SQLTestPlan.h
index 3a9853525..984207b11 100644
--- a/libminifi/test/sql-tests/SQLTestPlan.h
+++ b/extensions/sql/tests/SQLTestPlan.h
@@ -26,8 +26,8 @@
 #include <utility>
 #include <vector>
 
-#include "../TestBase.h"
-#include "../Catch.h"
+#include "TestBase.h"
+#include "Catch.h"
 #include "processors/SQLProcessor.h"
 
 #ifdef USE_REAL_ODBC_TEST_DRIVER
diff --git a/libminifi/test/sql-tests/mocks/MockConnectors.cpp 
b/extensions/sql/tests/mocks/MockConnectors.cpp
similarity index 100%
rename from libminifi/test/sql-tests/mocks/MockConnectors.cpp
rename to extensions/sql/tests/mocks/MockConnectors.cpp
diff --git a/libminifi/test/sql-tests/mocks/MockConnectors.h 
b/extensions/sql/tests/mocks/MockConnectors.h
similarity index 100%
rename from libminifi/test/sql-tests/mocks/MockConnectors.h
rename to extensions/sql/tests/mocks/MockConnectors.h
diff --git a/libminifi/test/sql-tests/mocks/MockODBCService.h 
b/extensions/sql/tests/mocks/MockODBCService.h
similarity index 100%
rename from libminifi/test/sql-tests/mocks/MockODBCService.h
rename to extensions/sql/tests/mocks/MockODBCService.h
diff --git a/extensions/usb-camera/CMakeLists.txt 
b/extensions/usb-camera/CMakeLists.txt
index 4ee079b9a..1c0b86147 100644
--- a/extensions/usb-camera/CMakeLists.txt
+++ b/extensions/usb-camera/CMakeLists.txt
@@ -61,5 +61,5 @@ add_library(minifi-usb-camera-extensions SHARED ${SOURCES})
 target_link_libraries(minifi-usb-camera-extensions ${LIBMINIFI} 
Threads::Threads)
 target_link_libraries(minifi-usb-camera-extensions libuvc PNG::PNG)
 
-register_extension(minifi-usb-camera-extensions "USB CAMERA EXTENSIONS" 
USB-CAMERA-EXTENSIONS "This enables USB camera support" 
"${TEST_DIR}/usb-camera-tests")
+register_extension(minifi-usb-camera-extensions "USB CAMERA EXTENSIONS" 
USB-CAMERA-EXTENSIONS "This enables USB camera support")
 register_extension_linter(minifi-usb-camera-extensions-linter)
diff --git a/libminifi/test/SingleProcessorTestController.h 
b/libminifi/test/SingleProcessorTestController.h
index 70c163d30..86149b306 100644
--- a/libminifi/test/SingleProcessorTestController.h
+++ b/libminifi/test/SingleProcessorTestController.h
@@ -28,7 +28,7 @@
 #include "core/Processor.h"
 #include "range/v3/algorithm/all_of.hpp"
 
-using namespace std::chrono_literals;
+using namespace std::literals::chrono_literals;
 
 namespace org::apache::nifi::minifi::test {
 struct InputFlowFileData {
diff --git a/libminifi/test/Utils.h b/libminifi/test/Utils.h
index 5fbc58178..bcf21c1c5 100644
--- a/libminifi/test/Utils.h
+++ b/libminifi/test/Utils.h
@@ -27,7 +27,7 @@
 #include "net/Ssl.h"
 #include "utils/IntegrationTestUtils.h"
 
-using namespace std::chrono_literals;
+using namespace std::literals::chrono_literals;
 
 #undef GetObject  // windows.h #defines GetObject = GetObjectA or GetObjectW, 
which conflicts with rapidjson
 #include "Connection.h"
diff --git a/libminifi/test/coap-tests/CMakeLists.txt 
b/libminifi/test/coap-tests/CMakeLists.txt
deleted file mode 100644
index 13c588cd7..000000000
--- a/libminifi/test/coap-tests/CMakeLists.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# 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.
-#
-
-file(GLOB COAP_INTEGRATION_TESTS  "*.cpp")
-SET(COAP_TEST_COUNT 0)
-FOREACH(testfile ${COAP_INTEGRATION_TESTS})
-    get_filename_component(testfilename "${testfile}" NAME_WE)
-    add_executable("${testfilename}" "${testfile}")
-    target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/coap/")
-    createTests("${testfilename}")
-    target_link_libraries(${testfilename} minifi-coap)
-    target_link_libraries(${testfilename} minifi-standard-processors)
-    MATH(EXPR COAP_TEST_COUNT "${COAP_TEST_COUNT}+1")
-    add_test(NAME "${testfilename}" COMMAND "${testfilename}" 
WORKING_DIRECTORY ${TEST_DIR})
-ENDFOREACH()
-message("-- Finished building ${COAP_TEST_COUNT} COAP related test file(s)...")
diff --git a/libminifi/test/jni-tests/CMakeLists.txt 
b/libminifi/test/jni-tests/CMakeLists.txt
deleted file mode 100644
index 6f8d26579..000000000
--- a/libminifi/test/jni-tests/CMakeLists.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-#
-# 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.
-#
-
-file(GLOB KAFKA_INTEGRATION_TESTS  "*.cpp")
-
-SET(EXTENSIONS_TEST_COUNT 0)
-FOREACH(testfile ${KAFKA_INTEGRATION_TESTS})
-    get_filename_component(testfilename "${testfile}" NAME_WE)
-    add_executable("${testfilename}" "${testfile}")
-    target_include_directories(${testfilename} BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/extensions/librdkafka")
-    target_include_directories(${testfilename} SYSTEM BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/thirdparty/librdkafka-0.11.1/src")
-    target_include_directories(${testfilename} SYSTEM BEFORE PRIVATE 
"${CMAKE_SOURCE_DIR}/thirdparty/librdkafka-0.11.1/src-cpp")
-    createTests("${testfilename}")
-    target_link_libraries(${testfilename} Catch2WithMain)
-    target_link_libraries(${testfilename} minifi-jni)
-    target_link_libraries(${testfilename} minifi-standard-processors)
-    MATH(EXPR EXTENSIONS_TEST_COUNT "${EXTENSIONS_TEST_COUNT}+1")
-    add_test(NAME "${testfilename}" COMMAND "${testfilename}" 
WORKING_DIRECTORY ${TEST_DIR})
-ENDFOREACH()
-message("-- Finished building ${KAFKA-EXTENSIONS_TEST_COUNT} Lib Kafka related 
test file(s)...")
diff --git a/libminifi/test/usb-camera-tests/CMakeLists.txt 
b/libminifi/test/usb-camera-tests/CMakeLists.txt
deleted file mode 100644
index 27c40b676..000000000
--- a/libminifi/test/usb-camera-tests/CMakeLists.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-#
-# 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.
-#
-
-file(GLOB USB_CAMERA_INTEGRATION_TESTS  "*.cpp")
-
-SET(EXTENSIONS_TEST_COUNT 0)
-FOREACH(testfile ${USB_CAMERA_INTEGRATION_TESTS})
-    get_filename_component(testfilename "${testfile}" NAME_WE)
-    add_executable("${testfilename}" "${testfile}" "${TEST_DIR}/TestBase.cpp")
-    target_include_directories(${testfilename} PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/extensions/usb-camera")
-    target_include_directories(${testfilename} SYSTEM PRIVATE BEFORE 
"${CMAKE_SOURCE_DIR}/thirdparty/libuvc-0.0.6/include")
-    createTests("${testfilename}")
-    target_link_libraries(${testfilename} minifi-usb-camera-extensions)
-    target_link_libraries(${testfilename} minifi-standard-processors)
-    MATH(EXPR EXTENSIONS_TEST_COUNT "${EXTENSIONS_TEST_COUNT}+1")
-    add_test(NAME "${testfilename}" COMMAND "${testfilename}" 
WORKING_DIRECTORY ${TEST_DIR})
-ENDFOREACH()
-message("-- Finished building ${USB_CAMERA-EXTENSIONS_TEST_COUNT} Lib Archive 
related test file(s)...")

Reply via email to