Module:FarsiDate/testcases
لاسوند لپاره ددې موډيول کېدای سی په Module:FarsiDate/testcases/لاسوند کي وي
local p = require('Module:UnitTests')
local frame = mw.getCurrentFrame()
function p:testMain()
self:preprocess_equals('{{#invoke:FarsiDate|main|۱۳۹۷|۱|۱|solar}}', '۱ وری ۱۳۹۷')
self:preprocess_equals('{{#invoke:FarsiDate|main| ۱۳۹۷ | ۱ | ۱ | solar }}', '۱ وری ۱۳۹۷')
self:preprocess_equals('{{#invoke:FarsiDate|main| 1397 | 1 | 1 | solar }}', '۱ وری ۱۳۹۷')
self:preprocess_equals('{{#invoke:FarsiDate|main| 1397 | 1 | 1 | لمريز }}', '۱ وری ۱۳۹۷')
self:preprocess_equals('{{#invoke:FarsiDate|main| 1370| 10 | 10 | لمريز }}', '۱۰ دی ۱۳۷۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| ۲۰۰۰ | ۱ | ۱ }}', '۱ جنوري ۲۰۰۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| 2000 | 1 | 1 }}', '۱ جنوري ۲۰۰۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| 2000 | 01 | 01 }}', '۱ جنوري ۲۰۰۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| 2000 | 1 }}', 'جنوري ۲۰۰۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| 2000 |}}', '۲۰۰۰')
self:preprocess_equals('{{#invoke:FarsiDate|main| 2000 }}', '۲۰۰۰')
end
local function causesInvalidDateError(...)
local success, result = pcall(frame.callParserFunction, frame, '#invoke', 'FarsiDate', 'main', unpack(arg))
return result:match('.ليکل شوې نېټه ناسمه ده') and true or false
end
function p:testInvalidDates()
self:equals('all valid', causesInvalidDateError(' 2000 ', ' 01 ', ' 01 '), false)
self:equals('year only', causesInvalidDateError(' 2000 '), false)
self:equals('valid month, no day', causesInvalidDateError(' 2000 ' , '1'), false)
self:equals('invalid month, no day', causesInvalidDateError(' 2000 ', ' 00 '), true)
self:equals('valid month, invalid day', causesInvalidDateError(' 2000 ', ' 0 ', ' 00 '), true)
end
return p