You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by sz...@apache.org on 2022/12/13 15:18:14 UTC
[nifi-minifi-cpp] 01/02: MINIFICPP-1932 Increase the timeout in TailFileTest from 2s to the default 10s
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 cfe582672f85c36fca39326e517ec4eae63a9f22
Author: Ferenc Gerlits <fg...@gmail.com>
AuthorDate: Tue Dec 13 16:10:33 2022 +0100
MINIFICPP-1932 Increase the timeout in TailFileTest from 2s to the default 10s
It's not actually going to wait 10s, as it re-checks every 100ms if the
condition has been satisfied yet.
Closes #1469
Signed-off-by: Marton Szasz <sz...@apache.org>
---
.../tests/integration/TailFileTest.cpp | 7 ++-----
libminifi/include/utils/IntegrationTestUtils.h | 19 ++++---------------
2 files changed, 6 insertions(+), 20 deletions(-)
diff --git a/extensions/standard-processors/tests/integration/TailFileTest.cpp b/extensions/standard-processors/tests/integration/TailFileTest.cpp
index 01df3836b..470c36566 100644
--- a/extensions/standard-processors/tests/integration/TailFileTest.cpp
+++ b/extensions/standard-processors/tests/integration/TailFileTest.cpp
@@ -19,14 +19,11 @@
#undef NDEBUG
#include <cassert>
#include <cstdio>
-#include <memory>
#include <string>
#include <iostream>
-#include "core/logging/Logger.h"
#include "FlowController.h"
#include "TestBase.h"
-#include "Catch.h"
#include "processors/TailFile.h"
#include "processors/LogAttribute.h"
#include "state/ProcessorController.h"
@@ -38,7 +35,7 @@ using namespace std::literals::chrono_literals;
class TailFileTestHarness : public IntegrationBase {
public:
- TailFileTestHarness() : IntegrationBase(2s) {
+ TailFileTestHarness() {
dir = testController.createTempDirectory();
statefile = dir + utils::file::get_separator();
@@ -67,7 +64,7 @@ class TailFileTestHarness : public IntegrationBase {
void runAssertions() override {
using org::apache::nifi::minifi::utils::verifyLogLinePresenceInPollTime;
- assert(verifyLogLinePresenceInPollTime(std::chrono::milliseconds(wait_time_),
+ assert(verifyLogLinePresenceInPollTime(wait_time_,
"5 flowfiles were received from TailFile input",
"Looking for delimiter 0xA",
"li\\ne5"));
diff --git a/libminifi/include/utils/IntegrationTestUtils.h b/libminifi/include/utils/IntegrationTestUtils.h
index 04ee92aeb..4d96132b7 100644
--- a/libminifi/include/utils/IntegrationTestUtils.h
+++ b/libminifi/include/utils/IntegrationTestUtils.h
@@ -24,11 +24,7 @@
#include "../../../libminifi/test/TestBase.h"
-namespace org {
-namespace apache {
-namespace nifi {
-namespace minifi {
-namespace utils {
+namespace org::apache::nifi::minifi::utils {
template <class Rep, class Period, typename Fun>
bool verifyEventHappenedInPollTime(
@@ -47,18 +43,11 @@ bool verifyEventHappenedInPollTime(
template <class Rep, class Period, typename ...String>
bool verifyLogLinePresenceInPollTime(const std::chrono::duration<Rep, Period>& wait_duration, String&&... patterns) {
- // gcc before 4.9 does not support capturing parameter packs in lambdas: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=41933
- // Once we support gcc >= 4.9 only, this vector will no longer be necessary, we'll be able to iterate on the parameter pack directly.
- std::vector<std::string> pattern_list{std::forward<String>(patterns)...};
- auto check = [&] {
+ auto check = [&patterns...] {
const std::string logs = LogTestController::getInstance().log_output.str();
- return std::all_of(pattern_list.cbegin(), pattern_list.cend(), [&logs] (const std::string& pattern) { return logs.find(pattern) != std::string::npos; });
+ return ((logs.find(patterns) != std::string::npos) && ...);
};
return verifyEventHappenedInPollTime(wait_duration, check);
}
-} // namespace utils
-} // namespace minifi
-} // namespace nifi
-} // namespace apache
-} // namespace org
+} // namespace org::apache::nifi::minifi::utils