Skip to content

Commit 710ff72

Browse files
committed
Fix breaking UT cases.
1 parent c4d525a commit 710ff72

File tree

5 files changed

+18
-16
lines changed

5 files changed

+18
-16
lines changed

UnitTestProject1/Tests/GeneratorTests1.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ public async Task AllCategoriesGeneratorTest1(string siteName, int batches)
7272
}
7373

7474
[Theory]
75-
[InlineData(nameof(WpTest2SiteAsync), "Category:Template documentation pages‏")]
76-
[InlineData(nameof(WikiaTestSiteAsync), "BlogListingPage‏‎‏‎")]
77-
[InlineData(nameof(TFWikiSiteAsync), "Category:Autobot subgroups‏")]
75+
[InlineData(nameof(WpTest2SiteAsync), "Category:Template documentation pages‏")]
76+
[InlineData(nameof(WikiaTestSiteAsync), "Free wiki software‎")]
77+
[InlineData(nameof(TFWikiSiteAsync), "Category:Autobot subgroups‏")]
7878
public async Task CategoryMembersGeneratorTest(string siteName, string categoryName)
7979
{
8080
var site = await WikiSiteFromNameAsync(siteName);

UnitTestProject1/Tests/PageTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public async Task WpEnPageReadTest1()
5959

6060
[Theory]
6161
[InlineData(nameof(WpTest2SiteAsync), "Project:sandbox", "Wikipedia:Sandbox", BuiltInNamespaces.Project, 2076)]
62-
[InlineData(nameof(WikiaTestSiteAsync), "Project:sandbox", "Discussion Manual Wiki:Sandbox", BuiltInNamespaces.Project, 637)]
62+
[InlineData(nameof(WikiaTestSiteAsync), "Project:sandbox", "DMan Ⅱ Wiki:Sandbox", BuiltInNamespaces.Project, 149)]
6363
[InlineData(nameof(TFWikiSiteAsync), "Help:coming soon", "Help:Coming soon", BuiltInNamespaces.Help, 10122)]
6464
public async Task WikiPageReadTest2(string siteName, string fetchTitle, string expectedTitle, int expectedNs, int expectedId)
6565
{

UnitTestProject1/Tests/SiteTokenTests.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ public SiteTokenTests(ITestOutputHelper output, WikiSiteProvider wikiSiteProvide
1818
SiteNeedsLogin(Endpoints.TFWiki);
1919
}
2020

21-
[SkippableTheory]
22-
[InlineData(nameof(WpTest2SiteAsync))]
23-
[InlineData(nameof(WikiaTestSiteAsync))]
24-
[InlineData(nameof(TFWikiSiteAsync))]
25-
public async Task TokenTest(string testSiteName)
21+
[Theory]
22+
[InlineData(nameof(WpTest2SiteAsync), new[] { "edit", "move", "patrol" })]
23+
[InlineData(nameof(WikiaTestSiteAsync), new[] { "edit", "move", "patrol" })]
24+
[InlineData(nameof(TFWikiSiteAsync), new[] { "edit", "patrol" })]
25+
public async Task TokenTest(string testSiteName, string[] tokenTypes)
2626
{
2727
var site = await WikiSiteFromNameAsync(testSiteName);
28-
foreach (var tokenType in new[] { "edit", "move", "patrol" })
28+
foreach (var tokenType in tokenTypes)
2929
{
3030
// Fetch twice at a time...
3131
var tokenValueTask1 = site.GetTokenAsync(tokenType);

UnitTestProject1/Tests/WikiLinkTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ public async Task WikiLinkTest1()
4949
[Fact]
5050
public async Task TestMethod2()
5151
{
52-
var WikiaTestSite = await WikiaTestSiteAsync;
53-
var link1 = WikiLink.Parse(WikiaTestSite, "__ _project_ _talk_:___sandbox_", BuiltInNamespaces.Category);
54-
var link2 = WikiLink.Parse(WikiaTestSite, "part1:part2:part3", BuiltInNamespaces.Category);
55-
Assert.Equal("Discussion Manual Wiki talk:Sandbox", link1.ToString());
52+
var wikiaTestSite = await WikiaTestSiteAsync;
53+
var link1 = WikiLink.Parse(wikiaTestSite, "__ _project_ _talk_:___sandbox_", BuiltInNamespaces.Category);
54+
var link2 = WikiLink.Parse(wikiaTestSite, "part1:part2:part3", BuiltInNamespaces.Category);
55+
Assert.Equal("DMan Ⅱ Wiki talk:Sandbox", link1.ToString());
5656
Assert.Equal("Category:Part1:part2:part3", link2.ToString());
5757
}
5858

WikiClientLibrary/Infrastructures/TokensManager.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public async Task<string> GetTokenAsync(string tokenType, bool forceRefetch, Can
8282
{
8383
if (string.IsNullOrEmpty(tokenType))
8484
throw new ArgumentException(Prompts.ExceptionArgumentNullOrEmpty, nameof(tokenType));
85-
if (tokenType.Contains("|"))
85+
if (tokenType.Contains('|'))
8686
throw new ArgumentException(Prompts.ExceptionArgumentContainsPipe, nameof(tokenType));
8787
cancellationToken.ThrowIfCancellationRequested();
8888
tokenType = tokenType.Trim();
@@ -95,6 +95,8 @@ public async Task<string> GetTokenAsync(string tokenType, bool forceRefetch, Can
9595
if (site.SiteInfo.Version < v117 && tokenType == "patrol")
9696
realTokenType = "edit";
9797
// Use csrf token if possible.
98+
// https://www.mediawiki.org/wiki/MediaWiki_1.37/Deprecation_of_legacy_API_token_parameters
99+
// https://github.com/wikimedia/mediawiki/blob/1.19.10/includes/api/ApiQueryInfo.php
98100
if (site.SiteInfo.Version >= v124 && CsrfTokens.Contains(tokenType))
99101
realTokenType = "csrf";
100102
// Collect tokens from cache
@@ -156,7 +158,7 @@ string ExtractToken(IDictionary<string, JsonNode?> jTokens, string tokenType1)
156158
}
157159
var token = (string?)jtoken;
158160
if (token == null)
159-
throw new ArgumentException($"Invalid token type: {tokenType1}.", nameof(tokenType));
161+
throw new ArgumentException($"Failed to extract {tokenType1} token from the API response.", nameof(tokenType));
160162
return token;
161163
}
162164

0 commit comments

Comments
 (0)