examples in CI

This commit is contained in:
stelzo 2024-06-24 11:41:21 +02:00
parent 00acc2a183
commit 773b2e77e0
2 changed files with 21 additions and 22 deletions

View File

@ -22,5 +22,7 @@ jobs:
components: clippy components: clippy
- name: Linting - name: Linting
run: cargo clippy --all-targets --features derive,nalgebra,rayon -- -D warnings run: cargo clippy --all-targets --features derive,nalgebra,rayon -- -D warnings
- name: Tests - name: Build examples with features
run: cargo build --examples --features derive,nalgebra,rayon
- name: Test library
run: cargo test --features derive,nalgebra,rayon run: cargo test --features derive,nalgebra,rayon

View File

@ -134,30 +134,27 @@ impl From<Label> for PointDataBuffer {
} }
fn main() { fn main() {
#[cfg(not(feature = "derive"))] let cloud = vec![
{ CustomPoint::new(1.0, 2.0, 3.0, 4.0, Label::Deer),
let cloud = vec![ CustomPoint::new(4.0, 5.0, 6.0, 7.0, Label::Car),
CustomPoint::new(1.0, 2.0, 3.0, 4.0, Label::Deer), CustomPoint::new(7.0, 8.0, 9.0, 10.0, Label::Human),
CustomPoint::new(4.0, 5.0, 6.0, 7.0, Label::Car), ];
CustomPoint::new(7.0, 8.0, 9.0, 10.0, Label::Human),
];
println!("Original cloud: {:?}", cloud); println!("Original cloud: {:?}", cloud);
let msg = PointCloud2Msg::try_from_iter(cloud).unwrap(); let msg = PointCloud2Msg::try_from_iter(cloud).unwrap();
println!("filtering by label == Deer"); println!("filtering by label == Deer");
let out = msg let out = msg
.try_into_iter() .try_into_iter()
.unwrap() .unwrap()
.filter(|point: &CustomPoint| point.my_custom_label == Label::Deer) .filter(|point: &CustomPoint| point.my_custom_label == Label::Deer)
.collect::<Vec<_>>(); .collect::<Vec<_>>();
println!("Filtered cloud: {:?}", out); println!("Filtered cloud: {:?}", out);
assert_eq!( assert_eq!(
vec![CustomPoint::new(1.0, 2.0, 3.0, 4.0, Label::Deer),], vec![CustomPoint::new(1.0, 2.0, 3.0, 4.0, Label::Deer),],
out out
); );
}
} }