Example #1
0
        public void MockDirectoryInfo_GetAccessControl_ShouldReturnAccessControlOfDirectoryData()
        {
            // Arrange
            var expectedDirectorySecurity = new DirectorySecurity();

            expectedDirectorySecurity.SetAccessRuleProtection(false, false);

            var filePath = XFS.Path(@"c:\a\");
            var fileData = new MockDirectoryData()
            {
                AccessControl = expectedDirectorySecurity,
            };

            var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData>()
            {
                { filePath, fileData }
            });

            var directorInfo = fileSystem.DirectoryInfo.FromDirectoryName(filePath);

            // Act
            var directorySecurity = directorInfo.GetAccessControl();

            // Assert
            Assert.That(directorySecurity, Is.EqualTo(expectedDirectorySecurity));
        }
        public void MockFile_SetAttributeOfExistingUncDirectory_ShouldPersist()
        {
            var directoryData = new MockDirectoryData()
            {
                Attributes = FileAttributes.ReadOnly
            };
            var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData>
            {
                { XFS.Path(@"\\server\share\folder"), directoryData }
            });

            fileSystem.File.SetAttributes(XFS.Path(@"\\server\share\folder"), FileAttributes.Hidden);
            Assert.That(directoryData.Attributes, Is.EqualTo(FileAttributes.Hidden));
        }
        public void MockFile_SetAttributeOfExistingDirectory_ShouldPersist()
        {
            var directoryData = new MockDirectoryData()
            {
                Attributes = FileAttributes.ReadOnly
            };
            var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData>
            {
                { XFS.Path(@"c:\something"), directoryData }
            });

            fileSystem.File.SetAttributes(XFS.Path(@"c:\something"), FileAttributes.Normal);
            Assert.That(directoryData.Attributes, Is.EqualTo(FileAttributes.Normal));
        }
Example #4
0
        public void MockDirectory_SetAccessControl_ShouldReturnAccessControlOfDirectoryData()
        {
            // Arrange
            var filePath = XFS.Path(@"c:\a\");
            var fileData = new MockDirectoryData();

            var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData>()
            {
                { filePath, fileData }
            });

            // Act
            var expectedAccessControl = new DirectorySecurity();

            expectedAccessControl.SetAccessRuleProtection(false, false);
            fileSystem.Directory.SetAccessControl(filePath, expectedAccessControl);

            // Assert
            var accessControl = fileSystem.Directory.GetAccessControl(filePath);

            Assert.That(accessControl, Is.EqualTo(expectedAccessControl));
        }