YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
mobileBaseVelocityControl_nwc_yarp_test.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023-2023 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
7#include <yarp/os/Network.h>
10
11#include <catch2/catch_amalgamated.hpp>
12#include <harness.h>
13
14using namespace yarp::dev;
15using namespace yarp::os;
16
17TEST_CASE("dev::mobileBaseVelocityControl_nws_yarp", "[yarp::dev]")
18{
19 YARP_REQUIRE_PLUGIN("fakeNavigation", "device");
20 YARP_REQUIRE_PLUGIN("mobileBaseVelocityControl_nws_yarp", "device");
21 YARP_REQUIRE_PLUGIN("mobileBaseVelocityControl_nwc_yarp", "device");
22
23 Network::setLocalMode(true);
24
25 SECTION("Checking mobileBaseVelocityControl_nwc_yarp device")
26 {
31
33 {
35 pnws_cfg.put("device", "mobileBaseVelocityControl_nws_yarp");
36 pnws_cfg.put("local", "/mobileBaseVelocityControl_nws_yarp");
38
40 pdev_cfg.put("device", "fakeNavigation");
42
45 bool result_att = ww_nws->attach(&ddfake);
47
49 pclient_cfg.put("device", "mobileBaseVelocityControl_nwc_yarp");
50 pclient_cfg.put("local", "/mobileBaseVelocityControl_nwc_yarp");
51 pclient_cfg.put("server", "/mobileBaseVelocityControl_nws_yarp");
53 REQUIRE(ddnwc.view(ivel));
54 }
55
57
58 CHECK (ivel->applyVelocityCommand(1,2,3,10));
59 double x=0; double y=0; double t=0;
60 CHECK( ivel->getLastVelocityCommand(x,y,t));
61 CHECK(x == 1);
62 CHECK(y == 2);
63 CHECK(t == 3);
64
65 //"Close all polydrivers and check"
66 {
67 CHECK(ddnwc.close());
68 CHECK(ddnws.close());
70 }
71 }
72
73 Network::setLocalMode(false);
74}
A container for a device driver.
Definition PolyDriver.h:23
Helper interface for an object that can wrap/or "attach" to a single other device.
A mini-server for performing network communication in the background.
void close() override
Stop port activity.
bool open(const std::string &name) override
Start port operation, with a specific name, with automatically-chosen network parameters.
A class for storing options and configuration information.
Definition Property.h:33
TEST_CASE("dev::mobileBaseVelocityControl_nws_yarp", "[yarp::dev]")
For streams capable of holding different kinds of content, check what they actually have.
void delay(double seconds)
Wait for a certain number of seconds.
Definition Time.cpp:111
An interface to the operating system, including Port based communication.