Modul:CSV/tesztdoboz

A Wikipédiából, a szabad enciklopédiából

CSV/tesztdoboz[mi ez?] • [dokumentáció: mutat, szerkeszt] • [tesztek: létrehozás]

-- Modul:CSV/tesztdoboz
-- Example Unit tests for [[Modul:Banánok]]. Click talk page to run tests.

local p = require('Modul:UnitTesztek')
local CSV = require('Modul:CSV')
 
local function test(name, csvString, opts, expected)
    p:equals_deep(name, CSV.parse(csvString, opts), expected, {nowiki = true})
end
 
function p:test_all()
    test('Egészek', '1,2,3\n4,5,6\n7,8,9', nil, {{'1','2','3'}, {'4','5','6'}, {'7','8','9'}})
    test('Karaktersor', 'Lorem,ipsum,dolor,sit\namet,consectetur\nadipisicing,elit,sed,do,eiusmod', nil, {{'Lorem','ipsum','dolor','sit'}, {'amet','consectetur'}, {'adipisicing','elit','sed','do','eiusmod'}})
    test('Idézett karaktersor', 'Lorem,"ipsum, dolor, sit",amet\nConsectetur,adipisicing,"elit, sed,",eiusmod', nil, {{'Lorem','ipsum, dolor, sit','amet'},{'Consectetur','adipisicing','elit, sed,','eiusmod'}})
    test('Üres mező', '1,2,,3', nil, {{'1', '2', '', '3'}})
    test('Üres mező nyomkövetés', '1,2,3,', nil, {{'1', '2', '3', ''}})
    -- times out: test('Leading empty field', ',1,2,3', nil, {{'', '1', '2', '3'}})
    test('Üres rekord (ignoráld)', '1,2,3\n\n4,5,6', nil, {{'1','2','3'},{'4','5','6'}})
    test('Üres rekord (ne ignoráld)', '1,2,3\n\n4,5,6', {ignoreEmptyLines = false}, {{'1','2','3'},{''},{'4','5','6'}})
    test('Eszképes idézőjel', '1,\"2\"\"3\",4', nil, {{'1', '2"3', '4'}})
    test('Specifikált elhatároló', '1;2;3\n4;5;6', {delimiter = ';'}, {{'1','2','3'},{'4','5','6'}})
    test('Specifikált sortörés', '1,2,3/4,5,6', {linebreak = '/'}, {{'1','2','3'},{'4','5','6'}})
    test('Specifikált idézőjel', '1,`2,3`,4', {quotechar = '`'}, {{'1', '2,3', '4'}})
    test('Mezőn belül sortörés', '1,"2\n3",4', nil, {{'1', '2\n3', '4'}})
end
 
return p