Skip to content

Commit e7d83cc

Browse files
committed
use cfg(test) and cfg(doctest)
Signed-off-by: Esteve Fernandez <[email protected]>
1 parent 2382793 commit e7d83cc

20 files changed

Lines changed: 49 additions & 57 deletions

.github/workflows/rust-minimal.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ jobs:
117117
echo "Running cargo test in $path"
118118
# Run cargo test for all features except use_ros_shim (needed for docs.rs)
119119
if [ "$(basename $path)" = "rclrs" ]; then
120-
cargo test -F default,serde,vendored_test_interfaces
120+
cargo test -F default,serde
121121
else
122122
cargo test --all-features
123123
fi
@@ -131,10 +131,6 @@ jobs:
131131
for path in $(colcon list | awk '$3 == "(ament_cargo)" && $1 != "examples_rclrs_minimal_pub_sub" && $1 != "examples_rclrs_minimal_client_service" && $1 != "rust_pubsub" { print $2 }'); do
132132
cd $path
133133
echo "Running rustdoc check in $path"
134-
if [ "$(basename $path)" = "rclrs" ]; then
135-
cargo rustdoc -F vendored_test_interfaces -- -D warnings
136-
else
137-
cargo rustdoc -- -D warnings
138-
fi
134+
cargo rustdoc -- -D warnings
139135
cd -
140136
done

.github/workflows/rust-stable.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ jobs:
117117
echo "Running cargo test in $path"
118118
# Run cargo test for all features except use_ros_shim (needed for docs.rs)
119119
if [ "$(basename $path)" = "rclrs" ]; then
120-
cargo test -F default,serde,vendored_test_interfaces
120+
cargo test -F default,serde
121121
else
122122
cargo test --all-features
123123
fi
@@ -131,10 +131,6 @@ jobs:
131131
for path in $(colcon list | awk '$3 == "(ament_cargo)" && $1 != "examples_rclrs_minimal_pub_sub" && $1 != "examples_rclrs_minimal_client_service" && $1 != "rust_pubsub" { print $2 }'); do
132132
cd $path
133133
echo "Running rustdoc check in $path"
134-
if [ "$(basename $path)" = "rclrs" ]; then
135-
cargo rustdoc -F vendored_test_interfaces -- -D warnings
136-
else
137-
cargo rustdoc -- -D warnings
138-
fi
134+
cargo rustdoc -- -D warnings
139135
cd -
140136
done

rclrs/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@ rustflags = "0.1"
6868
[features]
6969
default = []
7070
serde = ["dep:serde", "dep:serde-big-array", "rosidl_runtime_rs/serde"]
71-
vendored_test_interfaces = []
7271
# This feature is solely for the purpose of being able to generate documetation without a ROS installation
7372
# The only intended usage of this feature is for docs.rs builders to work, and is not intended to be used by end users
7473
use_ros_shim = ["rosidl_runtime_rs/use_ros_shim"]

rclrs/src/action.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ fn empty_goal_status_array() -> DropGuard<rcl_action_goal_status_array_t> {
253253
)
254254
}
255255

