Beispiel #1
0
        public void TestPathParsing(string path, string expected, int?parentCount, ParsedPathKind expectedKind)
        {
            var parsedPath   = m_pathResolver.ParseRegularPath(path);
            var expectedPath = CreateParsedPath(expected, parentCount, expectedKind);

            Assert.Equal(expectedPath, parsedPath);
        }
Beispiel #2
0
        private ParsedPath CreateParsedPath(string path, int?parentCount, ParsedPathKind kind)
        {
            switch (kind)
            {
            case ParsedPathKind.AbsolutePath:
                return(ParsedPath.AbsolutePath(CreateAbsolutePath(path), m_pathTable));

            case ParsedPathKind.PackageRelative:
                return(ParsedPath.PackageRelativePath(RelativePath.Create(m_pathTable.StringTable, path), m_pathTable));

            case ParsedPathKind.FileRelative:
                return(ParsedPath.FileRelativePath(RelativePath.Create(m_pathTable.StringTable, path), parentCount ?? 0, m_pathTable));

            default:
                throw new ArgumentOutOfRangeException(nameof(kind), kind, null);
            }
        }