Module:Coordinates/testcases
Appearance
From Wikipedia, the free encyclopedia
-- Unit tests for [[Module:Coordinates]]. Click talk page to run tests. localp=require('Module:UnitTests') functionp:test_coord() self:preprocess_equals_preprocess_many('{{#invoke:Coordinates/sandbox|coord|','}}', '{{#invoke:Coordinates|coord|','}}',{ -- First - the broken test cases {'-20.4|N|-20.4|E|name=Test case SW-1b: -20.4d N -20.4d E (-20.4, -20.4)','-20.4|N|-20.4|E|name=Test case SW-1b: -20.4d N -20.4d E (-20.4, -20.4)'}, {'-20|20|N|-20|20|E|name=Test case SW-2b: -20d 20m N -20d 20m E (-20.3333, -20.3333)','-20|20|N|-20|20|E|name=Test case SW-2b: -20d 20m N -20d 20m E (-20.3333, -20.3333)'}, {'-20||N|-20||E|name=Test case SW-2c: -20d N -20d E (-20, -20)','-20||N|-20||E|name=Test case SW-2c: -20d N -20d E (-20, -20)'}, {'-20|20|20|N|-20|20|20|E|name=Test case SW-3b: -20d 20m 20s N -20d 20m 20s E (-20.33889, -20.33889)','-20|20|20|N|-20|20|20|E|name=Test case SW-3b: -20d 20m 20s N -20d 20m 20s E (-20.33889, -20.33889)'}, {'-20||20|N|-20||20|E|name=Test case SW-3c: -20d 20s N -20d 20s E','-20||20|N|-20||20|E|name=Test case SW-3c: -20d 20s N -20d 20s E'}, {'-20|20||N|-20|20||E|name=Test case SW-3d: -20d 20m N -20d 20m E','-20|20||N|-20|20||E|name=Test case SW-3d: -20d 20m N -20d 20m E'}, {'-20|||N|-20|||E|name=Test case SW-3e: -20d N -20d E (-20, -20)','-20|||N|-20|||E|name=Test case SW-3e: -20d N -20d E (-20, -20)'}, {'-20.4|S|-20.4|W|name=Test case NE-1b: -20.4d S 20.4d W (20.4, 20.4) (rev.1)','-20.4|S|-20.4|W|name=Test case NE-1b: -20.4d S 20.4d W (20.4, 20.4) (rev.1)'}, {'-20|20|S|-20|20|W|name=Test case NE-2b: -20d 20m S -20d 20m W (20.3333, 20.3333)','-20|20|S|-20|20|W|name=Test case NE-2b: -20d 20m S -20d 20m W (20.3333, 20.3333)'}, {'-20|20|20|S|-20|20|20|W|name=Test case NE-3b: -20d 20m 20s S -20d 20m 20s W (20.33889, 20.33889)(rev.1)','-20|20|20|S|-20|20|20|W|name=Test case NE-3b: -20d 20m 20s S -20d 20m 20s W (20.33889, 20.33889)(rev.1)'}, {'20.4|S|180.4|W|name=Test case W>180: 20.4d S 180.4d W (-20.4, -180.4)','20.4|S|180.4|W|name=Test case W>180: 20.4d S 180.4d W (-20.4, -180.4)'}, {'20.4|N|180.4|E|name=Test case E>180: 20.4d N 180.4d E ( 20.4, 180.4)','20.4|N|180.4|E|name=Test case E>180: 20.4d N 180.4d E ( 20.4, 180.4)'}, {'90.1|1|name=Test case N>+90 dec','90.1|1|name=Test case N>+90 dec'}, {'-90.1|1|name=Test case N<-90 dec','-90.1|1|name=Test case N<-90 dec'}, {'1|360|name=Test case E>=+360 dec','1|360|name=Test case E>=+360 dec'}, {'1|-360|name=Test case E<=-360 dec','1|-360|name=Test case E<=-360 dec'}, {'90.1|S|1|W|name=Test case S>+90 d','90.1|S|1|W|name=Test case S>+90 d'}, {'90.1|N|1|E|name=Test case N>+90 d','90.1|N|1|E|name=Test case N>+90 d'}, {'-90.1|N|1|W|name=Test case N<-90 d','-90.1|N|1|W|name=Test case N<-90 d'}, {'1|N|360|W|name=Test case W>=+360 d','1|N|360|W|name=Test case W>=+360 d'}, {'1|N|-360|E|name=Test case E<=-360 d','1|N|-360|E|name=Test case E<=-360 d'}, {'91|0|N|1|2|E|name=Test case dN>+90 dm','91|0|N|1|2|E|name=Test case dN>+90 dm'}, {'-91|0|N|1|2|E|name=Test case dN<-90 dm','-91|0|N|1|2|E|name=Test case dN<-90 dm'}, {'1|2|S|360|0|E|name=Test case dE>=+360 dm','1|2|S|360|0|E|name=Test case dE>=+360 dm'}, {'1|2|S|-360|0|E|name=Test case dE<=-360 dm','1|2|S|-360|0|E|name=Test case dE<=-360 dm'}, {'1|60|S|2|3|W|name=Test case mS>=60 dm','1|60|S|2|3|W|name=Test case mS>=60 dm'}, {'1|-1|S|2|3|W|name=Test case mS<0 dm','1|-1|S|2|3|W|name=Test case mS<0 dm'}, {'1|2|S|3|60|W|name=Test case mW>=60 dm','1|2|S|3|60|W|name=Test case mW>=60 dm'}, {'1|2|S|3|-1|W|name=Test case mW<0 dm','1|2|S|3|-1|W|name=Test case mW<0 dm'}, {'91|0|0|N|1|2|3|E|name=Test case dN>+90 dms','91|0|0|N|1|2|3|E|name=Test case dN>+90 dms'}, {'-91|0|0|N|1|2|3|E|name=Test case dN<-90 dms','-91|0|0|N|1|2|3|E|name=Test case dN<-90 dms'}, {'1|2|3|S|360|0|0|E|name=Test case dE>=+360 dms','1|2|3|S|360|0|0|E|name=Test case dE>=+360 dms'}, {'1|2|3|S|-360|0|0|E|name=Test case dE<=-360 dms','1|2|3|S|-360|0|0|E|name=Test case dE<=-360 dms'}, {'1|60|0|S|2|3|4|W|name=Test case mS>=60 dms','1|60|0|S|2|3|4|W|name=Test case mS>=60 dms'}, {'1|-1|2|S|3|4|5|W|name=Test case mS<0 dms','1|-1|2|S|3|4|5|W|name=Test case mS<0 dms'}, {'1|2|3|S|4|60|0|W|name=Test case mW>=60 dms','1|2|3|S|4|60|0|W|name=Test case mW>=60 dms'}, {'1|2|3|S|4|-1|5|W|name=Test case mW<0 dms','1|2|3|S|4|-1|5|W|name=Test case mW<0 dms'}, {'1|2|60|S|3|4|5|W|name=Test case sS>=60 dms','1|2|60|S|3|4|5|W|name=Test case sS>=60 dms'}, {'1|2|-1|S|3|4|5|W|name=Test case sS<0 dms','1|2|-1|S|3|4|5|W|name=Test case sS<0 dms'}, {'1|2|3|S|3|4|60|W|name=Test case sW>=60 dms','1|2|3|S|3|4|60|W|name=Test case sW>=60 dms'}, {'1|2|3|S|3|4|-1|W|name=Test case sW<0 dms','1|2|3|S|3|4|-1|W|name=Test case sW<0 dms'}, {'',''}, {'|-2','|-2'}, {'1|','1|'}, {'1|N||W','1|N||W'}, {'1|2|N||4|W','1|2|N||4|W'}, {'1|2|3|N||5|6|W','1|2|3|N||5|6|W'}, -- Good test cases {'57|18|22|N|4|27|32|W','57|18|22|N|4|27|32|W'}, {'44.112|N|87.913|W','44.112|N|87.913|W'}, {'44.112|-87.913','44.112|-87.913'}, {'44.117|-87.913|dim:30_region:US-WI_type:landmark|name=Klann Road','44.117|-87.913|dim:30_region:US-WI_type:landmark|name=Klann Road'}, {'10.2|-20.3|display=inline','10.2|-20.3|display=inline'}, {'10.2|-20.3','10.2|-20.3'}, {'44.4|-111.1|type:city_region:US','44.4|-111.1|type:city_region:US'}, {'51.01234|-1.56789|type:landmark_region:GB','51.01234|-1.56789|type:landmark_region:GB'}, {'-35.5|150.1|type:landmark_region:AU','-35.5|150.1|type:landmark_region:AU'}, {'12|34|12|N|45|33|45|W','12|34|12|N|45|33|45|W'}, {'43.651234|-79.383333','43.651234|-79.383333'}, {'43.65|-79.38','43.65|-79.38'}, {'43.6500|-79.3800','43.6500|-79.3800'}, {'-43.6500|79.3800','-43.6500|79.3800'}, {'43.651234|N|79.383333|W','43.651234|N|79.383333|W'}, {'43|29|N|79|23|W','43|29|N|79|23|W'}, {'43|29|4|N|79|23|0|W','43|29|4|N|79|23|0|W'}, {'43|29|4.5|N|79|23|0.5|W','43|29|4.5|N|79|23|0.5|W'}, {'55.752222|N|37.615556|E','55.752222|N|37.615556|E'}, {'55.752222|N|37.615556|E|format=dms','55.752222|N|37.615556|E|format=dms'}, {'39.098095|-94.587307|format=dms','39.098095|-94.587307|format=dms'}, {'55.752222|N|37.615556|E|format=dec|name=Moscow','55.752222|N|37.615556|E|format=dec|name=Moscow'}, {'33|55|S|18|25|E','33|55|S|18|25|E'}, {'35|00|N|105|00|E','35|00|N|105|00|E'}, {'22|54|30|S|43|14|37|W','22|54|30|S|43|14|37|W'}, {'22|S|43|W','22|S|43|W'}, {'52|28|59|N|1|53|37|W|display=inline,title|region:GB_type:city','52|28|59|N|1|53|37|W|display=inline,title|region:GB_type:city'}, {'46|43|N|7|58|E|type:mountain','46|43|N|7|58|E|type:mountain'}, {'51.500611|N|0.124611|W|scale:1000','51.500611|N|0.124611|W|scale:1000'}, {'51.500611|N|0.124611|W|scale:10000','51.500611|N|0.124611|W|scale:10000'}, {'51.500611|N|0.124611|W|scale:100000','51.500611|N|0.124611|W|scale:100000'}, {'51.500611|N|0.124611|W|scale:1000000','51.500611|N|0.124611|W|scale:1000000'}, {'0|N|90|W|dim:10000000','0|N|90|W|dim:10000000'}, {'40.5|-82.5|dim:400000','40.5|-82.5|dim:400000'}, {'51.033|13.73|dim:20000','51.033|13.73|dim:20000'}, {'40.6892|-74.0445|dim:100','40.6892|-74.0445|dim:100'}, {'45.516194|-122.673226|dim:0.6','45.516194|-122.673226|dim:0.6'}, {'46.9524|N|7.4396|E|region:CH','46.9524|N|7.4396|E|region:CH'}, {'52.5164|N|13.3775|E|region:DE-BE','52.5164|N|13.3775|E|region:DE-BE'}, {'0|40|26.69|N|23|28|22.69|E|globe:moon','0|40|26.69|N|23|28|22.69|E|globe:moon'}, {'48.269|N|225.990|W|globe:mars','48.269|N|225.990|W|globe:mars'}, {'7.5|S|303|E|globe:venus','7.5|S|303|E|globe:venus'}, {'8|N|190.5|W|globe:mercury','8|N|190.5|W|globe:mercury'}, {'52.5164|N|13.3775|E|region:DE-BE','52.5164|N|13.3775|E|region:DE-BE'}, {'20.4|S|20.4|W|name=Test case SW-1a: 20.4d S 20.4d W (-20.4, -20.4)','20.4|S|20.4|W|name=Test case SW-1a: 20.4d S 20.4d W (-20.4, -20.4)'}, {'-20.4|-20.4|name=Test case SW-1c: -20.4d -20.4d (-20.4, -20.4)','-20.4|-20.4|name=Test case SW-1c: -20.4d -20.4d (-20.4, -20.4)'}, {'20|20|S|20|20|W|name=Test case SW-2a: 20d 20m S 20d 20m W (-20.3333, -20.3333)','20|20|S|20|20|W|name=Test case SW-2a: 20d 20m S 20d 20m W (-20.3333, -20.3333)'}, {'20|20|20|S|20|20|20|W|name=Test case SW-3a: 20d 20m 20s S 20d 20m 20s W (-20.33889, -20.33889)','20|20|20|S|20|20|20|W|name=Test case SW-3a: 20d 20m 20s S 20d 20m 20s W (-20.33889, -20.33889)'}, {'20.4|N|20.4|E|name=Test case NE-1a: 20.4d N 20.4d E (20.4, 20.4)','20.4|N|20.4|E|name=Test case NE-1a: 20.4d N 20.4d E (20.4, 20.4)'}, {'20.4|20.4|name=Test case NE-1c: 20.4d 20.4d (20.4, 20.4) (rev.1)','20.4|20.4|name=Test case NE-1c: 20.4d 20.4d (20.4, 20.4) (rev.1)'}, {'20|20|N|20|20|E|name=Test case NE-2a: 20d 20m N 20d 20m E (20.3333, 20.3333)','20|20|N|20|20|E|name=Test case NE-2a: 20d 20m N 20d 20m E (20.3333, 20.3333)'}, {'20|20|20|N|20|20|20|E|name=Test case NE-3a: 20d 20m 20s N 20d 20m 20s E (20.33889, 20.33889) (rev.1)','20|20|20|N|20|20|20|E|name=Test case NE-3a: 20d 20m 20s N 20d 20m 20s E (20.33889, 20.33889) (rev.1)'}, {'1|2|dim=10000|name=Test case dim= dec','1|2|dim=10000|name=Test case dim= dec'}, {'1|2|globe=moon|name=Test case globe= dec','1|2|globe=moon|name=Test case globe= dec'}, {'1|2|region=CA-QC|name=Test case region= dec','1|2|region=CA-QC|name=Test case region= dec'}, {'1|2|scale=100000|name=Test case scale= dec','1|2|scale=100000|name=Test case scale= dec'}, {'1|2|source=gnis|name=Test case source= dec','1|2|source=gnis|name=Test case source= dec'}, {'1|2|type=city|name=Test case type= dec','1|2|type=city|name=Test case type= dec'}, {'1|S|2|W|type:city|region:XZ|name=Test case extra d','1|S|2|W|type:city|region:XZ|name=Test case extra d'}, {'1|2|S|3|4|W|type:city|region:XZ|name=Test case extra dm','1|2|S|3|4|W|type:city|region:XZ|name=Test case extra dm'}, {'1|2|3|S|3|4|5|W|type:city|region:XZ|name=Test case extra dms','1|2|3|S|3|4|5|W|type:city|region:XZ|name=Test case extra dms'}, {'1|2|3|4','1|2|3|4'}, {'1|2|3|E|4|5|6|N','1|2|3|E|4|5|6|N'}, {'1|2|E|3|4|N','1|2|E|3|4|N'}, {'1||N|3||E|name=Test case DM blank M','1||N|3||E|name=Test case DM blank M'}, {'1|2||N|5|6||E|name=Test case DMS blank S','1|2||N|5|6||E|name=Test case DMS blank S'}, {'1|||N|5|||E|name=Test case DMS blank M and S','1|||N|5|||E|name=Test case DMS blank M and S'}, {'1|2|dispenser=|name=Test case DMS blank M and S','1|2|dispenser=|name=Test case DMS blank M and S'}, {'1|2|dispenser=|name=Test case with JSON"}HOI','1|2|dispenser=|name=Test case with JSON"}HOI'}, {' 51 | 02 | 21 |N| 116 | 26 | 34 |W|name=Test case extra blanks',' 51 | 02 | 21 |N| 116 | 26 | 34 |W|name=Test case extra blanks'}, {'0|0|N|0|0|E','0|0|N|0|0|E'}, {'0|0|0|N|0|0|0|E','0|0|0|N|0|0|0|E'}, {'0|0|N|180|0|E','0|0|N|180|0|E'}, {'0|0|0|N|180|0|0|E','0|0|0|N|180|0|0|E'}, {'0|59|N|179|59|W','0|59|N|179|59|W'}, {'0|59|59|S|179|59|59|W','0|59|59|S|179|59|59|W'}, {'44.112|N|.913|W','44.112|N|.913|W'}, {'44.112|N|0.913|W','44.112|N|0.913|W'}, {'12|15|30|S|123|02|30|E|type:waterbody_region:AU','12|15|30|S|123|02|30|E|type:waterbody_region:AU'}, {'58|35|21.00|N|16|10|48.20|E|display=title|region:SE-E_type:landmark','58|35|21.00|N|16|10|48.20|E|display=title|region:SE-E_type:landmark'}, {'52|22|22|N|04|53|37|E|region:NL','52|22|22|N|04|53|37|E|region:NL'}, {'55|59|30|N|114|22|36|W|type:adm1st_scale:30000000_region:CA-AB','55|59|30|N|114|22|36|W|type:adm1st_scale:30000000_region:CA-AB'}, {'37|-120|dim:600000_region:US-CA_type:adm1st','37|-120|dim:600000_region:US-CA_type:adm1st'}, {'37|-120|notes=<ref>test</ref>','37|-120|notes=<ref>test</ref>'} },{stripmarker=1}) end functionp:test_coordinsert() self:preprocess_equals_preprocess_many('{{#invoke:Coordinates/sandbox|coordinsert|','}}', '{{#invoke:Coordinates|coordinsert|','}}',{ {'{{Coord/sandbox|57|18|22|N|4|27|32|E}}|type:city|name:Testcase','{{Coord|57|18|22|N|4|27|32|E}}|type:city|name:Testcase'}, {'{{Coord/sandbox|38|43|22|N|9|8|32|W|display=title}}|type:city|name:Testcase','{{Coord|38|43|22|N|9|8|32|W|display=title}}|type:city|name:Testcase'}, },{stripmarker=1}) end functionp:test_coord2text() self:preprocess_equals_preprocess_many('{{#invoke:Coordinates/sandbox|coord2text|','}}', '{{#invoke:Coordinates|coord2text|','}}',{ {'{{Coord/sandbox|57|18|22|N|4|27|32|E|display=inline}}|lat','{{Coord|57|18|22|N|4|27|32|E|display=inline}}|lat'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|E|display=inline}}|long','{{Coord|57|18|22|N|4|27|32|E|display=inline}}|long'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|E|display=title}}|lat','{{Coord|57|18|22|N|4|27|32|E|display=title}}|lat'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|E|display=title}}|long','{{Coord|57|18|22|N|4|27|32|E|display=title}}|long'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|W|display=inline}}|lat','{{Coord|57|18|22|N|4|27|32|W|display=inline}}|lat'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|W|display=inline}}|long','{{Coord|57|18|22|N|4|27|32|W|display=inline}}|long'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|W|display=title}}|lat','{{Coord|57|18|22|N|4|27|32|W|display=title}}|lat'}, {'{{Coord/sandbox|57|18|22|N|4|27|32|W|display=title}}|long','{{Coord|57|18|22|N|4|27|32|W|display=title}}|long'}, {'{{Coord/sandbox|38.22|S|4.2732|E|display=inline}}|lat','{{Coord|38.22|S|4.2732|E|display=inline}}|lat'}, {'{{Coord/sandbox|38.22|S|4.2732|E|display=inline}}|long','{{Coord|38.22|S|4.2732|E|display=inline}}|long'}, {'{{Coord/sandbox|38.22|S|4.2732|E|display=title}}|lat','{{Coord|38.22|S|4.2732|E|display=title}}|lat'}, {'{{Coord/sandbox|38.22|S|4.2732|E|display=title}}|long','{{Coord|38.22|S|4.2732|E|display=title}}|long'}, {'{{Coord/sandbox|44.112|N|.913|W|display=title}}|long','{{Coord|44.112|N|.913|W|display=title}}|long'}, {'{{Coord/sandbox|44.112|N|0.913|W|display=title}}|long','{{Coord|44.112|N|0.913|W|display=title}}|long'}, {'{{Coord/sandbox|48.269|N|225.990|W|globe:mars}}|long','{{Coord/sandbox|48.269|N|225.990|W|globe:mars}}|long'}, },{stripmarker=1}) end functionp:test_integration() self:preprocess_equals_preprocess_many('','','','',{ {'{{maplink|type=point|coord={{Coord|52|28|59|N|1|53|37|W}}}}','{{maplink|type=point|coord={{Coord/sandbox|52|28|59|N|1|53|37|W}}}}'}, {'{{maplink|type=point|coord={{Coord|52|28|59|N|1|53|37|W|display=t}}}}','{{maplink|type=point|coord={{Coord/sandbox|52|28|59|N|1|53|37|W|display=t}}}}'} },{stripmarker=1}) end returnp