public void Convert_replaces_files_with_DirectoryPropertiesFile_instances()
        {
            var input = new Directory(Path.GetRandomFileName());
            input.Add(_ => DirectoryPropertiesFile.ForDirectory(null, input));


            var directoryCreator = new LocalItemCreator();
            using (var temporaryDirectory = directoryCreator.CreateTemporaryDirectory(input))
            {
                var metaFs = m_Instance.Convert(temporaryDirectory.Directory);

                Assert.Empty(metaFs.Directories);
                Assert.True(metaFs.GetFile(DirectoryPropertiesFile.FileName) is DirectoryPropertiesFile);
            }
        }
        public void Convert_detection_of_directory_properties_files_is_case_invariant()
        {
            var directory = new Directory(Path.GetRandomFileName());
            var directoryPropertiesFile = DirectoryPropertiesFile.ForDirectory(null, directory);
            
            var mock = new Mock<IReadableFile>();
            mock.Setup(f => f.Name).Returns(DirectoryPropertiesFile.FileName.ToUpper());
            mock.Setup(f => f.OpenRead()).Returns(directoryPropertiesFile.OpenRead());

            directory.Add(dir => mock.Object);

            var directoryCreator = new LocalItemCreator();
            using (var temporaryDirectory = directoryCreator.CreateTemporaryDirectory(directory))
            {
                var metaFs = m_Instance.Convert(temporaryDirectory.Directory);

                Assert.Empty(metaFs.Directories);
                Assert.True(metaFs.GetFile(DirectoryPropertiesFile.FileName) is DirectoryPropertiesFile);
            }

        }