Files
flipper/xplat/FlipperTestLib/FlipperConnectionManagerMock.h
Andres Suarez 0675dd924d Tidy up Flipper license headers [1/2]
Reviewed By: passy

Differential Revision: D17863711

fbshipit-source-id: 259dc77826fb803ff1b88c88529d7f679d3b74d8
2019-10-11 13:46:45 -07:00

67 lines
1.4 KiB
C++

/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#pragma once
#include <Flipper/FlipperConnectionManager.h>
namespace facebook {
namespace flipper {
namespace test {
class FlipperConnectionManagerMock : public FlipperConnectionManager {
public:
FlipperConnectionManagerMock() : callbacks(nullptr) {}
void start() override {
open = true;
if (callbacks) {
callbacks->onConnected();
}
}
void stop() override {
open = false;
if (callbacks) {
callbacks->onDisconnected();
}
}
bool isOpen() const override {
return open;
}
void sendMessage(const folly::dynamic& message) override {
messages.push_back(message);
}
void onMessageReceived(
const folly::dynamic& message,
std::unique_ptr<FlipperResponder> responder) override {
if (responder) {
respondersReceived++;
}
callbacks->onMessageReceived(message, std::move(responder));
messagesReceived.push_back(message);
}
void setCallbacks(Callbacks* aCallbacks) override {
callbacks = aCallbacks;
}
public:
bool open = false;
Callbacks* callbacks;
std::vector<folly::dynamic> messages;
std::vector<folly::dynamic> messagesReceived;
int respondersReceived = 0;
};
} // namespace test
} // namespace flipper
} // namespace facebook