ScriptCanvasUnitTest_Plane.cpp 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #include <Tests/Framework/ScriptCanvasUnitTestFixture.h>
  9. #include <Libraries/Math/Plane.h>
  10. namespace ScriptCanvasUnitTest
  11. {
  12. using namespace ScriptCanvas;
  13. using ScriptCanvasUnitTestPlaneFunctions = ScriptCanvasUnitTestFixture;
  14. TEST_F(ScriptCanvasUnitTestPlaneFunctions, DistanceToPoint_Call_GetExpectedResult)
  15. {
  16. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  17. auto actualResult = PlaneFunctions::DistanceToPoint(source, AZ::Vector3::CreateZero());
  18. EXPECT_TRUE(actualResult - 0 < 0.001);
  19. }
  20. TEST_F(ScriptCanvasUnitTestPlaneFunctions, FromNormalAndDistance_Call_GetExpectedResult)
  21. {
  22. auto actualResult = PlaneFunctions::FromNormalAndDistance(AZ::Vector3(0, 0, 1), 0);
  23. EXPECT_EQ(actualResult, AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero()));
  24. }
  25. TEST_F(ScriptCanvasUnitTestPlaneFunctions, FromNormalAndPoint_Call_GetExpectedResult)
  26. {
  27. auto actualResult = PlaneFunctions::FromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  28. EXPECT_EQ(actualResult, AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero()));
  29. }
  30. TEST_F(ScriptCanvasUnitTestPlaneFunctions, GetDistance_Call_GetExpectedResult)
  31. {
  32. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  33. auto actualResult = PlaneFunctions::GetDistance(source);
  34. EXPECT_TRUE(actualResult - 0 < 0.001);
  35. }
  36. TEST_F(ScriptCanvasUnitTestPlaneFunctions, GetNormal_Call_GetExpectedResult)
  37. {
  38. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  39. auto actualResult = PlaneFunctions::GetNormal(source);
  40. EXPECT_EQ(actualResult, AZ::Vector3(0, 0, 1));
  41. }
  42. TEST_F(ScriptCanvasUnitTestPlaneFunctions, GetPlaneEquationCoefficients_Call_GetExpectedResult)
  43. {
  44. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  45. auto actualResult = PlaneFunctions::GetPlaneEquationCoefficients(source);
  46. EXPECT_EQ(AZStd::get<0>(actualResult), 0);
  47. EXPECT_EQ(AZStd::get<1>(actualResult), 0);
  48. EXPECT_EQ(AZStd::get<2>(actualResult), 1);
  49. EXPECT_EQ(AZStd::get<3>(actualResult), 0);
  50. }
  51. TEST_F(ScriptCanvasUnitTestPlaneFunctions, IsFinite_Call_GetExpectedResult)
  52. {
  53. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  54. auto actualResult = PlaneFunctions::IsFinite(source);
  55. EXPECT_TRUE(actualResult);
  56. }
  57. TEST_F(ScriptCanvasUnitTestPlaneFunctions, Project_Call_GetExpectedResult)
  58. {
  59. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  60. auto actualResult = PlaneFunctions::Project(source, AZ::Vector3(0, 0, 10));
  61. EXPECT_EQ(actualResult, AZ::Vector3::CreateZero());
  62. }
  63. TEST_F(ScriptCanvasUnitTestPlaneFunctions, Transform_Call_GetExpectedResult)
  64. {
  65. AZ::Plane source = AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3::CreateZero());
  66. auto actualResult = PlaneFunctions::Transform(source, AZ::Transform::CreateTranslation(AZ::Vector3(0, 0, 1)));
  67. EXPECT_EQ(actualResult, AZ::Plane::CreateFromNormalAndPoint(AZ::Vector3(0, 0, 1), AZ::Vector3(0, 0, 1)));
  68. }
  69. } // namespace ScriptCanvasUnitTest