示例#1
0
        private static void _FillFolder(DirectoryInfo directory, RepoFolder folder)
        {
            foreach (var dirinfo in directory.GetDirectories())
            {
                if (dirinfo.Attributes.HasFlag(FileAttributes.Hidden) || dirinfo.Name.StartsWith("."))
                {
                    continue;
                }
                var subFolder = new RepoFolder(dirinfo.Name, new Uri(folder.Uri, dirinfo.Name));
                _FillFolder(dirinfo, subFolder);
                folder.Folders.Add(subFolder);
            }

            foreach (var fileinfo in directory.GetFiles())
            {
                if (fileinfo.Attributes.HasFlag(FileAttributes.Hidden) || fileinfo.Name.StartsWith("."))
                {
                    continue;
                }
                var file = new RepoFile(fileinfo.Name);
                folder.Files.Add(file);
            }

            var defaultfile = (from f in folder.Files
                               where f.Name.ToLowerInvariant().StartsWith("index.") || f.Name.ToLowerInvariant().StartsWith("default.")
                               where f.Type == FileType.html
                               select f).FirstOrDefault();

            if (defaultfile != null)
            {
                folder.Files.Remove(defaultfile);
                folder.Files.Insert(0, defaultfile);
            }
        }
示例#2
0
        public static RepoFolder GetFolder(this TempDir dir)
        {
            RepoFolder folder = new RepoFolder("_root", dir.FileUri);

            _FillFolder(dir.Directory, folder);
            return(folder);
        }
示例#3
0
        public static RepoFolder GetFolder(this Repository repo)
        {
            RepoFolder folder = new RepoFolder("_root", repo.FileUri);

            _FillFolder(repo.Folder, folder);
            return(folder);
        }
示例#4
0
        private void _TestFolder(RepoFolder folder)
        {
            foreach (var file in folder.Files.Where(f => f.Type == FileType.html))
            {
                var pageUri = new Uri(folder.Uri, file.Name);

                string pageText = null;

                if (RequestHelper.GetPageText(pageUri, out pageText))
                {
                    _validator.ValidatePage(file.Name, pageText);

                    foreach (var device in _allDevices)
                    {
                        _browser.SetWindowSize(device.ViewportWidth, device.ViewportHeight);
                        _presubmissionResults.AppendResults(TestPage(pageUri, null, true));
                        _fullResults.AppendResults(TestPage(pageUri, null, false));
                    }
                }
            }
            foreach (var subfolder in folder.Folders)
            {
                _TestFolder(subfolder);
            }
        }
示例#5
0
        public void initializeFromZipMeta(UploadZipMeta zipMeta)
        {
            //root = new RepoFolder("");
            TotalFiles = zipMeta.totalFiles;
            RepoFolder add = null;

            foreach (var file in zipMeta.files)
            {
                if (file.EndsWith("/")) //is folder
                {
                    add = new RepoFolder(file);
                }
                //for now, only add folders, because we don't know if files are Dicom or labels or other
                //root.addFile(add);
            }
        }