private IEnumerable <(NuGetPackageId Package, IList <LibraryId> Dependencies)> GetFilteredReferences(ProjectAssetsParser parser, string[] targetFrameworks) { if (new IgnoreFilter(Configuration.IgnorePackages.ByProjectName).Filter(parser.GetProjectName())) { yield break; } var ignoreFilterByName = new IgnoreFilter(Configuration.IgnorePackages.ByName); foreach (var targetFramework in targetFrameworks) { foreach (var entry in parser.GetReferences(targetFramework)) { if (ignoreFilterByName.Filter(entry.Package.Name)) { continue; } var dependencies = new List <LibraryId>(entry.Dependencies.Count); foreach (var d in entry.Dependencies) { if (!ignoreFilterByName.Filter(d.Name)) { dependencies.Add(new LibraryId(PackageSources.NuGet, d.Name, d.Version)); } } yield return(entry.Package, dependencies); } } }
private IEnumerable <LibraryReference> GetReferencesFromFile(string fileName) { var folderName = Path.GetFileName(Path.GetDirectoryName(fileName)); if (new IgnoreFilter(Configuration.IgnorePackages.ByFolderName).Filter(folderName)) { yield break; } var nodeModulesDirectoryName = Path.Combine(Path.GetDirectoryName(fileName), PackageJsonParser.NodeModules); if (!Directory.Exists(nodeModulesDirectoryName)) { throw new DirectoryNotFoundException("Directory {0} not found.".FormatWith(nodeModulesDirectoryName)); } var parser = PackageJsonParser.FromFile(fileName); var ignoreByName = new IgnoreFilter(Configuration.IgnorePackages.ByName); foreach (var dependency in parser.GetDependencies()) { if (!ignoreByName.Filter(dependency.Name)) { yield return(ReadFromNodeModules(dependency, nodeModulesDirectoryName, false)); } } foreach (var dependency in parser.GetDevDependencies()) { if (!ignoreByName.Filter(dependency.Name)) { yield return(ReadFromNodeModules(dependency, nodeModulesDirectoryName, true)); } } }
public void Dont_ignore_dotSync_files_in_subfolders(string relativeFilename) { var sut = new IgnoreFilter(REPO_PATH, new string[] { }); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNotNull(result); }
public void Filter_case_insenstive(string relativeFilename) { var sut = new IgnoreFilter(null, new[]{"hello"}); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
public void Ignore_certain_dotSync_files_in_reporoot(string relativeFilename) { var sut = new IgnoreFilter(REPO_PATH, new string[]{}); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
static void LogPacket(StreamWriter sw, bool ClientToServer, byte PacketID, PacketReader pr, params object[] args) { try { if (sw == null) { return; } bool Suppressed = (ClientToServer && ClientDenyPackets.Contains(PacketID)) || (!ClientToServer && ServerDenyPackets.Contains(PacketID)); if (FilterOutput && !Filter.Contains(PacketID)) { return; } if (IgnoreFilterOutput && IgnoreFilter.Contains(PacketID)) { return; } if (ClientToServer && SuppressClient) { return; } if (!ClientToServer && SuppressServer) { return; } string address = pr.Client.Client.RemoteEndPoint.ToString(); if (ClientToServer) { sw.WriteLine("[" + address + "] {" + DateTime.Now.ToLongTimeString() + "} [CLIENT->SERVER" + (Suppressed ? " SUPPRESSED" : "") + "]: " + ((LibMinecraft.Model.PacketID)PacketID).ToString() + " (0x" + PacketID.ToString("x") + ")"); } else { sw.WriteLine("[" + address + "] {" + DateTime.Now.ToLongTimeString() + "} [SERVER->CLIENT" + (Suppressed ? " SUPPRESSED" : "") + "]: " + ((LibMinecraft.Model.PacketID)PacketID).ToString() + " (0x" + PacketID.ToString("x") + ")"); } if (pr.Payload.Length == 0) { return; } sw.WriteLine("\t[" + DumpArray(pr.Payload) + "]"); for (int i = 0; i < args.Length; i += 2) { if (args[i + 1] is byte[]) { sw.WriteLine("\t" + args[i].ToString() + " (Byte[]): [" + DumpArray((byte[])args[i + 1]) + "]"); } else { sw.WriteLine("\t" + args[i].ToString() + " (" + args[i + 1].GetType().Name + "): " + args[i + 1]); } } sw.Flush(); } catch { } }
public void Dont_ignore_files_with_dotSync_extension(string relativeFilename) { var sut = new IgnoreFilter(REPO_PATH, new string[]{}); var rf = new RepoFile {RelativeFileName = relativeFilename}; RepoFile result = null; sut.Filter(rf, _ => result = _); Equalidator.AreEqual(result, rf); }
public void Ignore_empty_patterns(string relativeFilename, string expected) { var sut = new IgnoreFilter(null, new[] { "A", "", "B" }); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); if (relativeFilename == "C") Assert.AreEqual("C", result.RelativeFileName); else Assert.IsNull(result); }
private IEnumerable <LibraryReference> GetReferencesFromFile(string fileName) { var parser = ProjectAssetsParser.FromFile(fileName); var targetFrameworks = parser.GetTargetFrameworks(); var internalFilterByName = new IgnoreFilter(Configuration.InternalPackages.ByName); var isInternalByProject = new IgnoreFilter(Configuration.InternalPackages.ByProjectName).Filter(parser.GetProjectName()); foreach (var entry in GetFilteredReferences(parser, targetFrameworks)) { var isInternal = isInternalByProject || internalFilterByName.Filter(entry.Package.Name); yield return(new LibraryReference( new LibraryId(PackageSources.NuGet, entry.Package.Name, entry.Package.Version), targetFrameworks, entry.Dependencies, isInternal)); } }
protected override NameValueCollection GetQueryString() { var queryString = base.GetQueryString(); queryString["ignoreFilter"] = IgnoreFilter.ToString(); queryString["CountOnly"] = CountOnly.ToString(); if (Skip.HasValue) { queryString["Skip"] = Skip.ToString(); } if (Take.HasValue) { queryString["Take"] = Take.ToString(); } if (IncludeSemVer2) { queryString["semVerLevel"] = "2.0.0"; } if (!string.IsNullOrWhiteSpace(SortBy)) { queryString["sortBy"] = SortBy; } if (LuceneQuery.HasValue) { queryString["luceneQuery"] = LuceneQuery.ToString(); } if (PackageType != null) { queryString["packageType"] = PackageType; } return(queryString); }
protected override NameValueCollection GetQueryString() { var queryString = HttpUtility.ParseQueryString(string.Empty); queryString["q"] = Query; queryString["prerelease"] = Prerelease.ToString(); queryString["ignoreFilter"] = IgnoreFilter.ToString(); queryString["CountOnly"] = CountOnly.ToString(); if (Skip.HasValue) { queryString["Skip"] = Skip.ToString(); } if (Take.HasValue) { queryString["Take"] = Take.ToString(); } if (IncludeSemVer2) { queryString["semVerLevel"] = "2.0.0"; } if (!string.IsNullOrWhiteSpace(SortBy)) { queryString["sortBy"] = SortBy; } if (LuceneQuery.HasValue) { queryString["luceneQuery"] = LuceneQuery.ToString(); } return(queryString); }
public void Tolerate_nonexistent_ignorefile() { File.Delete(".syncignore"); var sut = new IgnoreFilter("."); }
public void Ignore_on_normalized_path_delimiter(string relativeFilename) { var sut = new IgnoreFilter(REPO_PATH, new string[] { "/abc" }); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
public void Ignore_on_multiple_patterns(string relativeFilename, string ignorePatterns) { var sut = new IgnoreFilter(REPO_PATH, ignorePatterns.Split(',')); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
public void Ignore_on_single_pattern(string relativeFilename, string ignorePattern) { var sut = new IgnoreFilter(REPO_PATH, new string[] { ignorePattern }); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
public void Load_ignore_patterns_from_ignorefile(string relativeFilename) { File.WriteAllText(".syncignore", "/bin/"); var sut = new IgnoreFilter("."); RepoFile result = null; sut.Filter(new RepoFile { RelativeFileName = relativeFilename }, _ => result = _); Assert.IsNull(result); }
public void No_file_to_ignore() { var sut = new IgnoreFilter(REPO_PATH, new string[]{}); RepoFile result = null; var rf = new RepoFile {RelativeFileName = "hello.txt"}; sut.Filter(rf, _ => result = _); Equalidator.AreEqual(result, rf); }