Jump to content
Wikipedia The Free Encyclopedia

Module:GetShortDescription/testcases

From Wikipedia, the free encyclopedia
This is the test cases page for the module Module:GetShortDescription. Results of the test cases.
 -- Unit tests for [[Module:GetShortDescription]]. Run all tests on the talk page.
 -- Due to the changable nature of short descriptions; some of these tests may need to be updated before running them.

 localp=require('Module:UnitTests')

 --[[ empty params ]]

 functionp:test__no_name_param()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes}}','<span style="color:#d33">[[Module:GetShortDescription]] requires a page name (including namespace).</span>[[Category:Pages displaying alarming messages about Module:GetShortDescription]]',{nowiki=1})
 end

 functionp:test__no_name_value()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=}}','<span style="color:#d33">[[Module:GetShortDescription]] requires a page name (including namespace).</span>[[Category:Pages displaying alarming messages about Module:GetShortDescription]]',{nowiki=1})
 end

 functionp:test__no_only_value()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|only=}}',"Explicit short description")
 end

 functionp:test__no_prefer_value()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|prefer=}}',"Explicit short description")
 end

 functionp:test__no_objectify_alarm_value()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|objectify_alarm=}}','<span style="color:#d33">[[Module:GetShortDescription]] requires a page name (including namespace).</span>[[Category:Pages displaying alarming messages about Module:GetShortDescription]]',{nowiki=1})
 end

 --[[ nonexistent page name ]]

 functionp:test__nonexistent_page_name()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Intentionally permanent red link}}','')
 end

 --[[ unknown param offered ]]

 functionp:test__unknown_param_with_no_value_offered()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|unknown=}}',"Explicit short description")
 end

 functionp:test__unknown_param_with_value_offered()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|unknown=unknown}}',"Explicit short description")
 end

 --[[ unknown param found ]]

 functionp:test__unknown_param_found()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description with unknown params}}',"Explicit short description with unknown params")
 end

 functionp:test__complex_unknown_params_found()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description with complex unknown params}}',"Explicit short description with complex unknown params")
 end

 --[[ multiple short descriptions ]]

 --[[ temporarily disabled re other solution required

 function p:test__two_short_descriptions_numbered_after()
 	self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/two explicit short descriptions numbered after}}', "Explicit short description numbered second (used)")
 end

 function p:test__two_short_descriptions_numbered_before()
 	self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/two explicit short descriptions numbered before}}', "Explicit short description unnumbered second (used)")
 end

 ]]

 functionp:test__two_short_description_templates()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/two explicit short description templates}}',"Explicit short description second (used)")
 end

 functionp:test__two_short_description_templates__first_noreplace()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/two explicit short description templates first noreplace}}',"Explicit short description second (used)")
 end

 functionp:test__two_short_description_templates__second_noreplace()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/two explicit short description templates second noreplace}}',"Explicit short description first (used)")
 end

 functionp:test__three_short_description_templates__second_noreplace()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/three explicit short description templates second noreplace}}',"Explicit short description third (used)")
 end

 functionp:test__three_short_description_templates__second_none__third_noreplace()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/three explicit short description templates second none third noreplace}}',"Explicit short description first (used)")
 end

 --[[ none but name ]]

 functionp:test__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description}}',"Explicit short description")
 end

 functionp:test__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description}}',"")
 end

 functionp:test__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia}}',"Free online crowdsourced encyclopedia")
 end

 functionp:test__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example}}',"Wikimedia disambiguation page")
 end

 --[[ name and only ]]

 functionp:test__only_explicit__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|only=explicit}}',"Explicit short description")
 end

 functionp:test__only_wikidata__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|only=wikidata}}',"")
 end

 functionp:test__only_explicit__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|only=explicit}}',"")
 end

 functionp:test__only_wikidata__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|only=wikidata}}',"")
 end

 functionp:test__only_explicit__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|only=explicit}}',"Free online crowdsourced encyclopedia")
 end

 functionp:test__only_wikidata__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|only=wikidata}}',"free multilingual online encyclopedia")
 end

 functionp:test__only_explicit__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|only=explicit}}',"")
 end

 functionp:test__only_wikidata__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|only=wikidata}}',"Wikimedia disambiguation page")
 end

 --[[ name and prefer ]]

 functionp:test__prefer_explicit__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|prefer=explicit}}',"Explicit short description")
 end

 functionp:test__prefer_wikidata__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|prefer=wikidata}}',"Explicit short description")
 end

 functionp:test__prefer_explicit__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|prefer=explicit}}',"")
 end

 functionp:test__prefer_wikidata__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|prefer=wikidata}}',"")
 end

 functionp:test__prefer_explicit__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|prefer=explicit}}',"Free online crowdsourced encyclopedia")
 end

 functionp:test__prefer_wikidata__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|prefer=wikidata}}',"free multilingual online encyclopedia")
 end

 functionp:test__prefer_explicit__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|prefer=explicit}}',"Wikimedia disambiguation page")
 end

 functionp:test__prefer_wikidata__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|prefer=wikidata}}',"Wikimedia disambiguation page")
 end

 --[[ conflicting params ]]
 --[[ only=explicit and prefer=wikidata ]]

 functionp:test__conflicting__only_explicit__prefer_wikidata__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|only=explicit|prefer=wikidata}}',"Explicit short description")
 end

 functionp:test__conflicting__only_explicit__prefer_wikidata__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|only=explicit|prefer=wikidata}}',"")
 end

 functionp:test__conflicting__only_explicit__prefer_wikidata__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|only=explicit|prefer=wikidata}}',"Free online crowdsourced encyclopedia")
 end

 functionp:test__conflicting__only_explicit__prefer_wikidata__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|only=explicit|prefer=wikidata}}',"")
 end

 --[[ only=wikidata and prefer=explicit ]]

 functionp:test__conflicting__only_wikidata__prefer_explicit__explicit_exists__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description|only=wikidata|prefer=explicit}}',"")
 end

 functionp:test__conflicting__only_wikidata__prefer_explicit__explicit_does_not_exist__wikidata_does_not_exist()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/no explicit short description|only=wikidata|prefer=explicit}}',"")
 end

 functionp:test__conflicting__only_wikidata__prefer_explicit__explicit_exists__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Wikipedia|only=wikidata|prefer=explicit}}',"free multilingual online encyclopedia")
 end

 functionp:test__conflicting__only_wikidata__prefer_explicit__explicit_does_not_exist__wikidata_exists()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example|only=wikidata|prefer=explicit}}',"Wikimedia disambiguation page")
 end

 --[[ unusual explicit descriptions ]]

 functionp:test__only_explicit__undefined()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description undefined|only=explicit}}',"")
 end

 functionp:test__only_explicit__empty()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description empty|only=explicit}}',"")
 end

 functionp:test__only_explicit__none()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description none|only=explicit}}',"none")
 end

 functionp:test__only_explicit__numbered()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description numbered|only=explicit}}',"Explicit short description numbered")
 end

 functionp:test__only_explicit__complex()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex|only=explicit}}',"Explicit short description complex")
 end

 functionp:test__only_explicit__complex__numbered()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex numbered|only=explicit}}',"Explicit short description complex numbered")
 end

 functionp:test__only_explicit__numbered__empty()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description numbered empty|only=explicit}}',"")
 end

 functionp:test__only_explicit__numbered__none()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description numbered none|only=explicit}}',"none")
 end

 functionp:test__only_explicit__complex__empty()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex empty|only=explicit}}',"")
 end

 functionp:test__only_explicit__complex__none()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex none|only=explicit}}',"none")
 end

 functionp:test__only_explicit__complex__numbered__empty()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex numbered empty|only=explicit}}',"")
 end

 functionp:test__only_explicit__complex__numbered__none()
 self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Template:GetShortDescription/explicit short description complex numbered none|only=explicit}}',"none")
 end

 --[[ test the test; sanity check; should fail ]]

 --function p:test__the_test()
 --	self:preprocess_equals('{{#invoke:GetShortDescription|main|stringify=yes|name=Example}}', "test the test")
 --end

 --[[ foreign language wikidata ]]

 -- Testing |lang_italic= |lang_nocat= |lang_size= |lang_cat= |lang_rtl= |lang_no= will require a wikidata description in a language other than English to be returned

 returnp

AltStyle によって変換されたページ (->オリジナル) /