PreviewMotionFixture.cpp 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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 <EMotionStudio/Plugins/StandardPlugins/Source/AnimGraph/AnimGraphPlugin.h>
  9. #include <EMotionStudio/Plugins/StandardPlugins/Source/MotionSetsWindow/MotionSetsWindowPlugin.h>
  10. #include <Tests/UI/AnimGraphUIFixture.h>
  11. #include <Tests/ProvidesUI/AnimGraph/PreviewMotionFixture.h>
  12. namespace EMotionFX
  13. {
  14. void PreviewMotionFixture::SetUp()
  15. {
  16. AnimGraphUIFixture::SetUp();
  17. //Create one motion set, and import one motion and add to the motion set.
  18. ExecuteCommands({
  19. R"str(CreateMotionSet -name MotionSet0)str"
  20. });
  21. EMStudio::MotionSetsWindowPlugin* motionSetsWindowPlugin = static_cast<EMStudio::MotionSetsWindowPlugin*>(EMStudio::GetPluginManager()->FindActivePlugin(EMStudio::MotionSetsWindowPlugin::CLASS_ID));
  22. ASSERT_TRUE(motionSetsWindowPlugin) << "Motion Window plugin not loaded";
  23. EMotionFX::MotionSet* motionSet = EMotionFX::GetMotionManager().FindMotionSetByID(0);
  24. ASSERT_TRUE(motionSet) << "Motion set with id 0 does not exist";
  25. motionSetsWindowPlugin->SetSelectedSet(motionSet);
  26. ExecuteCommands({
  27. "ImportMotion -filename @gemroot:EMotionFX@/Code/Tests/TestAssets/Rin/rin_idle.motion",
  28. "MotionSetAddMotion -motionSetID 0 -motionFilenamesAndIds @gemroot:EMotionFX@/Code/Tests/TestAssets/Rin/rin_idle.motion;rin_idle"
  29. });
  30. char resolvedPath[AZ::IO::MaxPathLength];
  31. EXPECT_TRUE(AZ::IO::FileIOBase::GetInstance()->ResolvePath("@gemroot:EMotionFX@/Code/Tests/TestAssets/Rin/rin_idle.motion", resolvedPath, AZ_ARRAY_SIZE(resolvedPath)));
  32. m_motionFileName = resolvedPath;
  33. AzFramework::ApplicationRequests::Bus::Broadcast([](AzFramework::ApplicationRequests* requests, AZStd::string& path) { requests->NormalizePathKeepCase(path); }, m_motionFileName);
  34. m_motionName = "rin_idle";
  35. }
  36. }