2
0
amzn-mike 2 жил өмнө
parent
commit
05d25e48c2

+ 0 - 2
Code/Tools/AssetProcessor/native/tests/AssetProcessorTest.cpp

@@ -49,8 +49,6 @@ namespace AssetProcessor
 
             m_platformConfig.reset(new AssetProcessor::PlatformConfiguration);
 
-            m_platformConfig->AddScanFolder(AssetProcessor::ScanFolderInfo{ "c:/somerandomfolder", "scanfolder", "scanfolder", true, true, {} , 0, 1});
-            m_platformConfig->AddScanFolder(AssetProcessor::ScanFolderInfo{ "d:/test", "scanfolder2", "scanfolder2", true, true, {} , 0, 2});
 
             m_connectionManager.reset(new ConnectionManager(m_platformConfig.get()));
             RegisterObjectForQuit(m_connectionManager.get());

+ 23 - 21
Code/Tools/AssetProcessor/native/unittests/RCcontrollerUnitTests.cpp

@@ -29,7 +29,7 @@ namespace
 {
     constexpr NetworkRequestID RequestID(1, 1234);
     constexpr int MaxProcessingWaitTimeMs = 60 * 1000; // Wait up to 1 minute.  Give a generous amount of time to allow for slow CPUs
-    const ScanFolderInfo TestScanFolderInfo("samplepath", "sampledisplayname", "samplekey", false, false);
+    const ScanFolderInfo TestScanFolderInfo("c:/samplepath", "sampledisplayname", "samplekey", false, false);
     const AZ::Uuid BuilderUuid = AZ::Uuid::CreateRandom();
 }
 
@@ -256,6 +256,16 @@ void RCcontrollerUnitTests::SetUp()
     UnitTest::AssetProcessorUnitTestBase::SetUp();
     m_rcController = AZStd::make_unique<AssetProcessor::RCController>(1, 4);
 
+    QDir assetRootPath(m_assetDatabaseRequestsHandler->GetAssetRootDir().c_str());
+
+    m_appManager->m_platformConfig->AddScanFolder(TestScanFolderInfo);
+    m_appManager->m_platformConfig->AddScanFolder(
+        AssetProcessor::ScanFolderInfo{ "c:/somerandomfolder", "scanfolder", "scanfolder", true, true, {}, 0, 1 });
+    m_appManager->m_platformConfig->AddScanFolder(
+        AssetProcessor::ScanFolderInfo{ "d:/test", "scanfolder2", "scanfolder2", true, true, {}, 0, 2 });
+    m_appManager->m_platformConfig->AddScanFolder(
+        AssetProcessor::ScanFolderInfo{ assetRootPath.absoluteFilePath("subfolder4"), "subfolder4", "subfolder4", false, true, {}, 0, 3 });
+
     using namespace AssetProcessor;
     m_rcJobListModel = m_rcController->GetQueueModel();
     m_rcQueueSortModel = &m_rcController->m_RCQueueSortModel;
@@ -334,7 +344,7 @@ TEST_F(RCcontrollerUnitTests, TestCompileGroup_RequestExactMatchCompileGroup_Suc
 }
 
 TEST_F(RCcontrollerUnitTests, TestCompileGroup_RequestNoMatchCompileGroup_Succeeds)
-{  
+{
     bool gotCreated = false;
     bool gotCompleted = false;
     NetworkRequestID gotGroupID;
@@ -584,14 +594,6 @@ TEST_F(RCcontrollerUnitTests, TestRCController_StartRCJobWithCriticalLocking_Blo
 
     EXPECT_TRUE(UnitTestUtils::CreateDummyFile(fileInUsePath, "xxx"));
 
-    auto* appManager = AZ::Interface<IUnitTestAppManager>::Get();
-
-    UNIT_TEST_EXPECT_FALSE(appManager == nullptr);
-
-    auto& config = appManager->GetConfig();
-    config.AddScanFolder(
-        AssetProcessor::ScanFolderInfo{ tempPath.absoluteFilePath("subfolder4"), "subfolder4", "subfolder4", false, true, {}, 0, 3 }); // ID = 3 because this test setup already has 2 existing scanfolders
-
     QFile lockFileTest(fileInUsePath);
 #if defined(AZ_PLATFORM_WINDOWS)
     // on windows, its enough to just open the file:
@@ -614,8 +616,6 @@ TEST_F(RCcontrollerUnitTests, TestRCController_StartRCJobWithCriticalLocking_Blo
     jobDetailsToInitWith.m_scanFolder = &TestScanFolderInfo;
     rcJob.Init(jobDetailsToInitWith);
 
-    config.AddScanFolder(scanFolderInfo);
-
     bool beginWork = false;
     QObject::connect(&rcJob, &RCJob::BeginWork, this, [&beginWork]()
         {
@@ -687,7 +687,7 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithDependencies_Dispatch
     JobDetails jobdetailsA;
     jobdetailsA.m_scanFolder = &TestScanFolderInfo;
     jobdetailsA.m_assetBuilderDesc = m_assetBuilderDesc;
-    jobdetailsA.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "fileA.txt");
+    jobdetailsA.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "fileA.txt");
     jobdetailsA.m_jobEntry.m_platformInfo = { "pc" ,{ "desktop", "renderer" } };
     jobdetailsA.m_jobEntry.m_jobKey = "TestJobA";
     jobdetailsA.m_jobEntry.m_builderGuid = BuilderUuid;
@@ -714,7 +714,7 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithDependencies_Dispatch
     JobDetails jobdetailsB;
     jobdetailsB.m_scanFolder = &TestScanFolderInfo;
     jobdetailsA.m_assetBuilderDesc = m_assetBuilderDesc;
-    jobdetailsB.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "fileB.txt");
+    jobdetailsB.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "fileB.txt");
     jobdetailsB.m_jobEntry.m_platformInfo = { "pc" ,{ "desktop", "renderer" } };
     jobdetailsB.m_jobEntry.m_jobKey = "TestJobB";
     jobdetailsB.m_jobEntry.m_builderGuid = BuilderUuid;
@@ -722,7 +722,7 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithDependencies_Dispatch
     jobdetailsB.m_critical = true; //make jobB critical so that it will be analyzed first even though we want JobA to run first
 
     AssetBuilderSDK::SourceFileDependency sourceFileADependency;
-    sourceFileADependency.m_sourceFileDependencyPath = (AZ::IO::Path(scanFolderInfo.ScanPath().toUtf8().constData()) / "fileA.txt").Native();
+    sourceFileADependency.m_sourceFileDependencyPath = (AZ::IO::Path(TestScanFolderInfo.ScanPath().toUtf8().constData()) / "fileA.txt").Native();
 
     // Make job B has an order job dependency on Job A
     AssetBuilderSDK::JobDependency jobDependencyA("TestJobA", "pc", AssetBuilderSDK::JobDependencyType::Order, sourceFileADependency);
@@ -776,25 +776,26 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithCyclicDependencies_Al
     JobDetails jobdetailsC;
     jobdetailsC.m_scanFolder = &TestScanFolderInfo;
     jobdetailsC.m_assetBuilderDesc = m_assetBuilderDesc;
-    jobdetailsC.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "fileC.txt");
+    jobdetailsC.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "fileC.txt");
     jobdetailsC.m_jobEntry.m_platformInfo = { "pc" ,{ "desktop", "renderer" } };
     jobdetailsC.m_jobEntry.m_jobKey = "TestJobC";
     jobdetailsC.m_jobEntry.m_builderGuid = BuilderUuid;
 
     AssetBuilderSDK::SourceFileDependency sourceFileCDependency;
     sourceFileCDependency.m_sourceFileDependencyPath =
