Index: Core/Common/src/Core.Common.Base/ObservableUniqueItemCollectionWithSourcePath.cs =================================================================== diff -u -r121f0e24e6f6550f84a564228865287a87ad9e87 -rb0af1f0a52601b8e6b519f9b59d5c5a30ff19b2a --- Core/Common/src/Core.Common.Base/ObservableUniqueItemCollectionWithSourcePath.cs (.../ObservableUniqueItemCollectionWithSourcePath.cs) (revision 121f0e24e6f6550f84a564228865287a87ad9e87) +++ Core/Common/src/Core.Common.Base/ObservableUniqueItemCollectionWithSourcePath.cs (.../ObservableUniqueItemCollectionWithSourcePath.cs) (revision b0af1f0a52601b8e6b519f9b59d5c5a30ff19b2a) @@ -146,7 +146,7 @@ { throw new ArgumentNullException(nameof(filePath)); } - if (!IOUtils.IsValidFilePath(filePath)) + if (!IOUtils.IsValidFilePath(filePath) && filePath.Length > 0) { throw new ArgumentException($"'{filePath}' is not a valid file path.", nameof(filePath)); } Index: Core/Common/test/Core.Common.Base.Test/ObservableUniqueItemCollectionWithSourcePathTest.cs =================================================================== diff -u -r67284323e2785c651633d9c52049ba12a9c70e6a -rb0af1f0a52601b8e6b519f9b59d5c5a30ff19b2a --- Core/Common/test/Core.Common.Base.Test/ObservableUniqueItemCollectionWithSourcePathTest.cs (.../ObservableUniqueItemCollectionWithSourcePathTest.cs) (revision 67284323e2785c651633d9c52049ba12a9c70e6a) +++ Core/Common/test/Core.Common.Base.Test/ObservableUniqueItemCollectionWithSourcePathTest.cs (.../ObservableUniqueItemCollectionWithSourcePathTest.cs) (revision b0af1f0a52601b8e6b519f9b59d5c5a30ff19b2a) @@ -155,6 +155,26 @@ } [Test] + public void AddRange_AddNewItemForEmptyPath_CollectionContainsItem() + { + // Setup + var collection = new ConcreteObservableUniqueItemCollectionWithSourcePath( + getUniqueFeature, typeDescriptor, featureDescription); + var item = new TestItem("Item A"); + + // Call + const string filePath = ""; + collection.AddRange(new[] + { + item + }, filePath); + + // Assert + CollectionAssert.Contains(collection, item); + Assert.AreEqual(filePath, collection.SourcePath); + } + + [Test] public void AddRange_AddNewItem_CollectionContainsItem() { // Setup