Преглед на файлове

move DragMouse test utility to AzManipulatorTestFrameworkUtils

Signed-off-by: greerdv <[email protected]>
greerdv преди 2 години
родител
ревизия
444e841c6e

+ 12 - 0
Code/Framework/AzManipulatorTestFramework/Include/AzManipulatorTestFramework/AzManipulatorTestFrameworkUtils.h

@@ -12,6 +12,7 @@
 #include <AzToolsFramework/Manipulators/ManipulatorBus.h>
 #include <AzToolsFramework/Manipulators/ManipulatorManager.h>
 #include <AzToolsFramework/Manipulators/PlanarManipulator.h>
+#include <AzManipulatorTestFramework/ImmediateModeActionDispatcher.h>
 
 namespace AzManipulatorTestFramework
 {
@@ -41,4 +42,15 @@ namespace AzManipulatorTestFramework
 
     //! Default viewport size (1080p) in 16:9 aspect ratio.
     inline const auto DefaultViewportSize = AzFramework::ScreenSize(1920, 1080);
+
+    //! Converts the provided world start and end positions into screen space co-ordinates for the given camera state,
+    //! and drags the mouse from the start to the end position.
+    //! A keyboard modifier can optionally be provided.
+    void DragMouse(
+        const AzFramework::CameraState& cameraState,
+        AzManipulatorTestFramework::ImmediateModeActionDispatcher* actionDispatcher,
+        const AZ::Vector3& worldStart,
+        const AZ::Vector3& worldEnd,
+        const AzToolsFramework::ViewportInteraction::KeyboardModifier keyboardModifier =
+            AzToolsFramework::ViewportInteraction::KeyboardModifier::None);
 } // namespace AzManipulatorTestFramework

+ 19 - 0
Code/Framework/AzManipulatorTestFramework/Source/AzManipulatorTestFrameworkUtils.cpp

@@ -106,4 +106,23 @@ namespace AzManipulatorTestFramework
     {
         return { cameraState.m_viewportSize.m_width / 2, cameraState.m_viewportSize.m_height / 2 };
     }
+
+    void DragMouse(
+        const AzFramework::CameraState& cameraState,
+        AzManipulatorTestFramework::ImmediateModeActionDispatcher* actionDispatcher,
+        const AZ::Vector3& worldStart,
+        const AZ::Vector3& worldEnd,
+        const AzToolsFramework::ViewportInteraction::KeyboardModifier keyboardModifier)
+    {
+        const auto screenStart = AzFramework::WorldToScreen(worldStart, cameraState);
+        const auto screenEnd = AzFramework::WorldToScreen(worldEnd, cameraState);
+
+        actionDispatcher
+            ->CameraState(cameraState)
+            ->MousePosition(screenStart)
+            ->KeyboardModifierDown(keyboardModifier)
+            ->MouseLButtonDown()
+            ->MousePosition(screenEnd)
+            ->MouseLButtonUp();
+    }
 } // namespace AzManipulatorTestFramework

+ 0 - 19
Gems/LmbrCentral/Code/Tests/EditorShapeTestUtils.cpp

@@ -18,25 +18,6 @@ namespace LmbrCentral
     // use a large tolerance for manipulator tests, because accuracy is limited by viewport resolution
     static constexpr float ManipulatorTolerance = 0.1f;
 
-    void DragMouse(
-        const AzFramework::CameraState& cameraState,
-        AzManipulatorTestFramework::ImmediateModeActionDispatcher* actionDispatcher,
-        const AZ::Vector3& worldStart,
-        const AZ::Vector3& worldEnd,
-        const AzToolsFramework::ViewportInteraction::KeyboardModifier keyboardModifier)
-    {
-        const auto screenStart = AzFramework::WorldToScreen(worldStart, cameraState);
-        const auto screenEnd = AzFramework::WorldToScreen(worldEnd, cameraState);
-
-        actionDispatcher
-            ->CameraState(cameraState)
-            ->MousePosition(screenStart)
-            ->KeyboardModifierDown(keyboardModifier)
-            ->MouseLButtonDown()
-            ->MousePosition(screenEnd)
-            ->MouseLButtonUp();
-    }
-
     void EnterComponentMode(AZ::EntityId entityId, const AZ::Uuid& componentType)
     {
         AzToolsFramework::SelectEntity(entityId);

+ 1 - 8
Gems/LmbrCentral/Code/Tests/EditorShapeTestUtils.h

@@ -11,6 +11,7 @@
 #include <AZTestShared/Utils/Utils.h>
 #include <AzManipulatorTestFramework/AzManipulatorTestFramework.h>
 #include <AzManipulatorTestFramework/AzManipulatorTestFrameworkTestHelpers.h>
+#include <AzManipulatorTestFramework/AzManipulatorTestFrameworkUtils.h>
 #include <AzManipulatorTestFramework/ImmediateModeActionDispatcher.h>
 #include <AzManipulatorTestFramework/IndirectManipulatorViewportInteraction.h>
 #include <AzManipulatorTestFramework/ViewportInteraction.h>
@@ -18,14 +19,6 @@
 
 namespace LmbrCentral
 {
-    void DragMouse(
-        const AzFramework::CameraState& cameraState,
-        AzManipulatorTestFramework::ImmediateModeActionDispatcher* actionDispatcher,
-        const AZ::Vector3& worldStart,
-        const AZ::Vector3& worldEnd,
-        const AzToolsFramework::ViewportInteraction::KeyboardModifier keyboardModifier =
-        AzToolsFramework::ViewportInteraction::KeyboardModifier::None);
-
     void EnterComponentMode(AZ::EntityId entityId, const AZ::Uuid& componentType);
 
     void SetComponentSubMode(

+ 1 - 20
Gems/PhysX/Code/Tests/PhysXColliderComponentModeTests.cpp

@@ -10,6 +10,7 @@
 
 #include <AzManipulatorTestFramework/IndirectManipulatorViewportInteraction.h>
 #include <AzManipulatorTestFramework/AzManipulatorTestFrameworkTestHelpers.h>
+#include <AzManipulatorTestFramework/AzManipulatorTestFrameworkUtils.h>
 #include <AZTestShared/Math/MathTestHelpers.h>
 #include <AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.h>
 #include <AzToolsFramework/ViewportSelection/EditorInteractionSystemViewportSelectionRequestBus.h>
@@ -64,26 +65,6 @@ namespace UnitTest
         }
     };
 
-    void DragMouse(
-        const AzFramework::CameraState& cameraState,
-        AzManipulatorTestFramework::ImmediateModeActionDispatcher* actionDispatcher,
-        const AZ::Vector3& worldStart,
-        const AZ::Vector3& worldEnd,
-        const AzToolsFramework::ViewportInteraction::KeyboardModifier keyboardModifier =
-            AzToolsFramework::ViewportInteraction::KeyboardModifier::None)
-    {
-        const auto screenStart = AzFramework::WorldToScreen(worldStart, cameraState);
-        const auto screenEnd = AzFramework::WorldToScreen(worldEnd, cameraState);
-
-        actionDispatcher
-            ->CameraState(cameraState)
-            ->MousePosition(screenStart)
-            ->KeyboardModifierDown(keyboardModifier)
-            ->MouseLButtonDown()
-            ->MousePosition(screenEnd)
-            ->MouseLButtonUp();
-    }
-
     TEST_F(PhysXColliderComponentModeTest, MouseWheelUpShouldSetNextMode)
     {
         // Given there is a collider component in component mode.