summaryrefslogtreecommitdiffstats
path: root/config/src/tests/frt/frt.cpp
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-02-17 16:06:20 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2022-02-18 09:43:23 +0000
commit551674b5d16963a63d019c23c191b9fbaa2288e2 (patch)
tree2bb0f37caf62eca4c01b940f4d59358d7eb82763 /config/src/tests/frt/frt.cpp
parent52d6a2d5221c4a4f7aafad8c771704388621ce50 (diff)
Unify on using vespalib::duration.
Diffstat (limited to 'config/src/tests/frt/frt.cpp')
-rw-r--r--config/src/tests/frt/frt.cpp70
1 files changed, 18 insertions, 52 deletions
diff --git a/config/src/tests/frt/frt.cpp b/config/src/tests/frt/frt.cpp
index 0a0c3262b84..e590aebaf76 100644
--- a/config/src/tests/frt/frt.cpp
+++ b/config/src/tests/frt/frt.cpp
@@ -3,7 +3,6 @@
#include "config-my.h"
#include "config-bar.h"
#include <vespa/vespalib/testkit/test_kit.h>
-#include <vespa/config/common/iconfigholder.h>
#include <vespa/config/common/trace.h>
#include <vespa/config/common/configdefinition.h>
#include <vespa/config/frt/connection.h>
@@ -30,32 +29,6 @@ using namespace config::protocol::v3;
namespace {
- struct UpdateFixture : public IConfigHolder {
- std::unique_ptr<ConfigUpdate> update;
- bool notified;
-
- UpdateFixture()
- : update(),
- notified(false)
- { }
- std::unique_ptr<ConfigUpdate> provide() override { return std::unique_ptr<ConfigUpdate>(); }
- void handle(std::unique_ptr<ConfigUpdate> u) override { update = std::move(u); }
- bool wait(milliseconds timeoutInMillis) override { (void) timeoutInMillis; return notified; }
- bool poll() override { return notified; }
- void interrupt() override { }
-
- bool waitUntilResponse(vespalib::duration timeout)
- {
- vespalib::Timer timer;
- while (timer.elapsed() < timeout) {
- if (notified)
- break;
- std::this_thread::sleep_for(100ms);
- }
- return notified;
- }
- };
-
struct RPCFixture
{
std::vector<FRT_RPCRequest *> requests;
@@ -108,17 +81,9 @@ namespace {
}
};
-
- struct MyAbortHandler : public FRT_IAbortHandler
- {
- bool aborted;
- MyAbortHandler() : aborted(false) { }
- bool HandleAbort() override { aborted = true; return true; }
- };
-
struct ConnectionMock : public Connection {
int errorCode;
- int timeout;
+ duration timeout;
FRT_RPCRequest * ans;
fnet::frt::StandaloneFRT server;
FRT_Supervisor & supervisor;
@@ -128,21 +93,21 @@ namespace {
~ConnectionMock();
FRT_RPCRequest * allocRPCRequest() override { return supervisor.AllocRPCRequest(); }
void setError(int ec) override { errorCode = ec; }
- void invoke(FRT_RPCRequest * req, double t, FRT_IRequestWait * waiter) override
+ void invoke(FRT_RPCRequest * req, duration t, FRT_IRequestWait * waiter) override
{
- timeout = static_cast<int>(t);
+ timeout = t;
if (ans != nullptr)
waiter->RequestDone(ans);
else
waiter->RequestDone(req);
}
const vespalib::string & getAddress() const override { return address; }
- void setTransientDelay(int64_t delay) override { (void) delay; }
+ void setTransientDelay(duration delay) override { (void) delay; }
};
ConnectionMock::ConnectionMock(FRT_RPCRequest * answer)
: errorCode(0),
- timeout(0),
+ timeout(0ms),
ans(answer),
server(),
supervisor(server.supervisor()),
@@ -152,7 +117,8 @@ namespace {
struct FactoryMock : public ConnectionFactory {
ConnectionMock * current;
- FactoryMock(ConnectionMock * c) : current(c) { }
+ FactoryMock(ConnectionMock * c) noexcept : current(c) { }
+ ~FactoryMock() = default;
Connection * getCurrent() override {
return current;
}
@@ -164,10 +130,10 @@ namespace {
struct AgentResultFixture
{
bool notified;
- uint64_t waitTime;
- uint64_t timeout;
+ duration waitTime;
+ duration timeout;
ConfigState state;
- AgentResultFixture(uint64_t w, uint64_t t)
+ AgentResultFixture(duration w, duration t)
: notified(false),
waitTime(w),
timeout(t),
@@ -185,8 +151,8 @@ namespace {
}
const ConfigState & getConfigState() const override { return result->state; }
- uint64_t getWaitTime () const override { return result->waitTime; }
- uint64_t getTimeout() const override { return result->timeout; }
+ duration getWaitTime () const override { return result->waitTime; }
+ duration getTimeout() const override { return result->timeout; }
void handleResponse(const ConfigRequest & request, ConfigResponse::UP response) override
{
(void) request;
@@ -219,11 +185,11 @@ namespace {
FRTSource src;
FRTFixture(SourceFixture & f1)
- : result(2000, 10000),
+ : result(2s, 10s),
requestFactory(3, VespaVersion::fromString("1.2.3"), CompressionType::UNCOMPRESSED),
- src(ConnectionFactory::SP(new FactoryMock(&f1.conn)),
+ src(std::make_shared<FactoryMock>(&f1.conn),
requestFactory,
- ConfigAgent::UP(new AgentFixture(&result)),
+ std::make_unique<AgentFixture>(&result),
f1.key)
{ }
};
@@ -273,7 +239,7 @@ TEST("require that v3 request is correctly initialized") {
vespalib::string xxhash64 = "myxxhash64";
int64_t currentGeneration = 3;
vespalib::string hostName = "myhost";
- int64_t timeout = 3000;
+ duration timeout = 3s;
Trace traceIn(3);
traceIn.trace(2, "Hei");
FRTConfigRequestV3 v3req(&conn, key, xxhash64, currentGeneration, hostName,
@@ -300,7 +266,7 @@ TEST("require that v3 request is correctly initialized") {
EXPECT_EQUAL(hostName, root[REQUEST_CLIENT_HOSTNAME].asString().make_string());
EXPECT_EQUAL(currentGeneration, root[REQUEST_CURRENT_GENERATION].asLong());
EXPECT_EQUAL(xxhash64, root[REQUEST_CONFIG_XXHASH64].asString().make_string());
- EXPECT_EQUAL(timeout, root[REQUEST_TIMEOUT].asLong());
+ EXPECT_EQUAL(count_ms(timeout), root[REQUEST_TIMEOUT].asLong());
EXPECT_EQUAL("LZ4", root[REQUEST_COMPRESSION_TYPE].asString().make_string());
EXPECT_EQUAL(root[REQUEST_VESPA_VERSION].asString().make_string(), "1.2.3");
Trace trace;
@@ -308,7 +274,7 @@ TEST("require that v3 request is correctly initialized") {
EXPECT_TRUE(trace.shouldTrace(2));
EXPECT_TRUE(trace.shouldTrace(3));
EXPECT_FALSE(trace.shouldTrace(4));
- EXPECT_EQUAL(timeout, root[REQUEST_TIMEOUT].asLong());
+ EXPECT_EQUAL(count_ms(timeout), root[REQUEST_TIMEOUT].asLong());
ConfigDefinition def;
def.deserialize(root[REQUEST_DEF_CONTENT]);
EXPECT_EQUAL(origDef.asString(), def.asString());