SceneTests.cpp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  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 <AzTest/AzTest.h>
  9. #include <AzCore/UnitTest/TestTypes.h>
  10. #include <SceneAPI/SceneCore/Containers/Scene.h>
  11. namespace AZ
  12. {
  13. namespace SceneAPI
  14. {
  15. namespace Containers
  16. {
  17. // Allocators are setup by the test's environment initialization since they need to be passed to another dll
  18. using SceneTest = ::testing::Test;
  19. TEST_F(SceneTest, Constructor_StringRef_HasCorrectName)
  20. {
  21. AZStd::string sampleSceneName = "testName";
  22. Scene testScene(sampleSceneName);
  23. EXPECT_TRUE(sampleSceneName == testScene.GetName());
  24. }
  25. TEST_F(SceneTest, Constructor_StringRefRef_HasCorrectName)
  26. {
  27. const char* sampleNameChrStar = "testName";
  28. AZStd::string sampleSceneName = sampleNameChrStar;
  29. Scene testScene(AZStd::move(sampleSceneName));
  30. EXPECT_TRUE(strcmp(sampleNameChrStar, testScene.GetName().c_str()) == 0);
  31. }
  32. TEST_F(SceneTest, Constructor_EmptyStrRef_HasCorrectName)
  33. {
  34. AZStd::string sampleSceneName = "";
  35. Scene testScene(sampleSceneName);
  36. EXPECT_TRUE(sampleSceneName == testScene.GetName().c_str());
  37. }
  38. class SceneFilenameTests
  39. : public ::testing::Test
  40. {
  41. public:
  42. SceneFilenameTests()
  43. : m_testId(Uuid::CreateString("{C9B909EE-0751-4BD7-B68B-B2C48D535396}"))
  44. , m_testScene("testScene")
  45. {
  46. }
  47. protected:
  48. AZ::Uuid m_testId;
  49. Scene m_testScene;
  50. };
  51. TEST_F(SceneFilenameTests, SetSource_StringRef_SourceFileRegistered)
  52. {
  53. AZStd::string testFilename = "testFilename.fbx";
  54. m_testScene.SetSource(testFilename, m_testId);
  55. const AZStd::string compareFilename = m_testScene.GetSourceFilename();
  56. EXPECT_STREQ(testFilename.c_str(), compareFilename.c_str());
  57. EXPECT_EQ(m_testId, m_testScene.GetSourceGuid());
  58. }
  59. TEST_F(SceneFilenameTests, SetSource_StringRefRef_SourceFileRegistered)
  60. {
  61. const char* testChrFilename = "testFilename.fbx";
  62. AZStd::string testFilename = testChrFilename;
  63. m_testScene.SetSource(AZStd::move(testFilename), m_testId);
  64. const AZStd::string compareFilename = m_testScene.GetSourceFilename();
  65. EXPECT_STREQ(testChrFilename, compareFilename.c_str());
  66. EXPECT_EQ(m_testId, m_testScene.GetSourceGuid());
  67. }
  68. TEST_F(SceneFilenameTests, SetManifestFilename_StringRef_ManifestFileRegistered)
  69. {
  70. AZStd::string testFilename = "testFilename.assetinfo";
  71. m_testScene.SetManifestFilename(testFilename);
  72. const AZStd::string compareFilename = m_testScene.GetManifestFilename();
  73. EXPECT_STREQ(testFilename.c_str(), compareFilename.c_str());
  74. }
  75. TEST_F(SceneFilenameTests, SetManifestFilename_StringRefRef_ManifestFileRegistered)
  76. {
  77. const char* testChrFilename = "testFilename.assetinfo";
  78. AZStd::string testFilename = testChrFilename;
  79. m_testScene.SetManifestFilename(AZStd::move(testFilename));
  80. const AZStd::string compareFilename = m_testScene.GetManifestFilename();
  81. EXPECT_STREQ(testChrFilename, compareFilename.c_str());
  82. }
  83. }
  84. }
  85. }