diff options
author | Chih-Hung Hsieh <chh@google.com> | 2019-11-17 21:27:54 -0800 |
---|---|---|
committer | Chih-Hung Hsieh <chh@google.com> | 2019-11-17 21:38:02 -0800 |
commit | b6087730849ebd61a5b124a73a5088eddd38d004 (patch) | |
tree | d2a0f4936fc0fd1ab80ce5f166c1d75f3c59e75f | |
parent | d197cb75923d5f89e6d75d9387ce1a275352b09c (diff) | |
download | crosvm-b6087730849ebd61a5b124a73a5088eddd38d004.tar.gz |
Add rust_test modules and TEST_MAPPING.
* Temporarily append "[workspace]" to Cargo.toml and
then run "cargo2android.py --tests --run".
* Manually add defaults to limit build host.
* Manually add TEST_MAPPING to select all rust_test modules.
* libsys_util depends on libcap in src/capabilities.rs,
but not specified in Cargo.toml. Generated Android.bp
needs post-editing to add libcap to link.
Bug: 140938178
Test: atest --include-subdirs --rebuild-module-info external/crosvm
Change-Id: I814d8632b316a1ca6e69d09c2ab74e7ac9b80bb0
-rw-r--r-- | bit_field/Android.bp | 34 | ||||
-rw-r--r-- | bit_field/TEST_MAPPING | 16 | ||||
-rw-r--r-- | kvm/Android.bp | 39 | ||||
-rw-r--r-- | kvm/TEST_MAPPING | 20 | ||||
-rw-r--r-- | kvm_sys/Android.bp | 31 | ||||
-rw-r--r-- | kvm_sys/TEST_MAPPING | 12 | ||||
-rw-r--r-- | msg_socket/Android.bp | 42 | ||||
-rw-r--r-- | msg_socket/TEST_MAPPING | 24 | ||||
-rw-r--r-- | sys_util/Android.bp | 3 |
9 files changed, 216 insertions, 5 deletions
diff --git a/bit_field/Android.bp b/bit_field/Android.bp index ecf16496d..35b510cb6 100644 --- a/bit_field/Android.bp +++ b/bit_field/Android.bp @@ -1,4 +1,36 @@ -// This file is generated by cargo2android.py. +// This file is generated by cargo2android.py, added defaults. + +rust_test_host { + name: "bit_field_tests", + defaults: ["crosvm_defaults"], + crate_name: "bit_field", + srcs: [ + "tests/test_enum.rs", + "tests/test_tuple_struct.rs", + ], + relative_install_path: "bit_field_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libbit_field", + ], + proc_macros: [ + "libbit_field_derive", + ], +} + +rust_test_host { + name: "bit_field_tests_bit_field", + defaults: ["crosvm_defaults"], + crate_name: "bit_field", + srcs: ["src/lib.rs"], + relative_install_path: "bit_field_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + proc_macros: [ + "libbit_field_derive", + ], +} rust_library_host_rlib { name: "libbit_field", diff --git a/bit_field/TEST_MAPPING b/bit_field/TEST_MAPPING new file mode 100644 index 000000000..56d157e99 --- /dev/null +++ b/bit_field/TEST_MAPPING @@ -0,0 +1,16 @@ +{ + "presubmit": [ + { + "name": "bit_field_tests_test_enum", + "host": true + }, + { + "name": "bit_field_tests_test_tuple_struct", + "host": true + }, + { + "name": "bit_field_tests_bit_field", + "host": true + } + ] +} diff --git a/kvm/Android.bp b/kvm/Android.bp index 242ca4dad..223031694 100644 --- a/kvm/Android.bp +++ b/kvm/Android.bp @@ -1,4 +1,41 @@ -// This file is generated by cargo2android.py. +// This file is generated by cargo2android.py, added defaults. + +rust_test_host { + name: "kvm_tests", + defaults: ["crosvm_defaults"], + crate_name: "kvm", + srcs: [ + "tests/dirty_log.rs", + "tests/read_only_memory.rs", + "tests/real_run_adder.rs", + ], + relative_install_path: "kvm_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libkvm", + "libkvm_sys", + "liblibc", + "libmsg_socket", + "libsys_util", + ], +} + +rust_test_host { + name: "kvm_tests_kvm", + defaults: ["crosvm_defaults"], + crate_name: "kvm", + srcs: ["src/lib.rs"], + relative_install_path: "kvm_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libkvm_sys", + "liblibc", + "libmsg_socket", + "libsys_util", + ], +} rust_library_host_rlib { name: "libkvm", diff --git a/kvm/TEST_MAPPING b/kvm/TEST_MAPPING new file mode 100644 index 000000000..af23db11a --- /dev/null +++ b/kvm/TEST_MAPPING @@ -0,0 +1,20 @@ +{ + "presubmit": [ + { + "name": "kvm_tests_dirty_log", + "host": true + }, + { + "name": "kvm_tests_read_only_memory", + "host": true + }, + { + "name": "kvm_tests_real_run_adder", + "host": true + }, + { + "name": "kvm_tests_kvm", + "host": true + } + ] +} diff --git a/kvm_sys/Android.bp b/kvm_sys/Android.bp index bb7a4f16d..4614df185 100644 --- a/kvm_sys/Android.bp +++ b/kvm_sys/Android.bp @@ -1,4 +1,33 @@ -// This file is generated by cargo2android.py. +// This file is generated by cargo2android.py, added defaults. + +rust_test_host { + name: "kvm_sys_tests_kvm_sys", + defaults: ["crosvm_defaults"], + crate_name: "kvm_sys", + srcs: ["src/lib.rs"], + relative_install_path: "kvm_sys_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "liblibc", + "libsys_util", + ], +} + +rust_test_host { + name: "kvm_sys_tests_sanity", + defaults: ["crosvm_defaults"], + crate_name: "sanity", + srcs: ["tests/sanity.rs"], + relative_install_path: "kvm_sys_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libkvm_sys", + "liblibc", + "libsys_util", + ], +} rust_library_host_rlib { name: "libkvm_sys", diff --git a/kvm_sys/TEST_MAPPING b/kvm_sys/TEST_MAPPING new file mode 100644 index 000000000..f680997b8 --- /dev/null +++ b/kvm_sys/TEST_MAPPING @@ -0,0 +1,12 @@ +{ + "presubmit": [ + { + "name": "kvm_sys_tests_kvm_sys", + "host": true + }, + { + "name": "kvm_sys_tests_sanity", + "host": true + } + ] +} diff --git a/msg_socket/Android.bp b/msg_socket/Android.bp index 68b98e7eb..cf7feef5b 100644 --- a/msg_socket/Android.bp +++ b/msg_socket/Android.bp @@ -1,4 +1,4 @@ -// This file is generated by cargo2android.py. +// This file is generated by cargo2android.py, added defaults. rust_library_host_rlib { name: "libmsg_socket", @@ -13,3 +13,43 @@ rust_library_host_rlib { "libmsg_on_socket_derive", ], } + +rust_test_host { + name: "msg_socket_tests", + defaults: ["crosvm_defaults"], + crate_name: "msg_socket", + srcs: [ + "tests/enum.rs", + "tests/struct.rs", + "tests/tuple.rs", + "tests/unit.rs", + ], + relative_install_path: "msg_socket_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libdata_model", + "libmsg_socket", + "libsys_util", + ], + proc_macros: [ + "libmsg_on_socket_derive", + ], +} + +rust_test_host { + name: "msg_socket_tests_msg_socket", + defaults: ["crosvm_defaults"], + crate_name: "msg_socket", + srcs: ["src/lib.rs"], + relative_install_path: "msg_socket_tests", + test_suites: ["general-tests"], + auto_gen_config: true, + rlibs: [ + "libdata_model", + "libsys_util", + ], + proc_macros: [ + "libmsg_on_socket_derive", + ], +} diff --git a/msg_socket/TEST_MAPPING b/msg_socket/TEST_MAPPING new file mode 100644 index 000000000..12a6bf2de --- /dev/null +++ b/msg_socket/TEST_MAPPING @@ -0,0 +1,24 @@ +{ + "presubmit": [ + { + "name": "msg_socket_tests_enum", + "host": true + }, + { + "name": "msg_socket_tests_struct", + "host": true + }, + { + "name": "msg_socket_tests_tuple", + "host": true + }, + { + "name": "msg_socket_tests_unit", + "host": true + }, + { + "name": "msg_socket_tests_msg_socket", + "host": true + } + ] +} diff --git a/sys_util/Android.bp b/sys_util/Android.bp index ad97c0bd2..cba95207c 100644 --- a/sys_util/Android.bp +++ b/sys_util/Android.bp @@ -1,4 +1,4 @@ -// This file is generated by cargo2android.py. +// This file is generated by cargo2android.py, manually added "libcap". rust_library_host_rlib { name: "libsys_util", @@ -15,4 +15,5 @@ rust_library_host_rlib { proc_macros: [ "libpoll_token_derive", ], + shared_libs: ["libcap"], // specified in src/capabilities.rs } |