Modul:Coordinate/tests
Megjelenés
Coordinate modul tesztek[mi ez?]
Név | Várt | Tényleges | |
---|---|---|---|
![]() |
testCreate | ||
![]() |
testCoord | é. sz. 47,05, ny. h. 16,5 | é. sz. 47,05°, ny. h. 16,50°47.050000°N 16.500000°W |
![]() |
testFromString | ||
![]() |
testEquals | ||
![]() |
testNew | ||
![]() |
testFormat | 47,621667, 16,871528 | L, l |
local Coordinate = require('Modul:Coordinate')
local ScribuntoUnit = require('Modul:ScribuntoUnit')
local suite = ScribuntoUnit:new()
function suite:testCreate()
local lat, long = 47.498056, 19.038056
local coord = Coordinate.create(lat, long)
self:assertEquals(Coordinate, getmetatable(coord))
self:assertEquals(lat, coord.latitude)
self:assertEquals(long, coord.longitude)
end
function suite:testNew()
local lat, long = 47.498056, 19.038056
local coord = Coordinate:new{latitude = lat, longitude = long}
self:assertEquals(Coordinate, getmetatable(coord))
self:assertEquals(lat, coord.latitude)
self:assertEquals(long, coord.longitude)
self:assertEquals(nil, Coordinate:new{latitude = 47, longitude = 400})
end
function suite:testEquals()
local lat, long = 47.498056, 19.038056
local coord1 = Coordinate:new{latitude = lat, longitude = long}
local coord2 = Coordinate:new{latitude = lat, longitude = long}
self:assertTrue(coord1 == coord2)
end
function suite:testFormat()
local lat, long = 47.621667, 16.871528
local coord = Coordinate:new{latitude = lat, longitude = long}
self:assertEquals('47,621667, 16,871528', coord:format('L, l'))
self:assertEquals('É 47,621667°, K 16,871528°', coord:format('I L°, i l°'))
self:assertEquals('47° 37′ 18″ N, 16° 52′ 17.5″ E', coord:format('D° M′ S″ C, d° m′ s″ c'))
end
function suite:testFromString()
local coord1 = Coordinate:new{latitude = 47.621667, longitude = 16.871528}
local coord2 = Coordinate:new{latitude = 48.621667, longitude = 16.871528}
local coord3 = Coordinate:new{latitude = 49.621667, longitude = 16.871528}
self:assertEquals(coord1, Coordinate.fromString('47.621667, 16.871528'))
self:assertEquals(coord2, Coordinate.fromString('É 48,621667, K 16,871528'))
self:assertEquals(coord3, Coordinate.fromString('49° 37′ 18″ N, 16° 52′ 17.5″ E'))
self:assertEquals(nil, Coordinate.fromString('47, 400'))
end
function suite:testCoord()
local pageName = mw.uri.encode(mw.title.getCurrentTitle().prefixedText, 'WIKI')
local text = '<span class="plainlinks nourlexpansion">[//tools.wmflabs.org/geohack/geohack.php?language=hu' ..
'&pagename=' .. pageName .. '¶ms=47.05;-16.5_type:waterbody é. sz. 47,05, ny. h. 16,5]' ..
'<span style="display:none;" class="h-geo geo"><span class="p-latitude latitude">47.05</span>, ' ..
'<span class="p-longitude longitude">-16.5</span></span></span>'
self:assertEquals(text, Coordinate.coord{'47.05', '-16.5', 'type:waterbody'})
local text = '<span class="plainlinks nourlexpansion">[//tools.wmflabs.org/geohack/geohack.php?language=hu' ..
'&pagename=' .. pageName .. '¶ms=47_3_N_16_30_W é. sz. 47° 03′, ny. h. 16° 30′]' ..
'<span style="display:none;" class="h-geo geo"><span class="p-latitude latitude">47.05</span>, ' ..
'<span class="p-longitude longitude">-16.5</span></span></span>'
self:assertEquals(text, Coordinate.coord{'47.05', '-16.5', format = 'dms'})
end
return suite