Index: Core/Common/test/Core.Common.TestUtil.Test/DirectoryRightsHelperTest.cs =================================================================== diff -u -r7e9e0ccec9caf49c8954f4d84c3f31c4c0a8d2a8 -r1d0a2ac13ac84bbdb380426e8a04949a37e335b1 --- Core/Common/test/Core.Common.TestUtil.Test/DirectoryRightsHelperTest.cs (.../DirectoryRightsHelperTest.cs) (revision 7e9e0ccec9caf49c8954f4d84c3f31c4c0a8d2a8) +++ Core/Common/test/Core.Common.TestUtil.Test/DirectoryRightsHelperTest.cs (.../DirectoryRightsHelperTest.cs) (revision 1d0a2ac13ac84bbdb380426e8a04949a37e335b1) @@ -61,15 +61,34 @@ } [Test] + public void Constructor_UnsupportedRight_ThrowsNotSupportedException() + { + // Setup + const FileSystemRights rights = FileSystemRights.Synchronize; + var accessDirectory = Path.Combine(testWorkDir, "Constructor_UnsupportedRight_ThrowsNotSupportedException", rights.ToString()); + Directory.CreateDirectory(accessDirectory); + + try + { + // Call + TestDelegate test = () => { new DirectoryRightsHelper(accessDirectory, rights); }; + + // Assert + Assert.Throws(test); + } + finally + { + Directory.Delete(accessDirectory, true); + } + } + + [Test] [TestCase(FileSystemRights.AppendData)] [TestCase(FileSystemRights.ChangePermissions)] - [TestCase(FileSystemRights.CreateDirectories)] - [TestCase(FileSystemRights.CreateFiles)] [TestCase(FileSystemRights.Delete)] [TestCase(FileSystemRights.DeleteSubdirectoriesAndFiles)] [TestCase(FileSystemRights.ExecuteFile)] [TestCase(FileSystemRights.FullControl)] - [TestCase(FileSystemRights.ListDirectory)] [TestCase(FileSystemRights.Modify)] [TestCase(FileSystemRights.Read)] [TestCase(FileSystemRights.ReadAndExecute)] @@ -78,8 +97,8 @@ [TestCase(FileSystemRights.ReadExtendedAttributes)] [TestCase(FileSystemRights.ReadPermissions)] [TestCase(FileSystemRights.TakeOwnership)] - [TestCase(FileSystemRights.Traverse)] [TestCase(FileSystemRights.Write)] + [TestCase(FileSystemRights.WriteData)] [TestCase(FileSystemRights.WriteAttributes)] [TestCase(FileSystemRights.WriteExtendedAttributes)] public void Constructor_ValidPathDenyRight_SetsDenyRight(FileSystemRights rights) @@ -108,13 +127,10 @@ [Test] [TestCase(FileSystemRights.AppendData)] [TestCase(FileSystemRights.ChangePermissions)] - [TestCase(FileSystemRights.CreateDirectories)] - [TestCase(FileSystemRights.CreateFiles)] [TestCase(FileSystemRights.Delete)] [TestCase(FileSystemRights.DeleteSubdirectoriesAndFiles)] [TestCase(FileSystemRights.ExecuteFile)] [TestCase(FileSystemRights.FullControl)] - [TestCase(FileSystemRights.ListDirectory)] [TestCase(FileSystemRights.Modify)] [TestCase(FileSystemRights.Read)] [TestCase(FileSystemRights.ReadAndExecute)] @@ -123,8 +139,8 @@ [TestCase(FileSystemRights.ReadExtendedAttributes)] [TestCase(FileSystemRights.ReadPermissions)] [TestCase(FileSystemRights.TakeOwnership)] - [TestCase(FileSystemRights.Traverse)] [TestCase(FileSystemRights.Write)] + [TestCase(FileSystemRights.WriteData)] [TestCase(FileSystemRights.WriteAttributes)] [TestCase(FileSystemRights.WriteExtendedAttributes)] public void Dispose_RightAlreadySet_DoesNotRemoveRight(FileSystemRights rights) Index: Core/Common/test/Core.Common.TestUtil/DirectoryRightsHelper.cs =================================================================== diff -u -r7e9e0ccec9caf49c8954f4d84c3f31c4c0a8d2a8 -r1d0a2ac13ac84bbdb380426e8a04949a37e335b1 --- Core/Common/test/Core.Common.TestUtil/DirectoryRightsHelper.cs (.../DirectoryRightsHelper.cs) (revision 7e9e0ccec9caf49c8954f4d84c3f31c4c0a8d2a8) +++ Core/Common/test/Core.Common.TestUtil/DirectoryRightsHelper.cs (.../DirectoryRightsHelper.cs) (revision 1d0a2ac13ac84bbdb380426e8a04949a37e335b1) @@ -57,6 +57,11 @@ { throw new DirectoryNotFoundException(@"filePath does not exist."); } + + if (rights == FileSystemRights.Synchronize) + { + throw new NotSupportedException(string.Format("Setting the right {0} is not supported.", rights)); + } AddDenyDirectoryInfoRight(rights); }