cartographer/cartographer/pose_graph/node/pose_3d_test.cc

45 lines
1.3 KiB
C++

/*
* Copyright 2018 The Cartographer Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "cartographer/pose_graph/node/pose_3d.h"
#include "cartographer/pose_graph/internal/testing/test_helpers.h"
namespace cartographer {
namespace pose_graph {
namespace {
constexpr char kExpectedNode[] = R"PROTO(
id { object_id: "bumpy_world" }
constant: true
parameters {
pose_3d {
translation { x: 1 y: 2 z: 3 }
rotation: { w: 0 x: 1 y: 2 z: 3 }
}
}
)PROTO";
TEST(Pose3DTest, ToProto) {
Pose3D pose_3d("bumpy_world", true, Eigen::Vector3d(1., 2., 3.),
Eigen::Quaterniond(0., 1., 2., 3.));
EXPECT_THAT(pose_3d.ToProto(), testing::EqualsProto(kExpectedNode));
}
} // namespace
} // namespace pose_graph
} // namespace cartographer