@@ -81,6 +81,7 @@ TEST(SortAndFilterDevicesDrmTest, whenSortingAndFilteringDevicesThenMemoryOperat
8181 DebugManager.flags .CreateMultipleRootDevices .set (numRootDevices);
8282 DebugManager.flags .ZE_AFFINITY_MASK .set (" 1,2,3,4,5" );
8383
84+ VariableBackup<uint32_t > osContextCountBackup (&MemoryManager::maxOsContextCount);
8485 VariableBackup<std::map<std::string, std::vector<std::string>>> directoryFilesMapBackup (&directoryFilesMap);
8586 VariableBackup<const char *> pciDevicesDirectoryBackup (&Os::pciDevicesDirectory);
8687 VariableBackup<decltype (SysCalls::sysCallsOpen)> mockOpen (&SysCalls::sysCallsOpen, [](const char *pathname, int flags) -> int {
@@ -115,3 +116,17 @@ TEST(SortAndFilterDevicesDrmTest, whenSortingAndFilteringDevicesThenMemoryOperat
115116 EXPECT_EQ (rootDeviceIndex, static_cast <DrmMemoryOperationsHandlerBind &>(*executionEnvironment.rootDeviceEnvironments [rootDeviceIndex]->memoryOperationsInterface ).getRootDeviceIndex ());
116117 }
117118}
119+
120+ TEST (DeviceFactoryAffinityMaskTest, whenAffinityMaskDoesNotSelectAnyDeviceThenEmptyEnvironmentIsReturned) {
121+ static const auto numRootDevices = 6 ;
122+ DebugManagerStateRestore dbgRestorer;
123+ DebugManager.flags .CreateMultipleRootDevices .set (numRootDevices);
124+ DebugManager.flags .ZE_AFFINITY_MASK .set (" 100" );
125+
126+ VariableBackup<uint32_t > osContextCountBackup (&MemoryManager::maxOsContextCount);
127+ ExecutionEnvironment executionEnvironment{};
128+ bool success = DeviceFactory::prepareDeviceEnvironments (executionEnvironment);
129+ EXPECT_TRUE (success);
130+
131+ EXPECT_EQ (0u , executionEnvironment.rootDeviceEnvironments .size ());
132+ }
0 commit comments