diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2011-12-03 13:29:22 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2011-12-03 13:29:22 +0100 |
commit | ca32f08966f1b51fcb19460f0996bb0c4048e6fe (patch) | |
tree | ec04cc15b867bc21eedca904cea9af0254531a11 /extensions/ParserFunctions/convertTests.txt | |
parent | a22fbfc60f36f5f7ee10d5ae6fe347340c2ee67c (diff) |
Update to MediaWiki 1.18.0
* also update ArchLinux skin to chagnes in MonoBook
* Use only css to hide our menu bar when printing
Diffstat (limited to 'extensions/ParserFunctions/convertTests.txt')
-rw-r--r-- | extensions/ParserFunctions/convertTests.txt | 231 |
1 files changed, 231 insertions, 0 deletions
diff --git a/extensions/ParserFunctions/convertTests.txt b/extensions/ParserFunctions/convertTests.txt new file mode 100644 index 00000000..dc09c45a --- /dev/null +++ b/extensions/ParserFunctions/convertTests.txt @@ -0,0 +1,231 @@ +!! functionhooks +convert +!! endfunctionhooks + +!! test +Simple conversion +!! input +{{#convert: 10 m | km }} +!!result +<p>0.01 kilometres +</p> +!! end + +!! test +Position and formatting of numbers and units +!! input +*{{#convert: 10 m | km }} +*{{#convert: 10m | km }} +*{{#convert: 10 km | m }} +*{{#convert: 10-km | m }} +*{{#convert: 10E2 km | m }} +*{{#convert: 10E-2 km | m }} +*{{#convert: 10.0E2 km | m }} +*{{#convert: 10.0E2.5 km | m }} +!! result +<ul><li>0.01 kilometres +</li><li>0.01kilometres +</li><li>10,000 metres +</li><li>10,000-metres +</li><li>1,000,000 metres +</li><li>100 metres +</li><li>1,000,000 metres +</li><li>1,000,000.5,000 metres +</li></ul> + +!! end + +!! test +Precision 1 +!! input +*{{#convert: 10 m | km }} +*{{#convert: 11 m | km }} +*{{#convert: 12 m | km }} +*{{#convert: 13 m | km }} +*{{#convert: 14 m | km }} +*{{#convert: 15 m | km }} +*{{#convert: 16 m | km }} +*{{#convert: 17 m | km }} +*{{#convert: 18 m | km }} +*{{#convert: 19 m | km }} +*{{#convert: 20 m | km }} +!! result +<ul><li>0.01 kilometres +</li><li>0.011 kilometres +</li><li>0.012 kilometres +</li><li>0.013 kilometres +</li><li>0.014 kilometres +</li><li>0.015 kilometres +</li><li>0.016 kilometres +</li><li>0.017 kilometres +</li><li>0.018 kilometres +</li><li>0.019 kilometres +</li><li>0.02 kilometres +</li></ul> + +!! end + +!! test +Precision 2 +!! input +*{{#convert: 10.0 m | km }} +*{{#convert: 10.1 m | km }} +*{{#convert: 10.2 m | km }} +*{{#convert: 10.3 m | km }} +*{{#convert: 10.4 m | km }} +*{{#convert: 10.5 m | km }} +*{{#convert: 10.6 m | km }} +*{{#convert: 10.7 m | km }} +!! result +<ul><li>0.0100 kilometres +</li><li>0.0101 kilometres +</li><li>0.0102 kilometres +</li><li>0.0103 kilometres +</li><li>0.0104 kilometres +</li><li>0.0105 kilometres +</li><li>0.0106 kilometres +</li><li>0.0107 kilometres +</li></ul> + +!! end + +!! test +String interpolation +!! input +{{#convert: 25, 26, 27, 28, 29, and 30 km }} +!! result +<p>25,000, 26,000, 27,000, 28,000, 29,000, and 30,000 metres +</p> +!! end + +!! test +Precision 3 +!! input +{{#convert: 25, 26, 27, 28, 29, and 30 miles }} +!! result +<p>40,000, 42,000, 43,000, 45,000, 47,000, and 50,000 metres +</p> +!! end + +!! test +Precision 4 +!! input +{{#convert:35000, 35E3, 35.0E3, 350E2, 3.500E4, 35000E0, 350000E-1 m | km }} +!! result +<p>35, 35, 35.0, 35, 35.00, 35, 35 kilometres +</p> +!! end + +!! test +#sourceunit +!!input +*{{#convert: 25 | #sourceunit = km }} +*{{#convert: 25 | #sourceunit=km }} +*{{#convert: 25 | #sourceunit = km | #sourceunit = mm }} +*{{#convert: 25 | #sourceunit = km | cm }} +!! result +<ul><li>25,000 metres +</li><li>25,000 metres +</li><li>0.025 metres +</li><li>2,500,000 centimetres +</li></ul> + +!! end + +!! test +Precision overrides +!!input +*{{#convert: 1 mi | #dp = 0 }} +*{{#convert: 1 mi | #dp=1 }} +*{{#convert: 1 mi | #dp = -2 }} +*{{#convert: 1 mi | #dp = 5 }} +*{{#convert: 1 mi | #dp = -8 }} +*{{#convert: 1 mi | #sf = 0 }} +*{{#convert: 1 mi | #sf=1 }} +*{{#convert: 1 mi | #sf = 3 }} +*{{#convert: 1 mi | #sf = 5 }} +*{{#convert: 1 mi | #sf = -8 }} +!! result +<ul><li>1,609 metres +</li><li>1,609.3 metres +</li><li>1,600 metres +</li><li>1,609.344 metres +</li><li>0 metres +</li><li>2,000 metres +</li><li>2,000 metres +</li><li>1,610 metres +</li><li>1,609.3 metres +</li><li>2,000 metres +</li></ul> + +!! end + + +!! test +Errors +!! input +*{{#convert: 25 | km }} +*{{#convert: 25 foobars | mi }} +*{{#convert: 25 mi | #sourceunit = foobar }} +*{{#convert: 25 km | s }} +*{{#convert: 25 km/Pa | m/Pa }} +*{{#convert: 25 km/s/l }} +*{{#convert: 25 km/m3 }} +!! result +<ul><li><strong class="error">Error: no source unit given</strong> +</li><li><strong class="error">Error: unknown unit "foobars"</strong> +</li><li><strong class="error">Error: unknown unit "foobar"</strong> +</li><li><strong class="error">Error: cannot convert between units of "length" and "time"</strong> +</li><li><strong class="error">Error: invalid compound unit "length/pressure"</strong> +</li><li><strong class="error">Error: cannot parse double compound units like "km/s/l"</strong> +</li><li><strong class="error">Error: invalid compound unit "length/volume"</strong> +</li></ul> + +!! end + + +!! test +#sourceunit = #targetunit +!! input +*{{#convert: 25 km | #targetunit = #sourceunit }} +*{{#convert: 25 km | #sourceunit = #targetunit }} +!! result +<ul><li>25 kilometres +</li><li>25 kilometres +</li></ul> + +!! end + +!! test +#language +!! input +*{{#convert: 10 m | km | #language=en-gb }} +*{{#convert: 10m | km | #language = en }} +*{{#convert: 10 km | m |#language=en}} +*{{#convert: 10 Pa | mmHg | #language = fr }} +!! result +<ul><li>0.01 kilometres +</li><li>0.01kilometers +</li><li>10,000 meters +</li><li>0.1 millimètre de mercure +</li></ul> + +!! end + +!! test +Case sensitivity +!! input +*{{#convert: 10 mm | m }} +*{{#convert: 10 Mm | m }} +*{{#convert: 10 km | Mm }} +*{{#convert: 10 Pa | mmHg }} +*{{#convert: 10 pa | mmHg }} +!! result +<ul><li>0.01 metres +</li><li>10,000,000 metres +</li><li>0.01 megametres +</li><li>0.1 millimetres of mercury +</li><li><strong class="error">Error: unknown unit "pa"</strong> +</li></ul> + +!! end |