diff options
author | Jakub Kotur <qtr@google.com> | 2021-04-19 08:20:13 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-04-19 08:20:13 +0000 |
commit | f85f5d224d731630716bfd9a48489056a68919dc (patch) | |
tree | daaf08af737e70ccff84d0af339162a544fead0a | |
parent | 9c2571f2f3f7cce354a6c68a239de5e7c3bc0672 (diff) | |
parent | 0dcca6f8bd2930663915faefb79455b1f9e5bac6 (diff) | |
download | crossbeam-utils-android-mainline-12.0.0_r5.tar.gz |
Enable tests for corssbeam-utils. am: 3276f603fd am: 5d4d93d157 am: 174b65c3ce am: 0dcca6f8bdandroid-mainline-12.0.0_r99android-mainline-12.0.0_r98android-mainline-12.0.0_r97android-mainline-12.0.0_r96android-mainline-12.0.0_r95android-mainline-12.0.0_r94android-mainline-12.0.0_r93android-mainline-12.0.0_r92android-mainline-12.0.0_r91android-mainline-12.0.0_r90android-mainline-12.0.0_r9android-mainline-12.0.0_r89android-mainline-12.0.0_r88android-mainline-12.0.0_r87android-mainline-12.0.0_r86android-mainline-12.0.0_r85android-mainline-12.0.0_r84android-mainline-12.0.0_r83android-mainline-12.0.0_r82android-mainline-12.0.0_r81android-mainline-12.0.0_r80android-mainline-12.0.0_r8android-mainline-12.0.0_r79android-mainline-12.0.0_r78android-mainline-12.0.0_r77android-mainline-12.0.0_r76android-mainline-12.0.0_r75android-mainline-12.0.0_r74android-mainline-12.0.0_r73android-mainline-12.0.0_r72android-mainline-12.0.0_r71android-mainline-12.0.0_r70android-mainline-12.0.0_r7android-mainline-12.0.0_r69android-mainline-12.0.0_r68android-mainline-12.0.0_r67android-mainline-12.0.0_r66android-mainline-12.0.0_r65android-mainline-12.0.0_r64android-mainline-12.0.0_r63android-mainline-12.0.0_r62android-mainline-12.0.0_r61android-mainline-12.0.0_r60android-mainline-12.0.0_r6android-mainline-12.0.0_r59android-mainline-12.0.0_r58android-mainline-12.0.0_r57android-mainline-12.0.0_r56android-mainline-12.0.0_r53android-mainline-12.0.0_r52android-mainline-12.0.0_r51android-mainline-12.0.0_r50android-mainline-12.0.0_r5android-mainline-12.0.0_r49android-mainline-12.0.0_r48android-mainline-12.0.0_r47android-mainline-12.0.0_r46android-mainline-12.0.0_r45android-mainline-12.0.0_r44android-mainline-12.0.0_r43android-mainline-12.0.0_r42android-mainline-12.0.0_r41android-mainline-12.0.0_r40android-mainline-12.0.0_r39android-mainline-12.0.0_r38android-mainline-12.0.0_r37android-mainline-12.0.0_r35android-mainline-12.0.0_r34android-mainline-12.0.0_r33android-mainline-12.0.0_r32android-mainline-12.0.0_r31android-mainline-12.0.0_r30android-mainline-12.0.0_r3android-mainline-12.0.0_r29android-mainline-12.0.0_r28android-mainline-12.0.0_r27android-mainline-12.0.0_r26android-mainline-12.0.0_r25android-mainline-12.0.0_r24android-mainline-12.0.0_r23android-mainline-12.0.0_r22android-mainline-12.0.0_r21android-mainline-12.0.0_r20android-mainline-12.0.0_r2android-mainline-12.0.0_r19android-mainline-12.0.0_r18android-mainline-12.0.0_r17android-mainline-12.0.0_r16android-mainline-12.0.0_r15android-mainline-12.0.0_r14android-mainline-12.0.0_r13android-mainline-12.0.0_r126android-mainline-12.0.0_r125android-mainline-12.0.0_r124android-mainline-12.0.0_r123android-mainline-12.0.0_r122android-mainline-12.0.0_r121android-mainline-12.0.0_r120android-mainline-12.0.0_r12android-mainline-12.0.0_r119android-mainline-12.0.0_r118android-mainline-12.0.0_r117android-mainline-12.0.0_r116android-mainline-12.0.0_r115android-mainline-12.0.0_r114android-mainline-12.0.0_r113android-mainline-12.0.0_r110android-mainline-12.0.0_r11android-mainline-12.0.0_r109android-mainline-12.0.0_r108android-mainline-12.0.0_r107android-mainline-12.0.0_r106android-mainline-12.0.0_r105android-mainline-12.0.0_r104android-mainline-12.0.0_r103android-mainline-12.0.0_r102android-mainline-12.0.0_r101android-mainline-12.0.0_r100android-mainline-12.0.0_r10android-mainline-12.0.0_r1aml_wif_311811030aml_tz3_311312010aml_tet_311811050aml_sdk_311710000aml_pco_311011000aml_mpr_311911090aml_doc_310851020android12-mainline-wifi-releaseandroid12-mainline-tethering-releaseandroid12-mainline-statsd-releaseandroid12-mainline-sdkext-releaseandroid12-mainline-resolv-releaseandroid12-mainline-permission-releaseandroid12-mainline-neuralnetworks-releaseandroid12-mainline-networkstack-releaseandroid12-mainline-mediaprovider-releaseandroid12-mainline-media-swcodec-releaseandroid12-mainline-media-releaseandroid12-mainline-ipsec-releaseandroid12-mainline-extservices-releaseandroid12-mainline-documentsui-releaseandroid12-mainline-conscrypt-releaseandroid12-mainline-cellbroadcast-releaseandroid12-mainline-captiveportallogin-releaseandroid12-mainline-art-releaseandroid12-mainline-adbd-release
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/crossbeam-utils/+/1645506
Change-Id: I68c7f860acf4beaa59c0cb5aad3c1ba18842488b
-rw-r--r-- | Android.bp | 171 | ||||
-rw-r--r-- | TEST_MAPPING | 24 | ||||
-rw-r--r-- | patches/disable_panic_tests_on_android.patch | 103 | ||||
-rw-r--r-- | tests/sharded_lock.rs | 14 | ||||
-rw-r--r-- | tests/thread.rs | 8 |
5 files changed, 314 insertions, 6 deletions
@@ -1,4 +1,4 @@ -// This file is generated by cargo2android.py --run --device --dependencies. +// This file is generated by cargo2android.py --run --device --dependencies --tests. // Do not modify this file as changes will be overridden on upgrade. package { @@ -39,6 +39,159 @@ license { ], } +rust_defaults { + name: "crossbeam-utils_defaults", + crate_name: "crossbeam_utils", + srcs: ["src/lib.rs"], + test_suites: ["general-tests"], + auto_gen_config: true, + edition: "2018", + features: [ + "default", + "lazy_static", + "std", + ], + cfgs: [ + "has_atomic_u16", + "has_atomic_u32", + "has_atomic_u64", + "has_atomic_u8", + ], + rustlibs: [ + "libcfg_if", + "liblazy_static", + "librand", + ], +} + +rust_test_host { + name: "crossbeam-utils_host_test_src_lib", + defaults: ["crossbeam-utils_defaults"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_src_lib", + defaults: ["crossbeam-utils_defaults"], +} + +rust_defaults { + name: "crossbeam-utils_defaults_crossbeam_utils", + crate_name: "crossbeam_utils", + test_suites: ["general-tests"], + auto_gen_config: true, + edition: "2018", + features: [ + "default", + "lazy_static", + "std", + ], + cfgs: [ + "has_atomic_u16", + "has_atomic_u32", + "has_atomic_u64", + "has_atomic_u8", + ], + rustlibs: [ + "libcfg_if", + "libcrossbeam_utils", + "liblazy_static", + "librand", + ], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_atomic_cell", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/atomic_cell.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_atomic_cell", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/atomic_cell.rs"], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_cache_padded", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/cache_padded.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_cache_padded", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/cache_padded.rs"], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_parker", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/parker.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_parker", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/parker.rs"], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_sharded_lock", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/sharded_lock.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_sharded_lock", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/sharded_lock.rs"], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_thread", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/thread.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_thread", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/thread.rs"], +} + +rust_test_host { + name: "crossbeam-utils_host_test_tests_wait_group", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/wait_group.rs"], + test_options: { + unit_test: true, + }, +} + +rust_test { + name: "crossbeam-utils_device_test_tests_wait_group", + defaults: ["crossbeam-utils_defaults_crossbeam_utils"], + srcs: ["tests/wait_group.rs"], +} + rust_library { name: "libcrossbeam_utils", host_supported: true, @@ -50,11 +203,11 @@ rust_library { "lazy_static", "std", ], - flags: [ - "--cfg has_atomic_u16", - "--cfg has_atomic_u32", - "--cfg has_atomic_u64", - "--cfg has_atomic_u8", + cfgs: [ + "has_atomic_u16", + "has_atomic_u32", + "has_atomic_u64", + "has_atomic_u8", ], rustlibs: [ "libcfg_if", @@ -65,4 +218,10 @@ rust_library { // dependent_library ["feature_list"] // autocfg-1.0.1 // cfg-if-1.0.0 +// getrandom-0.2.2 "std" // lazy_static-1.4.0 +// libc-0.2.93 +// ppv-lite86-0.2.10 "simd,std" +// rand-0.8.3 "alloc,default,getrandom,libc,rand_chacha,rand_hc,std,std_rng" +// rand_chacha-0.3.0 "std" +// rand_core-0.6.2 "alloc,getrandom,std" diff --git a/TEST_MAPPING b/TEST_MAPPING index 25a9cdc..a68b776 100644 --- a/TEST_MAPPING +++ b/TEST_MAPPING @@ -3,6 +3,30 @@ "presubmit": [ { "name": "crossbeam-epoch_device_test_src_lib" + }, + { + "name": "crossbeam-epoch_device_test_tests_loom" + }, + { + "name": "crossbeam-utils_device_test_src_lib" + }, + { + "name": "crossbeam-utils_device_test_tests_atomic_cell" + }, + { + "name": "crossbeam-utils_device_test_tests_cache_padded" + }, + { + "name": "crossbeam-utils_device_test_tests_parker" + }, + { + "name": "crossbeam-utils_device_test_tests_sharded_lock" + }, + { + "name": "crossbeam-utils_device_test_tests_thread" + }, + { + "name": "crossbeam-utils_device_test_tests_wait_group" } ] } diff --git a/patches/disable_panic_tests_on_android.patch b/patches/disable_panic_tests_on_android.patch new file mode 100644 index 0000000..49e4758 --- /dev/null +++ b/patches/disable_panic_tests_on_android.patch @@ -0,0 +1,103 @@ +--- tests/sharded_lock.rs ++++ tests/sharded_lock.rs +@@ -46,6 +46,8 @@ fn frob() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn arc_poison_wr() { + let arc = Arc::new(ShardedLock::new(1)); + let arc2 = arc.clone(); +@@ -58,6 +60,8 @@ fn arc_poison_wr() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn arc_poison_ww() { + let arc = Arc::new(ShardedLock::new(1)); + assert!(!arc.is_poisoned()); +@@ -72,6 +76,8 @@ fn arc_poison_ww() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn arc_no_poison_rr() { + let arc = Arc::new(ShardedLock::new(1)); + let arc2 = arc.clone(); +@@ -84,6 +90,8 @@ fn arc_no_poison_rr() { + assert_eq!(*lock, 1); + } + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn arc_no_poison_sl() { + let arc = Arc::new(ShardedLock::new(1)); + let arc2 = arc.clone(); +@@ -135,6 +143,8 @@ fn arc() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn arc_access_in_unwind() { + let arc = Arc::new(ShardedLock::new(1)); + let arc2 = arc.clone(); +@@ -211,6 +221,8 @@ fn test_into_inner_drop() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn test_into_inner_poison() { + let m = Arc::new(ShardedLock::new(NonCopy(10))); + let m2 = m.clone(); +@@ -235,6 +247,8 @@ fn test_get_mut() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn test_get_mut_poison() { + let m = Arc::new(ShardedLock::new(NonCopy(10))); + let m2 = m.clone(); +--- tests/thread.rs ++++ tests/thread.rs +@@ -9,6 +9,8 @@ const THREADS: usize = 10; + const SMALL_STACK_SIZE: usize = 20; + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn join() { + let counter = AtomicUsize::new(0); + thread::scope(|scope| { +@@ -64,6 +66,8 @@ fn counter_builder() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn counter_panic() { + let counter = AtomicUsize::new(0); + let result = thread::scope(|scope| { +@@ -84,6 +88,8 @@ fn counter_panic() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn panic_twice() { + let result = thread::scope(|scope| { + scope.spawn(|_| { +@@ -108,6 +114,8 @@ fn panic_twice() { + } + + #[test] ++// Android aborts on panic and this test relies on stack unwinding. ++#[cfg(not(target_os = "android"))] + fn panic_many() { + let result = thread::scope(|scope| { + scope.spawn(|_| panic!("deliberate panic #1")); diff --git a/tests/sharded_lock.rs b/tests/sharded_lock.rs index c362154..b4b8565 100644 --- a/tests/sharded_lock.rs +++ b/tests/sharded_lock.rs @@ -46,6 +46,8 @@ fn frob() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn arc_poison_wr() { let arc = Arc::new(ShardedLock::new(1)); let arc2 = arc.clone(); @@ -58,6 +60,8 @@ fn arc_poison_wr() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn arc_poison_ww() { let arc = Arc::new(ShardedLock::new(1)); assert!(!arc.is_poisoned()); @@ -72,6 +76,8 @@ fn arc_poison_ww() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn arc_no_poison_rr() { let arc = Arc::new(ShardedLock::new(1)); let arc2 = arc.clone(); @@ -84,6 +90,8 @@ fn arc_no_poison_rr() { assert_eq!(*lock, 1); } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn arc_no_poison_sl() { let arc = Arc::new(ShardedLock::new(1)); let arc2 = arc.clone(); @@ -135,6 +143,8 @@ fn arc() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn arc_access_in_unwind() { let arc = Arc::new(ShardedLock::new(1)); let arc2 = arc.clone(); @@ -208,6 +218,8 @@ fn test_into_inner_drop() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn test_into_inner_poison() { let m = Arc::new(ShardedLock::new(NonCopy(10))); let m2 = m.clone(); @@ -232,6 +244,8 @@ fn test_get_mut() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn test_get_mut_poison() { let m = Arc::new(ShardedLock::new(NonCopy(10))); let m2 = m.clone(); diff --git a/tests/thread.rs b/tests/thread.rs index 0dfad90..280b73f 100644 --- a/tests/thread.rs +++ b/tests/thread.rs @@ -9,6 +9,8 @@ const THREADS: usize = 10; const SMALL_STACK_SIZE: usize = 20; #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn join() { let counter = AtomicUsize::new(0); thread::scope(|scope| { @@ -64,6 +66,8 @@ fn counter_builder() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn counter_panic() { let counter = AtomicUsize::new(0); let result = thread::scope(|scope| { @@ -84,6 +88,8 @@ fn counter_panic() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn panic_twice() { let result = thread::scope(|scope| { scope.spawn(|_| { @@ -108,6 +114,8 @@ fn panic_twice() { } #[test] +// Android aborts on panic and this test relies on stack unwinding. +#[cfg(not(target_os = "android"))] fn panic_many() { let result = thread::scope(|scope| { scope.spawn(|_| panic!("deliberate panic #1")); |