aboutsummaryrefslogtreecommitdiff
path: root/tests/vec4.rs
diff options
context:
space:
mode:
authorJeff Vander Stoep <jeffv@google.com>2023-03-06 20:27:33 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-03-06 20:27:33 +0000
commitcdccdf36d24dc97f59fffa937609aed3bee5ca9b (patch)
tree44857152bda71b9d0f279b52fd4dead143df2cd5 /tests/vec4.rs
parent04eeeb9e46d0fd779e6f739d90e5330ebcfb7f58 (diff)
parent5dcc09f9e92f3a3f03888ffc50c05e53a8cb1a8b (diff)
downloadglam-cdccdf36d24dc97f59fffa937609aed3bee5ca9b.tar.gz
Upgrade glam to 0.23.0 am: 5dcc09f9e9android-u-beta-1-gpl
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/glam/+/2470601 Change-Id: I916ea5bd3b795d34b503c6c3bb07bd4aec956a66 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'tests/vec4.rs')
-rw-r--r--tests/vec4.rs37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/vec4.rs b/tests/vec4.rs
index 47f4fa8..ce86019 100644
--- a/tests/vec4.rs
+++ b/tests/vec4.rs
@@ -747,6 +747,43 @@ macro_rules! impl_vec4_float_tests {
assert!($vec4::splat(NAN).signum().is_nan_mask().all());
});
+ glam_test!(test_copysign, {
+ assert_eq!($vec4::ZERO.copysign(-$vec4::ZERO), -$vec4::ZERO);
+ assert_eq!((-$vec4::ZERO).copysign(-$vec4::ZERO), -$vec4::ZERO);
+ assert_eq!($vec4::ZERO.copysign($vec4::ZERO), $vec4::ZERO);
+ assert_eq!((-$vec4::ZERO).copysign($vec4::ZERO), $vec4::ZERO);
+ assert_eq!($vec4::ONE.copysign(-$vec4::ZERO), -$vec4::ONE);
+ assert_eq!((-$vec4::ONE).copysign(-$vec4::ZERO), -$vec4::ONE);
+ assert_eq!($vec4::ONE.copysign($vec4::ZERO), $vec4::ONE);
+ assert_eq!((-$vec4::ONE).copysign($vec4::ZERO), $vec4::ONE);
+ assert_eq!($vec4::ZERO.copysign(-$vec4::ONE), -$vec4::ZERO);
+ assert_eq!((-$vec4::ZERO).copysign(-$vec4::ONE), -$vec4::ZERO);
+ assert_eq!($vec4::ZERO.copysign($vec4::ONE), $vec4::ZERO);
+ assert_eq!((-$vec4::ZERO).copysign($vec4::ONE), $vec4::ZERO);
+ assert_eq!($vec4::ONE.copysign(-$vec4::ONE), -$vec4::ONE);
+ assert_eq!((-$vec4::ONE).copysign(-$vec4::ONE), -$vec4::ONE);
+ assert_eq!($vec4::ONE.copysign($vec4::ONE), $vec4::ONE);
+ assert_eq!((-$vec4::ONE).copysign($vec4::ONE), $vec4::ONE);
+ assert_eq!(
+ $vec4::splat(INFINITY).copysign($vec4::ONE),
+ $vec4::splat(INFINITY)
+ );
+ assert_eq!(
+ $vec4::splat(INFINITY).copysign(-$vec4::ONE),
+ $vec4::splat(NEG_INFINITY)
+ );
+ assert_eq!(
+ $vec4::splat(NEG_INFINITY).copysign($vec4::ONE),
+ $vec4::splat(INFINITY)
+ );
+ assert_eq!(
+ $vec4::splat(NEG_INFINITY).copysign(-$vec4::ONE),
+ $vec4::splat(NEG_INFINITY)
+ );
+ assert!($vec4::splat(NAN).copysign($vec4::ONE).is_nan_mask().all());
+ assert!($vec4::splat(NAN).copysign(-$vec4::ONE).is_nan_mask().all());
+ });
+
glam_test!(test_is_negative_bitmask, {
assert_eq!($vec4::ZERO.is_negative_bitmask(), 0b0000);
assert_eq!((-$vec4::ZERO).is_negative_bitmask(), 0b1111);