Skip to content

Commit 6d311f2

Browse files
committed
+test
1 parent a06cc87 commit 6d311f2

File tree

3 files changed

+11
-7
lines changed

3 files changed

+11
-7
lines changed

_test suite/test.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3984,9 +3984,12 @@ function test_wiki() {
39843984
assert([wikitext, parsed.toString()], 'wiki.parse.transclusion #40');
39853985
assert(['transclusion', parsed.type], 'wiki.parse.transclusion #40-1');
39863986
assert(['Template:Text', parsed.page_title], 'wiki.parse.transclusion #40-2');
3987-
wikitext = '{{Template:}}'; parsed = CeL.wiki.parse(wikitext);
3987+
wikitext = '{{Template:A|條目}}'; parsed = CeL.wiki.parse(wikitext);
39883988
assert([wikitext, parsed.toString()], 'wiki.parse.transclusion #41');
3989-
assert([wikitext, parsed], 'wiki.parse.transclusion #41-1');
3989+
assert([wikitext, parsed.page_title], 'wiki.parse.transclusion #41-1');
3990+
wikitext = '{{Template:}}'; parsed = CeL.wiki.parse(wikitext);
3991+
assert([wikitext, parsed.toString()], 'wiki.parse.transclusion #41-2');
3992+
assert([wikitext, parsed], 'wiki.parse.transclusion #41-3');
39903993

39913994
wikitext = '{{text| {{ {{<s> }} }} </s> }}'; parsed = CeL.wiki.parse(wikitext);
39923995
assert([wikitext, parsed.toString()], 'wiki.parse.transclusion #42');
@@ -5221,7 +5224,7 @@ function test_wiki() {
52215224
assert(['{{t|b=2|1}}', CeL.wiki.parse.replace_parameter(token, 'a', KEY_remove_parameter) === 1 && token.toString()], 'wiki.parse.replace_parameter remove parameter: #3');
52225225
assert(['{{t|1}}', CeL.wiki.parse.replace_parameter(token, { b: KEY_remove_parameter }, { parameter_name_only: true }) === 1 && token.toString()], 'wiki.parse.replace_parameter remove parameter: #4');
52235226
token = CeL.wiki.parse('{{WPBS|1=\n{{TT}}\n}}');
5224-
assert(['{{WPBS|class=A|vital=yes|1=\n{{TT}}\n}}', CeL.wiki.parse.replace_parameter(token, { 'class': 'A', vital: 'yes' }, { value_only: true, force_add: true, before_parameter: 1, no_value_space: true }) === 2 && token.toString()], 'wiki.parse.replace_parameter remove parameter: #4');
5227+
assert(['{{WPBS|class=A|vital=yes|1=\n{{TT}}\n}}', CeL.wiki.parse.replace_parameter(token, { 'class': 'A', vital: 'yes', nothing_to_set: undefined }, { value_only: true, force_add: true, before_parameter: 1, no_value_space: true }) === 2 && token.toString()], 'wiki.parse.replace_parameter remove parameter: #4');
52255228
wikitext = '{{ t | a= 1|v = 3 }}';
52265229
token = CeL.wiki.parse(wikitext);
52275230
assert(['{{q| a= 1|v = 3 }}', CeL.wiki.parse.replace_parameter(token, CeL.wiki.parse.replace_parameter.KEY_template_name, 'q') === 1 && token.toString()], 'wiki.parse.replace_parameter: #18-1 Only change template name');

application/net/wiki/parser/misc.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -460,6 +460,7 @@ function module_code(library_namespace) {
460460

461461
if (typeof replace_from === 'string')
462462
replace_from = replace_from.trim();
463+
// 不新增原先沒有並且未設定值的 parameter。
463464
if (convert_replace_to(replace_from) === undefined) {
464465
continue;
465466
}
@@ -469,8 +470,7 @@ function module_code(library_namespace) {
469470
if (!(index >= 0)) {
470471
// 不存在此 parameter name 可 replace。新 parameter。
471472
if (replace_to !== KEY_remove_parameter
472-
&& replace_to !== undefined && options.value_only
473-
&& options.force_add) {
473+
&& options.value_only && options.force_add) {
474474
// options.preserve_spacing
475475
if (!options.no_value_space
476476
//

application/net/wiki/parser/wikitext.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,7 +1027,7 @@ function module_code(library_namespace) {
10271027
* @param {Array}token
10281028
* root token
10291029
* @param {Object}[options]
1030-
* 附加參數/設定選擇性/特殊功能與選項
1030+
* 附加參數/設定選擇性/特殊功能與選項
10311031
* @returns
10321032
*/
10331033
function flat_plain_element(token, options) {
@@ -1130,7 +1130,7 @@ function module_code(library_namespace) {
11301130
* @param {String}wikitext
11311131
* wikitext to parse
11321132
* @param {Object}[options]
1133-
* 附加參數/設定選擇性/特殊功能與選項
1133+
* 附加參數/設定選擇性/特殊功能與選項
11341134
* @param {Array}[queue]
11351135
* temporary queue. 基本上僅供內部使用。
11361136
*
@@ -2248,6 +2248,7 @@ function module_code(library_namespace) {
22482248

22492249
// 需再進一步處理 {{}}, -{}- 之類。
22502250
// [[w:en:Wikipedia:Categorization#Sort keys]]
2251+
// 多個同名的 category 會以最後一個的 sort key 為主。
22512252
parameters[category_matched ? 'sort_key'
22522253
// [[w:en:Wikipedia:Piped link]] the displayed text
22532254
: 'display_text'] = parsed_display_text

0 commit comments

Comments
 (0)