-        (AZ::IO::Path(scanFolderInfo.ScanPath().toUtf8().constData()) / "fileC.txt").Native();
+        (AZ::IO::Path(TestScanFolderInfo.ScanPath().toUtf8().constData()) / "fileC.txt").Native();
 
     //Setting up Job D
     JobDetails jobdetailsD;
     jobdetailsD.m_scanFolder = &TestScanFolderInfo;
     jobdetailsD.m_assetBuilderDesc = m_assetBuilderDesc;
-    jobdetailsD.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "fileD.txt");
+    jobdetailsD.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "fileD.txt");
     jobdetailsD.m_jobEntry.m_platformInfo = { "pc" ,{ "desktop", "renderer" } };
     jobdetailsD.m_jobEntry.m_jobKey = "TestJobD";
     jobdetailsD.m_jobEntry.m_builderGuid = BuilderUuid;
     AssetBuilderSDK::SourceFileDependency sourceFileDDependency;
-    sourceFileDDependency.m_sourceFileDependencyPath = (AZ::IO::Path(scanFolderInfo.ScanPath().toUtf8().constData()) / "fileD.txt").Native();
+    sourceFileDDependency.m_sourceFileDependencyPath =
+        (AZ::IO::Path(TestScanFolderInfo.ScanPath().toUtf8().constData()) / "fileD.txt").Native();
 
     //creating cyclic job order dependencies i.e  JobC and JobD have order job dependency on each other
     AssetBuilderSDK::JobDependency jobDependencyC("TestJobC", "pc", AssetBuilderSDK::JobDependencyType::Order, sourceFileCDependency);
@@ -822,7 +823,8 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithCyclicDependencies_Al
         int prevJobCount = m_rcJobListModel->itemCount();
         MockRCJob rcJobAddAndDelete;
         AssetProcessor::JobDetails jobDetailsToInitWithInsideScope;
-        jobDetailsToInitWithInsideScope.m_jobEntry.m_sourceAssetReference = AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "someFile0.txt");
+        jobDetailsToInitWithInsideScope.m_jobEntry.m_sourceAssetReference =
+            AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "someFile0.txt");
         jobDetailsToInitWithInsideScope.m_jobEntry.m_platformInfo = { "pc",{ "tools", "editor" } };
         jobDetailsToInitWithInsideScope.m_jobEntry.m_jobKey = "Text files";
         jobDetailsToInitWithInsideScope.m_jobEntry.m_sourceFileUUID = AZ::Uuid("{D013122E-CF2C-4534-A87D-F82570FBC2CD}");
@@ -832,7 +834,7 @@ TEST_F(RCcontrollerUnitTests, TestRCController_FeedJobsWithCyclicDependencies_Al
 
         // verify that job was added
         EXPECT_EQ(m_rcJobListModel->itemCount(), prevJobCount + 1);
-        m_rcController->RemoveJobsBySource(AssetProcessor::SourceAssetReference(scanFolderInfo.ScanPath(), "someFile0.txt"));
+        m_rcController->RemoveJobsBySource(AssetProcessor::SourceAssetReference(TestScanFolderInfo.ScanPath(), "someFile0.txt"));
         // verify that job was removed
         EXPECT_EQ(m_rcJobListModel->itemCount(), prevJobCount);
     }