Skip to content

Commit f5640c9

Browse files
committed
Add UT for page parsing.
1 parent d5823b5 commit f5640c9

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

UnitTestProject1/Tests/RenderingTests.cs

+23-1
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,35 @@ public async Task WpLzhPageParsingTest1()
2323
var site = await WpLzhSiteAsync;
2424
// 一九五二年
2525
var result = await site.ParseRevisionAsync(240575, ParsingOptions.EffectiveLanguageLinks);
26+
27+
WriteOutput("Parsed revision");
2628
ShallowTrace(result);
29+
2730
Assert.Equal("一九五二年", result.Title);
2831
Assert.Matches(@"<span class=""[\w-]+"">一九五二年</span>", result.DisplayTitle);
2932
Assert.True(result.LanguageLinks.First(l => l.Language == "en").Title == "1952");
3033
Assert.True(result.LanguageLinks.First(l => l.Language == "zh").Title == "1952年");
3134
Assert.Contains(">公元<b>一九五二年</b>於諸曆</", result.Content);
32-
Assert.Contains(result.Sections, s => s.Heading == "大事");
35+
36+
WriteOutput("Sections");
37+
ShallowTrace(result.Sections);
38+
39+
Assert.Equal(3, result.Sections.Count);
40+
41+
Assert.Equal("1", result.Sections[0].Index);
42+
Assert.Equal("一", result.Sections[0].Number);
43+
Assert.Equal(11, result.Sections[0].ByteOffset);
44+
Assert.Equal(2, result.Sections[0].Level);
45+
Assert.Equal(1, result.Sections[0].TocLevel);
46+
Assert.Equal("大事", result.Sections[0].Heading);
47+
Assert.Equal("大事", result.Sections[0].Anchor);
48+
Assert.Equal("一九五二年", result.Sections[0].PageTitle);
49+
50+
Assert.Equal("2", result.Sections[1].Index);
51+
Assert.Equal("生", result.Sections[1].Heading);
52+
53+
Assert.Equal("3", result.Sections[2].Index);
54+
Assert.Equal("卒", result.Sections[2].Heading);
3355
}
3456

3557
[Fact]

WikiClientLibrary/Pages/Parsing/ParsedContentInfo.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ private JToken DummySummary
7070
public IReadOnlyCollection<ContentCategoryInfo> Categories { get; private set; }
7171

7272
[JsonProperty]
73-
public IReadOnlyCollection<ContentSectionInfo> Sections { get; private set; }
73+
public IReadOnlyList<ContentSectionInfo> Sections { get; private set; }
7474

7575
[JsonProperty]
7676
public IReadOnlyCollection<ContentPropertyInfo> Properties { get; private set; }

0 commit comments

Comments
 (0)