Skip to content

Commit 5e373a6

Browse files
committed
add test and fix compilation errors
1 parent aba2ec8 commit 5e373a6

File tree

5 files changed

+21
-10
lines changed

5 files changed

+21
-10
lines changed

src/viam/sdk/components/private/gripper_client.cpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,9 @@ Gripper::holding_status GripperClient::is_holding_something(const ProtoStruct& e
3232
.invoke([](auto& response) {
3333
Gripper::holding_status holding_status;
3434
holding_status.is_holding_something = response.is_holding_something();
35-
if response
36-
.has_meta() {
37-
holding_status.meta = from_proto(response.meta());
38-
}
39-
else {
35+
if (response.has_meta()) {
36+
holding_status.meta = from_proto(response.meta());
37+
} else {
4038
holding_status.meta = {};
4139
}
4240
return holding_status;

src/viam/sdk/components/private/gripper_server.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ ::grpc::Status GripperServer::IsHoldingSomething(
3232
::viam::component::gripper::v1::IsHoldingSomethingResponse* response) noexcept {
3333
return make_service_helper<Gripper>(
3434
"GripperServer::IsHoldingSomething", this, request)([&](auto& helper, auto& gripper) {
35-
Gripper::holding_status res = gripper->is_holding_something(helper.getExtra());
35+
const Gripper::holding_status res = gripper->is_holding_something(helper.getExtra());
3636
response->set_is_holding_something(res.is_holding_something);
3737
*(response->mutable_meta()) = to_proto(res.meta);
3838
});

src/viam/sdk/tests/mocks/mock_gripper.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ bool MockGripper::is_moving() {
2828
return false;
2929
}
3030

31-
Gripper::holding_status MockGripper::is_holding_something(const ProtoStruct&) {
31+
Gripper::holding_status MockGripper::is_holding_something(const ProtoStruct& extra) {
3232
Gripper::holding_status res;
3333
res.is_holding_something = false;
34-
res.meta = {};
34+
res.meta = extra;
3535
return res;
3636
}
3737

src/viam/sdk/tests/mocks/mock_gripper.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ class MockGripper : public sdk::Gripper {
1717

1818
void open(const sdk::ProtoStruct& extra) override;
1919
bool grab(const sdk::ProtoStruct& extra) override;
20-
Gripper::holding_status MockGripper::is_holding_something(
21-
const sdk::ProtoStruct& extra) override;
20+
Gripper::holding_status is_holding_something(const sdk::ProtoStruct& extra) override;
2221
void stop(const sdk::ProtoStruct& extra) override;
2322
bool is_moving() override;
2423
sdk::ProtoStruct do_command(const sdk::ProtoStruct& command) override;

src/viam/sdk/tests/test_gripper.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
BOOST_TEST_DONT_PRINT_LOG_VALUE(std::vector<viam::sdk::GeometryConfig>)
1010

11+
BOOST_TEST_DONT_PRINT_LOG_VALUE(viam::sdk::ProtoValue)
12+
1113
namespace viam {
1214
namespace sdktests {
1315

@@ -38,6 +40,18 @@ BOOST_AUTO_TEST_CASE(test_grab) {
3840
client_to_mock_pipeline<Gripper>(mock, [](Gripper& client) { BOOST_CHECK(client.grab()); });
3941
}
4042

43+
BOOST_AUTO_TEST_CASE(test_is_holding_something) {
44+
std::shared_ptr<MockGripper> mock = MockGripper::get_mock_gripper();
45+
client_to_mock_pipeline<Gripper>(mock, [](Gripper& client) {
46+
const ProtoStruct extra = {
47+
{"BEEP", "BOOP"},
48+
};
49+
Gripper::holding_status holding_status = client.is_holding_something(extra);
50+
BOOST_CHECK_EQUAL(holding_status.is_holding_something, false);
51+
BOOST_CHECK_EQUAL(holding_status.meta["BEEP"], ProtoValue("BOOP"));
52+
});
53+
}
54+
4155
BOOST_AUTO_TEST_CASE(test_stop) {
4256
std::shared_ptr<MockGripper> mock = MockGripper::get_mock_gripper();
4357
client_to_mock_pipeline<Gripper>(mock, [&](Gripper& client) {

0 commit comments

Comments
 (0)