ScriptCanvasAutoGenRegistryTest.cpp 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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 <AzCore/Component/Component.h>
  9. #include <AzCore/RTTI/ReflectContext.h>
  10. #include <ScriptCanvas/AutoGen/ScriptCanvasAutoGenRegistry.h>
  11. #include <Tests/Framework/ScriptCanvasUnitTestFixture.h>
  12. #include <AzCore/Component/ComponentApplicationBus.h>
  13. namespace AZ
  14. {
  15. class ComponentDescriptor;
  16. }
  17. namespace ScriptCanvasUnitTest
  18. {
  19. class MockNode
  20. : public AZ::Component
  21. {
  22. public:
  23. AZ_COMPONENT(MockNode, "{79A83E8A-0FFD-4CED-96E0-ADED256E6D8C}");
  24. ~MockNode() override = default;
  25. static void Reflect(AZ::ReflectContext*) {}
  26. // AZ::Component...
  27. void Activate() override { }
  28. void Deactivate() override { }
  29. };
  30. TEST_F(ScriptCanvasUnitTestFixture, GetDescriptors_ExpectItExists)
  31. {
  32. auto* descriptor = MockNode::CreateDescriptor();
  33. ScriptCanvasModel::Instance().RegisterReflection("MockNode", [](AZ::ReflectContext* context) { MockNode::Reflect(context); }, descriptor);
  34. auto& descriptors = ScriptCanvasModel::Instance().GetDescriptors();
  35. EXPECT_TRUE(!descriptors.empty());
  36. ScriptCanvasModel::Instance().RemoveDescriptor(descriptor);
  37. descriptor->ReleaseDescriptor();
  38. }
  39. } // namespace ScriptCanvasUnitTest