Skip to content

Commit ff94e20

Browse files
committed
+ function parse_interwiki_url(url, options)
1 parent c239b61 commit ff94e20

6 files changed

Lines changed: 464 additions & 83 deletions

File tree

_test suite/test.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6073,6 +6073,36 @@ function test_wiki() {
60736073
assert([undefined, interwiki_data.interlanguage], 'zhwiki: parse.interwiki_link() #5-1');
60746074

60756075

6076+
wikitext = '[https://zh.wikipedia.org/wiki/Special:Watchlist?hidemyself=1&hidebots=1&hidecategorization=1&hideWikibase=1&limit=500&days=3&enhanced=1&urlversion=2 監視清單]';
6077+
parsed = CeL.wiki.parse(wikitext, CeL.wiki.add_session_to_options(zhwiki));
6078+
interwiki_data = CeL.wiki.parse.interwiki_url(parsed, CeL.wiki.add_session_to_options(zhwiki));
6079+
assert(['zh', interwiki_data && interwiki_data.prefix], 'zhwiki: parse.interwiki_url() #1-1');
6080+
6081+
wikitext = '[https://zh.wikipedia.org/wiki/Special:Watchlist 監視清單]';
6082+
parsed = CeL.wiki.parse(wikitext, CeL.wiki.add_session_to_options(zhwiki));
6083+
interwiki_data = CeL.wiki.parse.interwiki_url(parsed, CeL.wiki.add_session_to_options(zhwiki));
6084+
assert(['zh', interwiki_data && interwiki_data.prefix], 'zhwiki: parse.interwiki_url() #2-1');
6085+
assert(['[[Special:Watchlist|監視清單]]', interwiki_data && interwiki_data.wikilink && interwiki_data.wikilink.toString()], 'zhwiki: parse.interwiki_url() #2-2');
6086+
6087+
wikitext = '[https://en.wikipedia.org/wiki/Special:Watchlist watchlist]';
6088+
parsed = CeL.wiki.parse(wikitext, CeL.wiki.add_session_to_options(zhwiki));
6089+
interwiki_data = CeL.wiki.parse.interwiki_url(parsed, CeL.wiki.add_session_to_options(zhwiki));
6090+
assert(['en', interwiki_data && interwiki_data.prefix], 'zhwiki: parse.interwiki_url() #3-1');
6091+
assert(['[[:en:Special:Watchlist|watchlist]]', interwiki_data && interwiki_data.wikilink && interwiki_data.wikilink.toString()], 'zhwiki: parse.interwiki_url() #3-2');
6092+
6093+
wikitext = '[https://en.wikisource.org/wiki/A]';
6094+
parsed = CeL.wiki.parse(wikitext, CeL.wiki.add_session_to_options(zhwiki));
6095+
interwiki_data = CeL.wiki.parse.interwiki_url(parsed, CeL.wiki.add_session_to_options(zhwiki));
6096+
assert(['s:en', interwiki_data && interwiki_data.prefix], 'zhwiki: parse.interwiki_url() #4-1');
6097+
assert(['[[s:en:A|A]]', interwiki_data && interwiki_data.wikilink && interwiki_data.wikilink.toString()], 'zhwiki: parse.interwiki_url() #4-2');
6098+
6099+
wikitext = '[https://ja.wikisource.org/wiki/%E6%9E%95%E8%8D%89%E5%AD%90]';
6100+
parsed = CeL.wiki.parse(wikitext, CeL.wiki.add_session_to_options(zhwiki));
6101+
interwiki_data = CeL.wiki.parse.interwiki_url(parsed, CeL.wiki.add_session_to_options(zhwiki));
6102+
assert(['s:ja', interwiki_data && interwiki_data.prefix], 'zhwiki: parse.interwiki_url() #5-1');
6103+
assert(['[[s:ja:枕草子|枕草子]]', interwiki_data && interwiki_data.wikilink && interwiki_data.wikilink.toString()], 'zhwiki: parse.interwiki_url() #5-2');
6104+
6105+
60766106
wikitext = "{{NoteTA|G1=Unit|zh-cn:巴颜喀拉山脉; zh-hk:巴顏喀拉山脈; zh-tw:巴顏喀喇山}}";
60776107
parsed = CeL.wiki.parser(wikitext, CeL.wiki.add_session_to_options(zhwiki)).parse();
60786108
parsed.each('tempLate:NoteTA', function (token) {

0 commit comments

Comments
 (0)