341 references to PathUtilities
Microsoft.CodeAnalysis (90)
AssemblyUtilities.cs (5)
33
RoslynDebug.Assert(
PathUtilities
.IsAbsolute(filePath));
84
RoslynDebug.Assert(
PathUtilities
.IsAbsolute(filePath));
104
Debug.Assert(
PathUtilities
.IsAbsolute(filePath));
140
RoslynDebug.Assert(
PathUtilities
.IsAbsolute(assemblyPath));
178
Debug.Assert(
PathUtilities
.IsAbsolute(assemblyPath));
CommandLine\AnalyzerConfig.cs (1)
151
NormalizedDirectory =
PathUtilities
.NormalizeWithForwardSlash(directory);
CommandLine\AnalyzerConfigSet.cs (2)
198
var normalizedPath =
PathUtilities
.NormalizeWithForwardSlash(sourcePath);
199
normalizedPath =
PathUtilities
.ExpandAbsolutePathWithRelativeParts(normalizedPath);
CommandLine\CommandLineParser.cs (10)
64
Debug.Assert(
PathUtilities
.IsAbsolute(directory));
370
from =
PathUtilities
.EnsureTrailingSeparator(from);
371
to =
PathUtilities
.EnsureTrailingSeparator(to);
450
PathUtilities
.ChangeExtension(outputFileName, extension: null).Length == 0)
556
string? directory =
PathUtilities
.GetDirectoryName(resolvedPath);
587
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
868
fileName =
PathUtilities
.GetFileName(filePath);
1108
ReadOnlyMemory<char> extension =
PathUtilities
.GetExtension(resolvedPath.AsMemory());
1230
string? directory =
PathUtilities
.GetDirectoryName(path);
1231
string pattern =
PathUtilities
.GetFileName(path);
CommandLine\CommonCompiler.CompilerEmitStreamProvider.cs (1)
73
if (
PathUtilities
.IsUnixLikePlatform)
CommandLine\CommonCompiler.cs (6)
126
Debug.Assert(null == responseFile ||
PathUtilities
.IsAbsolute(responseFile));
1143
WithPdbFilePath(
PathUtilities
.NormalizePathPrefix(finalPdbFilePath, Arguments.PathMap));
1181
if (!
PathUtilities
.IsValidFilePath(finalPdbFilePath))
1459
var filePaths = new HashSet<string>(
PathUtilities
.Comparer);
1463
Debug.Assert(
PathUtilities
.IsAbsolute(file.Path));
1464
if (filePaths.Add(
PathUtilities
.ExpandAbsolutePathWithRelativeParts(file.Path)))
CommandLine\SarifErrorLogger.cs (2)
149
if (!
PathUtilities
.IsUnixLikePlatform)
152
path =
PathUtilities
.NormalizeWithForwardSlash(path);
Compilation\Compilation.cs (1)
3189
pePdbFilePath =
PathUtilities
.GetFileName(pePdbFilePath);
Compilation\CompilationOptions.cs (1)
583
if (CryptoKeyFile != null && !
PathUtilities
.IsAbsolute(CryptoKeyFile))
Compilation\DeterministicKeyBuilder.cs (1)
55
filePath =
PathUtilities
.NormalizePathPrefix(filePath, pathMap);
DiagnosticAnalyzer\AnalysisResultBuilder.cs (2)
25
ImmutableDictionary<string, OneOrMany<AdditionalText>>.Empty.WithComparers(
PathUtilities
.Comparer);
70
var builder = ImmutableDictionary.CreateBuilder<string, OneOrMany<AdditionalText>>(
PathUtilities
.Comparer);
DiagnosticAnalyzer\AnalysisScope.cs (1)
236
!
PathUtilities
.Comparer.Equals(externalFileLocation.GetLineSpan().Path, filterFile.AdditionalFile.Path))
DiagnosticAnalyzer\AnalyzerAssemblyLoader.cs (2)
73
string simpleName =
PathUtilities
.GetFileName(fullPath, includeExtension: false);
79
paths = ImmutableHashSet.Create(
PathUtilities
.Comparer, fullPath);
DiagnosticAnalyzer\AnalyzerExecutor.AnalyzerDiagnosticReporter.cs (1)
127
return
PathUtilities
.Comparer.Equals(_contextFile.Value.AdditionalFile.Path, externalFileLocation.GetLineSpan().Path);
FileKey.cs (1)
30
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
FileSystem\CompilerPathUtilities.cs (1)
18
if (!
PathUtilities
.IsAbsolute(path))
FileSystem\FileUtilities.cs (25)
47
Debug.Assert(baseDirectory == null || searchPaths != null ||
PathUtilities
.IsAbsolute(baseDirectory));
52
var kind =
PathUtilities
.GetPathKind(path);
59
combinedPath =
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
60
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
70
combinedPath =
PathUtilities
.CombinePathsUnchecked(searchPath, path);
71
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
84
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
101
Debug.Assert(baseDirectory == null ||
PathUtilities
.IsAbsolute(baseDirectory));
102
return ResolveRelativePath(
PathUtilities
.GetPathKind(path), path, basePath, baseDirectory);
107
Debug.Assert(
PathUtilities
.GetPathKind(path) == kind);
122
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
139
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
150
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
156
baseRoot =
PathUtilities
.GetPathRoot(basePath);
160
baseRoot =
PathUtilities
.GetPathRoot(baseDirectory);
172
Debug.Assert(
PathUtilities
.IsDirectorySeparator(path![0]));
173
Debug.Assert(path.Length == 1 || !
PathUtilities
.IsDirectorySeparator(path[1]));
174
return
PathUtilities
.CombinePathsUnchecked(baseRoot, path.Substring(1));
198
Debug.Assert(
PathUtilities
.IsAbsolute(resolvedBasePath));
243
Debug.Assert(
PathUtilities
.IsAbsolute(path));
270
Debug.Assert(
PathUtilities
.IsAbsolute(path));
284
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
302
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
368
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
386
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
FileSystem\PathUtilities.cs (1)
854
=>
PathUtilities
.GetDirectoryName(path, isUnixLike);
FileSystem\RelativePathResolver.cs (3)
31
Debug.Assert(searchPaths.All(
PathUtilities
.IsAbsolute));
32
Debug.Assert(baseDirectory == null ||
PathUtilities
.GetPathKind(baseDirectory) == PathKind.Absolute);
52
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
InternalUtilities\AdditionalTextComparer.cs (2)
30
if (!
PathUtilities
.Comparer.Equals(x.Path, y.Path))
55
return Hash.Combine(
PathUtilities
.Comparer.GetHashCode(obj.Path),
InternalUtilities\GeneratedCodeUtilities.cs (3)
65
var fileName =
PathUtilities
.GetFileName(filePath);
71
var extension =
PathUtilities
.GetExtension(fileName);
74
var fileNameWithoutExtension =
PathUtilities
.GetFileName(filePath, includeExtension: false);
PEWriter\MetadataWriter.PortablePdb.cs (1)
967
var fileName =
PathUtilities
.GetFileName(portableReference.FilePath);
RuleSet\RuleSetInclude.cs (2)
95
if (resolvedIncludePath == null &&
PathUtilities
.IsUnixLikePlatform)
120
includePath =
PathUtilities
.CombinePathsUnchecked(Path.GetDirectoryName(parentRulesetPath) ?? "", includePath);
SourceFileResolver.cs (4)
47
if (baseDirectory != null &&
PathUtilities
.GetPathKind(baseDirectory) != PathKind.Absolute)
76
var normalizedKey =
PathUtilities
.EnsureTrailingSeparator(key);
77
var normalizedValue =
PathUtilities
.EnsureTrailingSeparator(value);
99
return (normalizedPath == null || _pathMap.IsDefaultOrEmpty) ? normalizedPath :
PathUtilities
.NormalizePathPrefix(normalizedPath, _pathMap);
StrongName\DesktopStrongNameProvider.cs (6)
56
if (!keyFileSearchPaths.IsDefault && keyFileSearchPaths.Any(static path => !
PathUtilities
.IsAbsolute(path)))
81
Debug.Assert(
PathUtilities
.IsAbsolute(resolvedKeyFile));
120
if (
PathUtilities
.IsAbsolute(path))
132
string? combinedPath =
PathUtilities
.CombineAbsoluteAndRelativePaths(searchPath, path);
134
Debug.Assert(combinedPath == null ||
PathUtilities
.IsAbsolute(combinedPath));
193
catch (MarshalDirectiveException) when (
PathUtilities
.IsUnixLikePlatform)
StrongName\StrongNameFileSystem.cs (2)
33
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
39
Debug.Assert(fullPath == null ||
PathUtilities
.IsAbsolute(fullPath));
XmlFileResolver.cs (3)
24
if (baseDirectory != null &&
PathUtilities
.GetPathKind(baseDirectory) != PathKind.Absolute)
59
Debug.Assert(resolvedPath == null ||
PathUtilities
.IsAbsolute(resolvedPath));
69
Debug.Assert(resolvedPath == null ||
PathUtilities
.IsAbsolute(resolvedPath));
Microsoft.CodeAnalysis.CSharp (13)
CommandLine\CommandLineDiagnosticFormatter.cs (3)
70
var normalizedDirectory =
PathUtilities
.GetDirectoryName(normalizedPath);
71
if (
PathUtilities
.IsSameDirectoryOrChildOf(normalizedDirectory, normalizedBaseDirectory))
74
PathUtilities
.IsDirectorySeparator(normalizedBaseDirectory.Last())
CommandLine\CSharpCommandLineParser.cs (7)
52
Debug.Assert(baseDirectory == null ||
PathUtilities
.IsAbsolute(baseDirectory));
72
DebugInformationFormat debugInformationFormat =
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.PortablePdb : DebugInformationFormat.Pdb;
794
debugInformationFormat =
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.PortablePdb : DebugInformationFormat.Pdb;
1660
simpleName =
PathUtilities
.RemoveExtension(
PathUtilities
.GetFileName(sourceFiles.FirstOrDefault().Path));
1672
simpleName =
PathUtilities
.RemoveExtension(outputFileName);
2059
if (!
PathUtilities
.IsValidFilePath(fullPath))
CommandLine\CSharpCompiler.cs (2)
104
Debug.Assert(sourceFiles[i].IsInputRedirected ||
PathUtilities
.IsAbsolute(normalizedFilePath));
262
string entryPointFileName =
PathUtilities
.GetFileName(entryPoint.Locations.First().SourceTree!.FilePath);
Symbols\Source\SourceAssemblySymbol.cs (1)
488
if (!string.IsNullOrEmpty(keyFile) && !
PathUtilities
.IsAbsolute(keyFile))
Microsoft.CodeAnalysis.CSharp.CommandLine.UnitTests (10)
CommandLineTests.cs (10)
1897
var platformPdbKind =
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.PortablePdb : DebugInformationFormat.Pdb;
6866
Assert.Equal(1, Directory.EnumerateFiles(dir.Path, "*" +
PathUtilities
.GetExtension(expectedOutputName)).Count());
6875
Assert.Equal(
PathUtilities
.RemoveExtension(expectedOutputName), peReader.GetString(peReader.GetAssemblyDefinition().Name));
9121
var formattedcs1504Str = String.Format(cs1504,
PathUtilities
.CombineAbsoluteAndRelativePaths(tempParentDir.Path, "tmpDir\a.cs"), "Illegal characters in path.");
9141
var formattedcs1504 = String.Format(cs1504,
PathUtilities
.CombineAbsoluteAndRelativePaths(tempParentDir.Path, @":a.cs"), @"The given path's format is not supported.");
11245
var s =
PathUtilities
.DirectorySeparatorStr;
11419
AssertPdbEmit(dir, pdbPath, "/goo/a.pdb", $"/pathmap:{dir.Path}=/goo,{dir.Path}{
PathUtilities
.DirectorySeparatorChar}=/bar");
12089
var platformPdbKind =
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.PortablePdb : DebugInformationFormat.Pdb;
13640
string root =
PathUtilities
.IsUnixLikePlatform ? "/" : "c:\\";
14298
[{
PathUtilities
.NormalizeWithForwardSlash(src.Path)}]
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (3)
Attributes\InternalsVisibleToAndStrongNameTests.cs (2)
175
TestOptions.ReleaseDll.WithStrongNameProvider(GetProviderWithPath(
PathUtilities
.CombineAbsoluteAndRelativePaths(keyFileDir, @"TempSubDir\"))));
190
ImmutableArray.Create(
PathUtilities
.CombineAbsoluteAndRelativePaths(keyFileDir, @"TempSubDir\")),
Diagnostics\DiagnosticAnalyzerTests.cs (1)
3876
d => d.Id == analyzer.Descriptor.Id &&
PathUtilities
.Comparer.Equals(d.Location.GetLineSpan().Path, additionalFile.Path));
Microsoft.CodeAnalysis.CSharp.Scripting.UnitTests (5)
CommandLineRunnerTests.cs (5)
559
var scriptPath =
PathUtilities
.CombinePathsUnchecked(
PathUtilities
.GetFileName(directory.Path), scriptName);
560
var workingDirectory =
PathUtilities
.GetDirectoryName(directory.Path);
561
Assert.False(
PathUtilities
.IsAbsolute(scriptPath));
592
Assert.Equal(expectedOutput,
PathUtilities
.GetDirectoryName(path, isUnixLike: false));
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
Symbols\ModuleInitializers\ModuleInitializersTests.cs (1)
1155
emitOptions: EmitOptions.Default.WithDebugInformationFormat(
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.PortablePdb : DebugInformationFormat.Pdb),
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (1)
Diagnostics\DiagnosticTest.cs (1)
2887
var sep =
PathUtilities
.DirectorySeparatorChar;
Microsoft.CodeAnalysis.Scripting (14)
Hosting\AssemblyLoader\InteractiveAssemblyLoader.cs (1)
175
if (!
PathUtilities
.IsAbsolute(path))
Hosting\AssemblyLoader\MetadataShadowCopyProvider.cs (1)
116
if (!
PathUtilities
.IsAbsolute(path))
Hosting\Resolvers\RuntimeMetadataReferenceResolver.cs (9)
32
PathUtilities
.GetDirectoryName(typeof(object).GetTypeInfo().Assembly.ManifestModule.FullyQualifiedName) : null;
46
private static readonly char[] s_directorySeparators = new[] {
PathUtilities
.DirectorySeparatorChar,
PathUtilities
.AltDirectorySeparatorChar };
122
var definitionDirectory =
PathUtilities
.GetDirectoryName((definition as PortableExecutableReference)?.FilePath);
125
string pathWithoutExtension =
PathUtilities
.CombinePathsUnchecked(definitionDirectory, referenceIdentity.Name);
155
else if (
PathUtilities
.IsFilePath(reference))
159
var result = ResolveTrustedPlatformAssembly(
PathUtilities
.GetFileName(reference, includeExtension: false), properties);
216
if (
PathUtilities
.GetExtension(path) == ".dll")
218
string fileName =
PathUtilities
.GetFileName(path, includeExtension: false);
RelativePathResolver.cs (3)
31
Debug.Assert(searchPaths.All(
PathUtilities
.IsAbsolute));
32
Debug.Assert(baseDirectory == null ||
PathUtilities
.GetPathKind(baseDirectory) == PathKind.Absolute);
52
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
Microsoft.CodeAnalysis.Test.Utilities (7)
Assert\ConditionalFactAttribute.cs (2)
307
public override bool ShouldSkip => !
PathUtilities
.IsUnixLikePlatform;
313
public override bool ShouldSkip =>
PathUtilities
.IsUnixLikePlatform && !ExecutionConditionUtil.IsMacOS;
Compilation\CompilationExtensions.cs (1)
66
if (MonoHelpers.IsRunningOnMono() ||
PathUtilities
.IsUnixLikePlatform)
Diagnostics\CommonDiagnosticAnalyzers.cs (1)
1664
var fileNameWithoutExtension =
PathUtilities
.GetFileName(tree.FilePath, includeExtension: false);
Mocks\TestMetadataReferenceResolver.cs (1)
35
if (
PathUtilities
.IsFilePath(reference))
PDB\TestMetadataReferenceInfo.cs (1)
45
PathUtilities
.GetFileName(fullPath),
TempFiles\TempFile.cs (1)
25
Debug.Assert(
PathUtilities
.IsAbsolute(path));
Microsoft.CodeAnalysis.UnitTests (175)
Analyzers\AnalyzerFileReferenceTests.cs (1)
58
var refBadPath = new AnalyzerFileReference(
PathUtilities
.CombinePathsUnchecked(TempRoot.Root, "\0<>|*.xyz"), loader);
Diagnostics\SarifErrorLoggerTests.cs (1)
93
var isUnix =
PathUtilities
.IsUnixLikePlatform;
Diagnostics\SarifV1ErrorLoggerTests.cs (1)
50
""uri"": """ + (
PathUtilities
.IsUnixLikePlatform
Diagnostics\SarifV2ErrorLoggerTests.cs (1)
45
""uri"": """ + (
PathUtilities
.IsUnixLikePlatform
Emit\EmitOptionsTests.cs (1)
64
PathUtilities
.IsUnixLikePlatform ? DebugInformationFormat.Pdb : DebugInformationFormat.PortablePdb);
FileSystem\PathUtilitiesTests.cs (89)
18
var roslynName =
PathUtilities
.TestAccessor.GetDirectoryName(fullPath, isUnixLike: false);
36
Assert.Null(
PathUtilities
.TestAccessor.GetDirectoryName(@"", isUnixLike: false));
57
PathUtilities
.TestAccessor.GetDirectoryName(@"/temp/goo.txt", isUnixLike: true));
61
PathUtilities
.TestAccessor.GetDirectoryName(@"/temp/goo", isUnixLike: true));
65
PathUtilities
.TestAccessor.GetDirectoryName(@"/temp/", isUnixLike: true));
69
PathUtilities
.TestAccessor.GetDirectoryName(@"/temp", isUnixLike: true));
72
PathUtilities
.TestAccessor.GetDirectoryName(@"/", isUnixLike: true));
75
PathUtilities
.TestAccessor.GetDirectoryName(@"", isUnixLike: true));
78
PathUtilities
.TestAccessor.GetDirectoryName(null, isUnixLike: true));
86
PathUtilities
.TestAccessor.GetDirectoryName(@"goo/temp/goo.txt", isUnixLike: true));
90
PathUtilities
.TestAccessor.GetDirectoryName(@"goo/temp/goo", isUnixLike: true));
94
PathUtilities
.TestAccessor.GetDirectoryName(@"goo/temp/", isUnixLike: true));
98
PathUtilities
.TestAccessor.GetDirectoryName(@"goo/temp", isUnixLike: true));
102
PathUtilities
.TestAccessor.GetDirectoryName(@"goo/", isUnixLike: true));
106
PathUtilities
.TestAccessor.GetDirectoryName(@"goo", isUnixLike: true));
109
PathUtilities
.TestAccessor.GetDirectoryName(@"", isUnixLike: true));
112
PathUtilities
.TestAccessor.GetDirectoryName(null, isUnixLike: true));
137
PathUtilities
.TestAccessor.GetDirectoryName(@"C:\temp\..\goo.txt", isUnixLike: false));
141
PathUtilities
.TestAccessor.GetDirectoryName(@"C:\temp\..", isUnixLike: false));
145
PathUtilities
.TestAccessor.GetDirectoryName(@"C:\temp\.\goo.txt", isUnixLike: false));
149
PathUtilities
.TestAccessor.GetDirectoryName(@"C:\temp\.", isUnixLike: false));
156
PathUtilities
.TestAccessor.GetDirectoryName(@"C:temp\..\goo.txt", isUnixLike: false));
160
PathUtilities
.TestAccessor.GetDirectoryName(@"C:temp\..", isUnixLike: false));
164
PathUtilities
.TestAccessor.GetDirectoryName(@"C:temp\.\goo.txt", isUnixLike: false));
168
PathUtilities
.TestAccessor.GetDirectoryName(@"C:temp\.", isUnixLike: false));
179
PathUtilities
.ContainsPathComponent(@"c:\packages\temp", "packages", ignoreCase: true));
181
PathUtilities
.ContainsPathComponent(@"\\server\packages\temp", "packages", ignoreCase: true));
183
PathUtilities
.ContainsPathComponent(@"\\packages\temp", "packages", ignoreCase: true));
185
PathUtilities
.ContainsPathComponent(@"c:\packages", "packages", ignoreCase: true));
187
PathUtilities
.ContainsPathComponent(@"c:\packages1\temp", "packages", ignoreCase: true));
189
PathUtilities
.ContainsPathComponent(@"c:\package\temp", "packages", ignoreCase: true));
192
PathUtilities
.ContainsPathComponent(@"c:\packages\temp", "packages", ignoreCase: false));
194
PathUtilities
.ContainsPathComponent(@"\\server\packages\temp", "packages", ignoreCase: false));
196
PathUtilities
.ContainsPathComponent(@"\\packages\temp", "packages", ignoreCase: false));
198
PathUtilities
.ContainsPathComponent(@"c:\packages", "packages", ignoreCase: false));
200
PathUtilities
.ContainsPathComponent(@"c:\packages1\temp", "packages", ignoreCase: false));
202
PathUtilities
.ContainsPathComponent(@"c:\package\temp", "packages", ignoreCase: false));
205
PathUtilities
.ContainsPathComponent(@"c:\packages\temp", "Packages", ignoreCase: true));
207
PathUtilities
.ContainsPathComponent(@"\\server\packages\temp", "Packages", ignoreCase: true));
209
PathUtilities
.ContainsPathComponent(@"\\packages\temp", "Packages", ignoreCase: true));
211
PathUtilities
.ContainsPathComponent(@"c:\packages", "Packages", ignoreCase: true));
213
PathUtilities
.ContainsPathComponent(@"c:\packages1\temp", "Packages", ignoreCase: true));
215
PathUtilities
.ContainsPathComponent(@"c:\package\temp", "Packages", ignoreCase: true));
218
PathUtilities
.ContainsPathComponent(@"c:\packages\temp", "Packages", ignoreCase: false));
220
PathUtilities
.ContainsPathComponent(@"\\server\packages\temp", "Packages", ignoreCase: false));
222
PathUtilities
.ContainsPathComponent(@"\\packages\temp", "Packages", ignoreCase: false));
224
PathUtilities
.ContainsPathComponent(@"c:\packages", "Packages", ignoreCase: false));
226
PathUtilities
.ContainsPathComponent(@"c:\packages1\temp", "Packages", ignoreCase: false));
228
PathUtilities
.ContainsPathComponent(@"c:\package\temp", "Packages", ignoreCase: false));
231
PathUtilities
.ContainsPathComponent(@"c:\Packages\temp", "packages", ignoreCase: true));
233
PathUtilities
.ContainsPathComponent(@"\\server\Packages\temp", "packages", ignoreCase: true));
235
PathUtilities
.ContainsPathComponent(@"\\Packages\temp", "packages", ignoreCase: true));
237
PathUtilities
.ContainsPathComponent(@"c:\Packages", "packages", ignoreCase: true));
239
PathUtilities
.ContainsPathComponent(@"c:\Packages1\temp", "packages", ignoreCase: true));
241
PathUtilities
.ContainsPathComponent(@"c:\Package\temp", "packages", ignoreCase: true));
244
PathUtilities
.ContainsPathComponent(@"c:\Packages\temp", "packages", ignoreCase: false));
246
PathUtilities
.ContainsPathComponent(@"\\server\Packages\temp", "packages", ignoreCase: false));
248
PathUtilities
.ContainsPathComponent(@"\\Packages\temp", "packages", ignoreCase: false));
250
PathUtilities
.ContainsPathComponent(@"c:\Packages", "packages", ignoreCase: false));
252
PathUtilities
.ContainsPathComponent(@"c:\Packages1\temp", "packages", ignoreCase: false));
254
PathUtilities
.ContainsPathComponent(@"c:\Package\temp", "packages", ignoreCase: false));
260
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\", @"C:"));
261
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\", @"C:\"));
262
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:", @"C:"));
263
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:", @"C:\"));
265
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:"));
266
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:\"));
268
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:"));
269
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:\"));
271
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:\ABCD"));
272
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:\ABCD\"));
274
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:\ABCD"));
275
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:\ABCD\"));
277
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:\ABCD\EFGH"));
278
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH", @"C:\ABCD\EFGH\"));
280
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:\ABCD\EFGH"));
281
Assert.True(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCD\EFGH\", @"C:\ABCD\EFGH\"));
287
Assert.False(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\", @"C:\ABCD"));
288
Assert.False(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABC", @"C:\ABCD"));
289
Assert.False(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\ABCDE", @"C:\ABCD"));
291
Assert.False(
PathUtilities
.IsSameDirectoryOrChildOf(@"C:\A\B\C", @"C:\A\B\C\D"));
302
("data1\\",
PathUtilities
.IsUnixLikePlatform),
320
Assert.True(isValid ==
PathUtilities
.IsValidFilePath(path), $"Expected {isValid} for \"{path}\"");
343
Assert.Equal(Path.Combine(path1, path2),
PathUtilities
.CombinePaths(path1, path2));
360
Assert.Equal(Path.Combine(path1, path2),
PathUtilities
.CombinePaths(path1, path2));
372
Assert.Equal(Path.Combine(path1, path2),
PathUtilities
.CombinePaths(path1, path2));
384
Assert.Equal(expected,
PathUtilities
.CombinePaths(path1, path2));
391
var result =
PathUtilities
.GetRelativePath(@"C:\A\B\", @"C:\A\B");
399
var result =
PathUtilities
.GetRelativePath(@"/A/B/", @"/A/B");
FileSystem\RelativePathResolverTests.cs (2)
46
path = resolver.ResolvePath(fileName, baseFilePath:
PathUtilities
.CombineAbsoluteAndRelativePaths(dir, "goo.csx"));
116
var path = resolver.ResolvePath(fileName, baseFilePath:
PathUtilities
.CombineAbsoluteAndRelativePaths(dir, "goo.csx"));
FileUtilitiesTests.cs (77)
22
Assert.False(
PathUtilities
.IsAbsolute(null));
23
Assert.False(
PathUtilities
.IsAbsolute(""));
24
Assert.False(
PathUtilities
.IsAbsolute("C"));
25
Assert.False(
PathUtilities
.IsAbsolute("C:"));
26
Assert.True(
PathUtilities
.IsAbsolute(@"C:\"));
27
Assert.True(
PathUtilities
.IsAbsolute(@"C:/"));
28
Assert.True(
PathUtilities
.IsAbsolute(@"C:\\"));
29
Assert.False(
PathUtilities
.IsAbsolute(@"C\"));
30
Assert.True(
PathUtilities
.IsAbsolute(@"\\")); // incomplete UNC
31
Assert.True(
PathUtilities
.IsAbsolute(@"\\S")); // incomplete UNC
32
Assert.True(
PathUtilities
.IsAbsolute(@"\/C")); // incomplete UNC
33
Assert.True(
PathUtilities
.IsAbsolute(@"\/C\")); // incomplete UNC
34
Assert.True(
PathUtilities
.IsAbsolute(@"\\server")); // incomplete UNC
35
Assert.True(
PathUtilities
.IsAbsolute(@"\\server\share")); // UNC
36
Assert.True(
PathUtilities
.IsAbsolute(@"\\?\C:\share")); // long UNC
37
Assert.False(
PathUtilities
.IsAbsolute(@"\C"));
38
Assert.False(
PathUtilities
.IsAbsolute(@"/C"));
44
Assert.Null(
PathUtilities
.GetPathRoot(null));
45
Assert.Equal("",
PathUtilities
.GetPathRoot(""));
46
Assert.Equal("",
PathUtilities
.GetPathRoot("C"));
47
Assert.Equal("",
PathUtilities
.GetPathRoot("abc.txt"));
48
Assert.Equal("C:",
PathUtilities
.GetPathRoot("C:"));
49
Assert.Equal(@"C:\",
PathUtilities
.GetPathRoot(@"C:\"));
50
Assert.Equal(@"C:/",
PathUtilities
.GetPathRoot(@"C:/"));
51
Assert.Equal(@"C:\",
PathUtilities
.GetPathRoot(@"C:\\"));
52
Assert.Equal(@"C:/",
PathUtilities
.GetPathRoot(@"C:/\"));
53
Assert.Equal(@"*:/",
PathUtilities
.GetPathRoot(@"*:/"));
54
Assert.Equal(@"0:/",
PathUtilities
.GetPathRoot(@"0:/"));
55
Assert.Equal(@"::/",
PathUtilities
.GetPathRoot(@"::/"));
62
Assert.Equal("/",
PathUtilities
.GetPathRoot(@"/"));
63
Assert.Equal(@"/",
PathUtilities
.GetPathRoot(@"/x"));
66
Assert.Equal(@"\",
PathUtilities
.GetPathRoot(@"\"));
67
Assert.Equal(@"\",
PathUtilities
.GetPathRoot(@"\x"));
70
Assert.Equal(@"\",
PathUtilities
.GetPathRoot(@"\"));
71
Assert.Equal(@"\",
PathUtilities
.GetPathRoot(@"\x"));
74
Assert.Equal(@"\\",
PathUtilities
.GetPathRoot(@"\\"));
75
Assert.Equal(@"\\x",
PathUtilities
.GetPathRoot(@"\\x"));
76
Assert.Equal(@"\\x\",
PathUtilities
.GetPathRoot(@"\\x\"));
77
Assert.Equal(@"\\x\y",
PathUtilities
.GetPathRoot(@"\\x\y"));
78
Assert.Equal(@"\\\x\y",
PathUtilities
.GetPathRoot(@"\\\x\y"));
79
Assert.Equal(@"\\\\x\y",
PathUtilities
.GetPathRoot(@"\\\\x\y"));
80
Assert.Equal(@"\\x\\y",
PathUtilities
.GetPathRoot(@"\\x\\y"));
81
Assert.Equal(@"\\/x\\/y",
PathUtilities
.GetPathRoot(@"\\/x\\/y"));
82
Assert.Equal(@"\\/x\\/y",
PathUtilities
.GetPathRoot(@"\\/x\\/y/"));
83
Assert.Equal(@"\\/x\\/y",
PathUtilities
.GetPathRoot(@"\\/x\\/y\/"));
84
Assert.Equal(@"\\/x\\/y",
PathUtilities
.GetPathRoot(@"\\/x\\/y\/zzz"));
85
Assert.Equal(@"\\x\y",
PathUtilities
.GetPathRoot(@"\\x\y"));
86
Assert.Equal(@"\\x\y",
PathUtilities
.GetPathRoot(@"\\x\y\\"));
87
Assert.Equal(@"\\abc\xyz",
PathUtilities
.GetPathRoot(@"\\abc\xyz"));
88
Assert.Equal(@"\\server\$c",
PathUtilities
.GetPathRoot(@"\\server\$c\Public"));
96
Assert.Equal(@"C:\x/y",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @""));
97
Assert.Equal(@"C:\x/y",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", null));
98
Assert.Equal(@"C:\x/y",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", null));
100
Assert.Null(
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\", @"C:\goo"));
101
Assert.Null(
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\", @"C:goo"));
102
Assert.Null(
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\", @"\goo"));
104
Assert.Equal(@"C:\x\y\goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x\y", @"goo"));
105
Assert.Equal(@"C:\x/y\goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @"goo"));
106
Assert.Equal(@"C:\x/y\.\goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @".\goo"));
107
Assert.Equal(@"C:\x/y\./goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @"./goo"));
108
Assert.Equal(@"C:\x/y\..\goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @"..\goo"));
109
Assert.Equal(@"C:\x/y\../goo",
PathUtilities
.CombineAbsoluteAndRelativePaths(@"C:\x/y", @"../goo"));
173
Assert.Equal(PathKind.RelativeToCurrentRoot,
PathUtilities
.GetPathKind(@"/c:x.dll"));
176
Assert.Equal(PathKind.RelativeToCurrentRoot,
PathUtilities
.GetPathKind(@"/:x.dll"));
179
Assert.Equal(PathKind.Absolute,
PathUtilities
.GetPathKind(@"//:x.dll"));
182
Assert.Equal(PathKind.RelativeToDriveDirectory,
PathUtilities
.GetPathKind(@"c::x.dll"));
185
Assert.Equal(PathKind.RelativeToCurrentDirectory,
PathUtilities
.GetPathKind(@".\:x.dll"));
188
Assert.Equal(PathKind.RelativeToCurrentParent,
PathUtilities
.GetPathKind(@"..\:x.dll"));
192
Assert.Equal(PathKind.Empty,
PathUtilities
.GetPathKind(@""));
195
Assert.Equal(PathKind.Empty,
PathUtilities
.GetPathKind(" \t\r\n "));
208
Assert.Equal(expected,
PathUtilities
.GetExtension(path));
214
Assert.Equal(expected,
PathUtilities
.RemoveExtension(path));
220
Assert.Equal(expected,
PathUtilities
.ChangeExtension(path, extension));
236
Assert.Equal(".dll",
PathUtilities
.GetExtension("*.dll"));
247
Assert.Equal("*",
PathUtilities
.RemoveExtension("*.dll"));
269
Assert.Equal("*",
PathUtilities
.RemoveExtension("*.dll"));
321
var result =
PathUtilities
.ExpandAbsolutePathWithRelativeParts(input);
InternalUtilities\AdditionalTextComparerTests.cs (1)
76
if (
PathUtilities
.IsUnixLikePlatform)
MetadataReferences\FusionAssemblyPortabilityPolicy.cs (1)
46
Debug.Assert(
PathUtilities
.IsAbsolute(appConfigPath));
Microsoft.CodeAnalysis.VisualBasic (12)
CommandLine\VisualBasicCommandLineParser.vb (11)
78
Debug.Assert(baseDirectory Is Nothing OrElse
PathUtilities
.IsAbsolute(baseDirectory))
100
Dim debugInformationFormat As DebugInformationFormat = If(
PathUtilities
.IsUnixLikePlatform, DebugInformationFormat.PortablePdb, DebugInformationFormat.Pdb)
715
debugInformationFormat = If(
PathUtilities
.IsUnixLikePlatform, DebugInformationFormat.PortablePdb, DebugInformationFormat.Pdb)
1450
documentationPath =
PathUtilities
.CombineAbsoluteAndRelativePaths(outputDirectory,
PathUtilities
.RemoveExtension(outputFileName))
1560
Dim filePath =
PathUtilities
.CombineAbsoluteAndRelativePaths(absolutePath, fileName)
1715
If Not
PathUtilities
.IsValidFilePath(fullPath) Then
2294
simpleName =
PathUtilities
.RemoveExtension(
PathUtilities
.GetFileName(first.Path))
2304
Dim ext As String =
PathUtilities
.GetExtension(outputFileName)
2320
simpleName =
PathUtilities
.RemoveExtension(outputFileName)
Symbols\Source\SourceAssemblySymbol.vb (1)
1662
If Not String.IsNullOrEmpty(keyFile) AndAlso Not
PathUtilities
.IsAbsolute(keyFile) Then
Microsoft.CodeAnalysis.VisualBasic.CommandLine.UnitTests (6)
CommandLineTests.vb (6)
3033
Dim platformPdbKind = If(
PathUtilities
.IsUnixLikePlatform, DebugInformationFormat.PortablePdb, DebugInformationFormat.Pdb)
3446
Dim s =
PathUtilities
.DirectorySeparatorStr
3547
Dim sep =
PathUtilities
.DirectorySeparatorChar
3698
assertPdbEmit(dir, "/goo/a.pdb", {$"/pathmap:{dir.Path}=/goo,{dir.Path}{
PathUtilities
.DirectorySeparatorChar}=/bar"})
5740
Assert.Equal(1, Directory.EnumerateFiles(dir.Path, "*" &
PathUtilities
.GetExtension(expectedOutputName)).Count())
10495
Dim root As String = If(
PathUtilities
.IsUnixLikePlatform, "/", "c:\")
Microsoft.CodeAnalysis.VisualBasic.Emit.UnitTests (1)
Attributes\InternalsVisibleToAndStrongNameTests.vb (1)
138
options:=TestOptions.ReleaseDll.WithStrongNameProvider(GetDesktopProviderWithPath(
PathUtilities
.CombineAbsoluteAndRelativePaths(keyFileDir, "TempSubDir\"))))
VBCSCompiler (3)
AnalyzerConsistencyChecker.cs (2)
94
var comparer =
PathUtilities
.Comparer;
113
if (
PathUtilities
.Comparer.Equals(compilerDirectory, Path.GetDirectoryName(loadedAssembly.CodeBase)))
MetadataCache.cs (1)
49
var module = CreateModuleMetadata(
PathUtilities
.CombineAbsoluteAndRelativePaths(assemblyDir, moduleName)!, prefetchEntireImage: false);