Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5e1e95ef authored by Henri Chataing's avatar Henri Chataing
Browse files

RootCanal: Remove unused test channels in the test environment

HCI, LL and, BLE_LL channels are wrapped in a test channel in the
test environment class, but only the SetUp method is ever called;

this change inlines the SetUp for the afore mentioned channels.

Test: m root-canal
Bug: 279665786
Change-Id: I12c9a38fdd2540094e0143972e496aedf9241501
parent e652a5f9
Loading
Loading
Loading
Loading
+11 −25
Original line number Original line Diff line number Diff line
@@ -115,44 +115,32 @@ void TestEnvironment::close() {
}
}


void TestEnvironment::SetUpHciServer(ConnectCallback on_connect) {
void TestEnvironment::SetUpHciServer(ConnectCallback on_connect) {
  test_channel_.RegisterSendResponse([](const std::string& response) {
  hci_socket_server_->SetOnConnectCallback(on_connect);
    LOG_INFO("No HCI Response channel: %s", response.c_str());
  hci_socket_server_->StartListening();
  });

  if (!remote_hci_transport_.SetUp(hci_socket_server_, on_connect)) {
    LOG_ERROR("Remote HCI channel SetUp failed.");
    return;
  }
}
}


void TestEnvironment::SetUpLinkBleLayerServer() {
void TestEnvironment::SetUpLinkBleLayerServer() {
  remote_link_layer_transport_.SetUp(
  link_ble_socket_server_->SetOnConnectCallback(
      link_ble_socket_server_, [this](std::shared_ptr<AsyncDataChannel> socket,
      [this](std::shared_ptr<AsyncDataChannel> socket,
             AsyncDataChannelServer* srv) {
             AsyncDataChannelServer* srv) {
        auto phy_type = Phy::Type::LOW_ENERGY;
        auto phy_type = Phy::Type::LOW_ENERGY;
        test_model_.AddLinkLayerConnection(
        test_model_.AddLinkLayerConnection(
            LinkLayerSocketDevice::Create(socket, phy_type), phy_type);
            LinkLayerSocketDevice::Create(socket, phy_type), phy_type);
        srv->StartListening();
        srv->StartListening();
      });
      });

  link_ble_socket_server_->StartListening();
  test_channel_.RegisterSendResponse([](const std::string& response) {
    LOG_INFO("No LinkLayer Response channel: %s", response.c_str());
  });
}
}


void TestEnvironment::SetUpLinkLayerServer() {
void TestEnvironment::SetUpLinkLayerServer() {
  remote_link_layer_transport_.SetUp(
  link_socket_server_->SetOnConnectCallback(
      link_socket_server_, [this](std::shared_ptr<AsyncDataChannel> socket,
      [this](std::shared_ptr<AsyncDataChannel> socket,
             AsyncDataChannelServer* srv) {
             AsyncDataChannelServer* srv) {
        auto phy_type = Phy::Type::BR_EDR;
        auto phy_type = Phy::Type::BR_EDR;
        test_model_.AddLinkLayerConnection(
        test_model_.AddLinkLayerConnection(
            LinkLayerSocketDevice::Create(socket, phy_type), phy_type);
            LinkLayerSocketDevice::Create(socket, phy_type), phy_type);
        srv->StartListening();
        srv->StartListening();
      });
      });

  link_socket_server_->StartListening();
  test_channel_.RegisterSendResponse([](const std::string& response) {
    LOG_INFO("No LinkLayer Response channel: %s", response.c_str());
  });
}
}


std::shared_ptr<Device> TestEnvironment::ConnectToRemoteServer(
std::shared_ptr<Device> TestEnvironment::ConnectToRemoteServer(
@@ -188,9 +176,7 @@ void TestEnvironment::SetUpTestChannel() {
        });
        });
        return false;
        return false;
      });
      });
  test_channel_.RegisterSendResponse([](const std::string& response) {

    LOG_INFO("No test channel: %s", response.c_str());
  });
  test_channel_.AddPhy({"BR_EDR"});
  test_channel_.AddPhy({"BR_EDR"});
  test_channel_.AddPhy({"LOW_ENERGY"});
  test_channel_.AddPhy({"LOW_ENERGY"});
  test_channel_.SetTimerPeriod({"5"});
  test_channel_.SetTimerPeriod({"5"});
+2 −5
Original line number Original line Diff line number Diff line
@@ -78,6 +78,7 @@ class TestEnvironment {


 private:
 private:
  rootcanal::AsyncManager async_manager_;
  rootcanal::AsyncManager async_manager_;
  rootcanal::TestChannelTransport test_channel_transport_;
  std::shared_ptr<AsyncDataChannelServer> test_socket_server_;
  std::shared_ptr<AsyncDataChannelServer> test_socket_server_;
  std::shared_ptr<AsyncDataChannelServer> hci_socket_server_;
  std::shared_ptr<AsyncDataChannelServer> hci_socket_server_;
  std::shared_ptr<AsyncDataChannelServer> link_socket_server_;
  std::shared_ptr<AsyncDataChannelServer> link_socket_server_;
@@ -95,14 +96,10 @@ class TestEnvironment {
  void SetUpHciServer(ConnectCallback on_connect);
  void SetUpHciServer(ConnectCallback on_connect);
  void SetUpLinkLayerServer();
  void SetUpLinkLayerServer();
  void SetUpLinkBleLayerServer();
  void SetUpLinkBleLayerServer();

  std::shared_ptr<Device> ConnectToRemoteServer(const std::string& server,
  std::shared_ptr<Device> ConnectToRemoteServer(const std::string& server,
                                                int port, Phy::Type phy_type);
                                                int port, Phy::Type phy_type);


  rootcanal::TestChannelTransport test_channel_transport_;
  rootcanal::TestChannelTransport remote_hci_transport_;
  rootcanal::TestChannelTransport remote_link_layer_transport_;
  rootcanal::TestChannelTransport remote_link_ble_layer_transport_;

  rootcanal::TestModel test_model_{
  rootcanal::TestModel test_model_{
      [this]() { return async_manager_.GetNextUserId(); },
      [this]() { return async_manager_.GetNextUserId(); },
      [this](rootcanal::AsyncUserId user_id, std::chrono::milliseconds delay,
      [this](rootcanal::AsyncUserId user_id, std::chrono::milliseconds delay,
+1 −0
Original line number Original line Diff line number Diff line
@@ -50,6 +50,7 @@ TestCommandHandler::TestCommandHandler(TestModel& test_model)
  SET_HANDLER("stop_timer", StopTimer);
  SET_HANDLER("stop_timer", StopTimer);
  SET_HANDLER("reset", Reset);
  SET_HANDLER("reset", Reset);
#undef SET_HANDLER
#undef SET_HANDLER
  send_response_ = [](std::string const&) {};
}
}


void TestCommandHandler::AddDefaults() {
void TestCommandHandler::AddDefaults() {