| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- /*
- * Copyright (c) Contributors to the Open 3D Engine Project.
- * For complete copyright and license terms please see the LICENSE at the root of this distribution.
- *
- * SPDX-License-Identifier: Apache-2.0 OR MIT
- *
- */
- #include <Tests/Framework/ScriptCanvasUnitTestFixture.h>
- #include <Libraries/Math/Vector3.h>
- namespace ScriptCanvasUnitTest
- {
- using namespace ScriptCanvas;
- using ScriptCanvasUnitTestVector3Functions = ScriptCanvasUnitTestFixture;
- TEST_F(ScriptCanvasUnitTestVector3Functions, Absolute_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Absolute(AZ::Vector3(-1, -1, -1));
- EXPECT_EQ(actualResult, AZ::Vector3::CreateOne());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, BuildTangentBasis_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::BuildTangentBasis(AZ::Vector3(1, 0, 0));
- EXPECT_EQ(AZStd::get<0>(actualResult), AZ::Vector3(0, 0, 1));
- EXPECT_EQ(AZStd::get<1>(actualResult), AZ::Vector3(0, -1, 0));
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Clamp_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Clamp(AZ::Vector3(-2, 2, 0), AZ::Vector3(-1, -1, -1), AZ::Vector3(1, 1, 1));
- EXPECT_EQ(actualResult, AZ::Vector3(-1, 1, 0));
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Cross_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Cross(AZ::Vector3::CreateOne(), AZ::Vector3::CreateOne());
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Distance_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Distance(AZ::Vector3(-1, 0, 0), AZ::Vector3(1, 0, 0));
- EXPECT_EQ(actualResult, 2);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, DistanceSquared_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::DistanceSquared(AZ::Vector3(-1, 0, 0), AZ::Vector3(1, 0, 0));
- EXPECT_EQ(actualResult, 4);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Dot_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Dot(AZ::Vector3::CreateOne(), AZ::Vector3::CreateOne());
- EXPECT_EQ(actualResult, 3);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, FromValues_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::FromValues(1, 1, 1);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateOne());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, GetElement_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::GetElement(AZ::Vector3::CreateOne(), 0);
- EXPECT_EQ(actualResult, 1);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, IsClose_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::IsClose(AZ::Vector3::CreateOne(), AZ::Vector3::CreateOne(), 0.001);
- EXPECT_TRUE(actualResult);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, IsFinite_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::IsFinite(AZ::Vector3::CreateOne());
- EXPECT_TRUE(actualResult);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, IsNormalized_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::IsNormalized(AZ::Vector3(1, 0, 0), 0.001);
- EXPECT_TRUE(actualResult);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, IsPerpendicular_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::IsPerpendicular(AZ::Vector3(1, 0, 0), AZ::Vector3(0, 1, 0), 0.001);
- EXPECT_TRUE(actualResult);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, IsZero_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::IsZero(AZ::Vector3::CreateZero(), 0.001);
- EXPECT_TRUE(actualResult);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Length_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Length(AZ::Vector3(3, 4, 0));
- EXPECT_EQ(actualResult, 5);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, LengthReciprocal_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::LengthReciprocal(AZ::Vector3(-3, 4, 0));
- EXPECT_TRUE(AZStd::abs(actualResult - 0.2) < 0.001);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, LengthSquared_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::LengthSquared(AZ::Vector3(3, 4, 0));
- EXPECT_EQ(actualResult, 25);
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Lerp_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Lerp(AZ::Vector3(0, 0, 0), AZ::Vector3(1, 0, 0), 0.5);
- EXPECT_EQ(actualResult, AZ::Vector3(0.5, 0, 0));
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Max_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Max(AZ::Vector3(1, 0, 0), AZ::Vector3(0, 1, 1));
- EXPECT_EQ(actualResult, AZ::Vector3::CreateOne());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Min_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Min(AZ::Vector3(1, 0, 0), AZ::Vector3(0, 1, 0));
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, SetX_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::SetX(AZ::Vector3(1, 0, 0), 0);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, SetY_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::SetY(AZ::Vector3(0, 1, 0), 0);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, SetZ_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::SetZ(AZ::Vector3(0, 0, 1), 0);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, MultiplyByNumber_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::MultiplyByNumber(AZ::Vector3(1, 1, 1), 0);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Negate_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Negate(AZ::Vector3(1, 1, 1));
- EXPECT_EQ(actualResult, AZ::Vector3(-1, -1, -1));
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Normalize_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Normalize(AZ::Vector3(1, 0, 0));
- EXPECT_EQ(actualResult, AZ::Vector3(1, 0, 0));
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Project_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Project(AZ::Vector3(1, 0, 0), AZ::Vector3(0, 1, 0));
- EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Reciprocal_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Reciprocal(AZ::Vector3::CreateOne());
- #if AZ_TRAIT_USE_PLATFORM_SIMD_NEON
- EXPECT_THAT(actualResult, IsClose(AZ::Vector3::CreateOne()));
- #else
- EXPECT_EQ(actualResult, AZ::Vector3::CreateOne());
- #endif // AZ_TRAIT_USE_PLATFORM_SIMD_NEON
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, Slerp_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::Slerp(AZ::Vector3::CreateOne(), AZ::Vector3::CreateOne(), 0.5);
- EXPECT_EQ(actualResult, AZ::Vector3::CreateOne());
- }
- TEST_F(ScriptCanvasUnitTestVector3Functions, DirectionTo_Call_GetExpectedResult)
- {
- auto actualResult = Vector3Functions::DirectionTo(AZ::Vector3::CreateZero(), AZ::Vector3(1, 0, 0), 1);
- #if AZ_TRAIT_USE_PLATFORM_SIMD_NEON
- EXPECT_THAT(AZStd::get<0>(actualResult), IsClose(AZ::Vector3(1, 0, 0)));
- #else
- EXPECT_EQ(AZStd::get<0>(actualResult), AZ::Vector3(1, 0, 0));
- #endif // AZ_TRAIT_USE_PLATFORM_SIMD_NEON
- EXPECT_EQ(AZStd::get<1>(actualResult), 1);
- }
- } // namespace ScriptCanvasUnitTest
|