256-
#[cfg(all(test, feature = "vendored_test_interfaces"))]
256+
#[cfg(test)]
257257
mod tests {
258258
use crate::{
259259
vendor::example_interfaces::action::{

rclrs/src/action/action_client/goal_client.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ impl<A: Action> GoalClient<A> {
9595
/// # Example
9696
///
9797
/// ```
98-
/// # #[cfg(feature = "vendored_test_interfaces")]
98+
/// # #[cfg(doctest)]
9999
/// # {
100100
/// use rclrs::*;
101101
/// use crate::rclrs::vendor::example_interfaces::action::Fibonacci;

rclrs/src/client.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ where
162162
/// Define an `async fn` whose arguments are compatible with one of the above
163163
/// signatures and which returns a `()` (a.k.a. nothing).
164164
/// ```
165-
/// # #[cfg(feature = "vendored_test_interfaces")]
165+
/// # #[cfg(doctest)]
166166
/// # {
167167
/// # use rclrs::*;
168168
/// # use crate::rclrs::vendor::test_msgs;
@@ -193,7 +193,7 @@ where
193193
/// ### `fn`
194194
///
195195
/// ```
196-
/// # #[cfg(feature = "vendored_test_interfaces")]
196+
/// # #[cfg(doctest)]
197197
/// # {
198198
/// # use rclrs::*;
199199
/// # use crate::rclrs::vendor::test_msgs;
@@ -225,7 +225,7 @@ where
225225
/// is also the most powerful option.
226226
///
227227
/// ```
228-
/// # #[cfg(feature = "vendored_test_interfaces")]
228+
/// # #[cfg(doctest)]
229229
/// # {
230230
/// # use rclrs::*;
231231
/// # use crate::rclrs::vendor::test_msgs;
@@ -615,7 +615,7 @@ impl Drop for ClientHandle {
615615
// they are running in. Therefore, this type can be safely sent to another thread.
616616
unsafe impl Send for rcl_client_t {}
617617

618-
#[cfg(all(test, feature = "vendored_test_interfaces"))]
618+
#[cfg(test)]
619619
mod tests {
620620
use super::*;
621621
use crate::{test_helpers::*, vendor::test_msgs};

rclrs/src/dynamic_message/dynamic_publisher.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ impl DynamicPublisherState {
134134
}
135135
}
136136

137-
#[cfg(all(test, feature = "vendored_test_interfaces"))]
137+
#[cfg(test)]
138138
mod tests {
139139
use super::*;
140140
use crate::test_helpers::*;

rclrs/src/dynamic_message/message_structure.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ impl MessageStructure {
295295
}
296296
}
297297

298-
#[cfg(all(test, feature = "vendored_test_interfaces"))]
298+
#[cfg(test)]
299299
mod tests {
300300
use super::*;
301301
use crate::dynamic_message::*;

rclrs/src/lib.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
//! then tell the [`Executor`] to spin:
3232
//!
3333
//! ```
34-
//! # #[cfg(feature = "vendored_test_interfaces")]
34+
//! # #[cfg(doctest)]
3535
//! # {
3636
//! use rclrs::*;
3737
//! # use crate::rclrs::vendor::example_interfaces;
@@ -57,7 +57,7 @@
5757
//! callbacks:
5858
//!
5959
//! ```
60-
//! # #[cfg(feature = "vendored_test_interfaces")]
60+
//! # #[cfg(doctest)]
6161
//! # {
6262
//! # use rclrs::*;
6363
//! #
@@ -104,7 +104,7 @@
104104
//!
105105
//! The following is a simple example of using a mandatory parameter:
106106
//! ```
107-
//! # #[cfg(feature = "vendored_test_interfaces")]
107+
//! # #[cfg(doctest)]
108108
//! # {
109109
//! use rclrs::*;
110110
//! # use crate::rclrs::vendor::example_interfaces;
@@ -137,7 +137,7 @@
137137
//! performed.
138138
//!
139139
//! ```
140-
//! # #[cfg(feature = "vendored_test_interfaces")]
140+
//! # #[cfg(doctest)]
141141
//! # {
142142
//! use rclrs::*;
143143
//! # use crate::rclrs::vendor::example_interfaces;

rclrs/src/node.rs

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ impl NodeState {
273273
///
274274
/// In some cases the payload type can be inferred by Rust:
275275
/// ```
276-
/// # #[cfg(feature = "vendored_test_interfaces")]
276+
/// # #[cfg(doctest)]
277277
/// # {
278278
/// # use rclrs::*;
279279
/// # use crate::rclrs::vendor::example_interfaces;
@@ -309,7 +309,7 @@ impl NodeState {
309309
///
310310
/// The data given to the worker can be any custom data type:
311311
/// ```
312-
/// # #[cfg(feature = "vendored_test_interfaces")]
312+
/// # #[cfg(doctest)]
313313
/// # {
314314
/// # use rclrs::*;
315315
/// # use crate::rclrs::vendor::example_interfaces;
@@ -345,7 +345,7 @@ impl NodeState {
345345
///
346346
/// Pass in only the service name for the `options` argument to use all default client options:
347347
/// ```
348-
/// # #[cfg(feature = "vendored_test_interfaces")]
348+
/// # #[cfg(doctest)]
349349
/// # {
350350
/// # use rclrs::*;
351351
/// # let executor = Context::default().create_basic_executor();
@@ -355,13 +355,14 @@ impl NodeState {
355355
/// "my_service"
356356
/// )
357357
/// .unwrap();
358+
/// # }
358359
/// ```
359360
///
360361
/// Take advantage of the [`IntoPrimitiveOptions`] API to easily build up the
361362
/// client options:
362363
///
363364
/// ```
364-
/// # #[cfg(feature = "vendored_test_interfaces")]
365+
/// # #[cfg(doctest)]
365366
/// # {
366367
/// # use rclrs::*;
367368
/// # let executor = Context::default().create_basic_executor();
@@ -373,6 +374,7 @@ impl NodeState {
373374
/// .transient_local()
374375
/// )
375376
/// .unwrap();
377+
/// # }
376378
/// ```
377379
///
378380
/// Any quality of service options that you explicitly specify will override
@@ -430,7 +432,7 @@ impl NodeState {
430432
///
431433
/// Pass in only the topic name for the `options` argument to use all default publisher options:
432434
/// ```
433-
/// # #[cfg(feature = "vendored_test_interfaces")]
435+
/// # #[cfg(doctest)]
434436
/// # {
435437
/// # use rclrs::*;
436438
/// # let executor = Context::default().create_basic_executor();
@@ -446,7 +448,7 @@ impl NodeState {
446448
/// publisher options:
447449
///
448450
/// ```
449-
/// # #[cfg(feature = "vendored_test_interfaces")]
451+
/// # #[cfg(doctest)]
450452
/// # {
451453
/// # use rclrs::*;
452454
/// # use crate::rclrs::vendor::test_msgs;
@@ -523,7 +525,7 @@ impl NodeState {
523525
///
524526
/// Pass in only the service name for the `options` argument to use all default service options:
525527
/// ```
526-
/// # #[cfg(feature = "vendored_test_interfaces")]
528+
/// # #[cfg(doctest)]
527529
/// # {
528530
/// # use rclrs::*;
529531
/// # use crate::rclrs::vendor::test_msgs;
@@ -542,7 +544,7 @@ impl NodeState {
542544
/// service options:
543545
///
544546
/// ```
545-
/// # #[cfg(feature = "vendored_test_interfaces")]
547+
/// # #[cfg(doctest)]
546548
/// # {
547549
/// # use rclrs::*;
548550
/// # use crate::rclrs::vendor::test_msgs;
@@ -583,7 +585,7 @@ impl NodeState {
583585
/// multiple simultaneous runs of the callback. For example:
584586
///
585587
/// ```
586-
/// # #[cfg(feature = "vendored_test_interfaces")]
588+
/// # #[cfg(doctest)]
587589
/// # {
588590
/// # use rclrs::*;
589591
/// # use crate::rclrs::vendor::example_interfaces;
@@ -612,7 +614,7 @@ impl NodeState {
612614
/// capturing it in the closure:
613615
///
614616
/// ```
615-
/// # #[cfg(feature = "vendored_test_interfaces")]
617+
/// # #[cfg(doctest)]
616618
/// # {
617619
/// # use rclrs::*;
618620
/// # use crate::rclrs::vendor::example_interfaces;
@@ -709,7 +711,7 @@ impl NodeState {
709711
/// This allows one async service to share state data across multiple workers.
710712
///
711713
/// ```
712-
/// # #[cfg(feature = "vendored_test_interfaces")]
714+
/// # #[cfg(doctest)]
713715
/// # {
714716
/// # use rclrs::*;
715717
/// # use crate::rclrs::vendor::example_interfaces;
@@ -784,7 +786,7 @@ impl NodeState {
784786
///
785787
/// Pass in only the topic name for the `options` argument to use all default subscription options:
786788
/// ```
787-
/// # #[cfg(feature = "vendored_test_interfaces")]
789+
/// # #[cfg(doctest)]
788790
/// # {
789791
/// # use rclrs::*;
790792
/// # use crate::rclrs::vendor::test_msgs;
@@ -802,7 +804,7 @@ impl NodeState {
802804
/// subscription options:
803805
///
804806
/// ```
805-
/// # #[cfg(feature = "vendored_test_interfaces")]
807+
/// # #[cfg(doctest)]
806808
/// # {
807809
/// # use rclrs::*;
808810
/// # use crate::rclrs::vendor::test_msgs;
@@ -848,7 +850,7 @@ impl NodeState {
848850
/// simultaneous runs of the callback. For example:
849851
///
850852
/// ```
851-
/// # #[cfg(feature = "vendored_test_interfaces")]
853+
/// # #[cfg(doctest)]
852854
/// # {
853855
/// # use rclrs::*;
854856
/// # use crate::rclrs::vendor::example_interfaces;
@@ -874,7 +876,7 @@ impl NodeState {
874876
/// the [`Arc`] before capturing it in the closure:
875877
///
876878
/// ```
877-
/// # #[cfg(feature = "vendored_test_interfaces")]
879+
/// # #[cfg(doctest)]
878880
/// # {
879881
/// # use rclrs::*;
880882
/// # use crate::rclrs::vendor::example_interfaces;
@@ -1108,7 +1110,7 @@ impl NodeState {
11081110
/// multiple workers.
11091111
///
11101112
/// ```
1111-
/// # #[cfg(feature = "vendored_test_interfaces")]
1113+
/// # #[cfg(doctest)]
11121114
/// # {
11131115
/// # use rclrs::*;
11141116
/// # use crate::rclrs::vendor::example_interfaces;
@@ -1582,7 +1584,7 @@ pub(crate) unsafe fn call_string_getter_with_rcl_node(
15821584
// they are running in. Therefore, this type can be safely sent to another thread.
15831585
unsafe impl Send for rcl_node_t {}
15841586

1585-
#[cfg(all(test, feature = "vendored_test_interfaces"))]
1587+
#[cfg(test)]
15861588
mod tests {
15871589
use crate::{test_helpers::*, *};
15881590

0 commit comments

Comments
 (0)