词条 | Module:Protect/testcases |
释义 | local p = require('Module:UnitTests') local protect = require('Module:Protect') local o = {} function o.f1(a) if not a then error('missing argument') end return a end function o:f2(a) if not a then error('missing argument') end return a end function p:test_protect() self:equals( 'Keep location', protect(error, {removeLocation = false})('foo', 3), self.frame:preprocess('{{Error|Error: Module:Protect/testcases:22: foo}}') ) self:equals( '.', protect(o.f1)('Foo'), 'Foo' )
self:equals( '.', protect(o.f1)(o, 'Foo'), o )
self:equals( ':', protect(o.f2)('Foo'), self.frame:preprocess('{{Error|Error: missing argument}}') )
self:equals( ':', protect(o.f2)(o, 'Foo'), 'Foo' )
protect(o.f2) protect(o.f2) local a = o.f2 local b = o.f2 self:equals( 'Success', protect(mw.clone)('Foo'), 'Foo' )
self:equals( 'Default error', protect(error)('foo'), self.frame:preprocess('{{Error|Error: foo}}') )
self:equals( 'No caught message', protect(error)(), self.frame:preprocess('{{Error|Error: (no message)}}') )
self:equals( 'Custom errFormat', protect(error, 'Failure (%s)')('foo'), self.frame:preprocess('{{Error|Failure (foo)}}') )
self:equals( 'Raw errFormat', protect(error, {raw = true})('foo'), 'Error: foo' ) self:equals( 'Custom raw errFormat', protect(error, 'Failure (%s)', {raw = true})('foo'), 'Failure (foo)' )
self:equals( 'Remove location', protect(error)('foo', 3), self.frame:preprocess('{{Error|Error: foo}}') ) end return p |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。