Add test for clap::IntoApp.
This is recommended for clap 3, in the guide for migrating from clap 2.
Bug: 229854484
Test: atest vm.test
Change-Id: Iac281bf7bef2d108510b7487171a504950e4a36b
diff --git a/vm/Android.bp b/vm/Android.bp
index 7b016d4..0ff95f9 100644
--- a/vm/Android.bp
+++ b/vm/Android.bp
@@ -2,8 +2,8 @@
default_applicable_licenses: ["Android-Apache-2.0"],
}
-rust_binary {
- name: "vm",
+rust_defaults {
+ name: "vm.defaults",
crate_name: "vm",
srcs: ["src/main.rs"],
edition: "2021",
@@ -24,11 +24,23 @@
"libvmclient",
"libzip",
],
+}
+
+rust_binary {
+ name: "vm",
+ defaults: ["vm.defaults"],
apex_available: [
"com.android.virt",
],
}
+rust_test {
+ name: "vm.test",
+ defaults: ["vm.defaults"],
+ test_suites: ["general-tests"],
+ compile_multilib: "first",
+}
+
sh_binary_host {
name: "vm_shell",
src: "vm_shell.sh",
diff --git a/vm/src/main.rs b/vm/src/main.rs
index 89d56d4..cc7aad7 100644
--- a/vm/src/main.rs
+++ b/vm/src/main.rs
@@ -304,3 +304,14 @@
Ok(())
}
+
+#[cfg(test)]
+mod tests {
+ use super::*;
+ use clap::IntoApp;
+
+ #[test]
+ fn verify_app() {
+ Opt::into_app().debug_assert();
+ }
+}