Adopted from InterSystems's %UnitTest.TestCase by logist (Dimas ltd., Russia) Adapted to Van Hoecke's needs by JCL and FMA Test case class. All test cases are derived from here. Every test method should start with prefix "Test". %outUnitTest,vhUnitTest,vhLib.Macro %outUnitTest,vhUnitTest 1 %RegisteredObject 62131,54184.589092 59429,64520.016065 0 vhUnitTest.Manager AManager %Status %Status %Status aTestName:%String %Status aTestName:%String %Status aAutoQuoted,aValue1,aValue2,aMessage %Boolean aAutoQuoted,aValue1,aValue2,aMessage %Boolean aAutoQuoted,aValue1,aValue2,aDifference,aMessage %Boolean (aDifference) Do manager.LogAssert(success,"AssertAlmostEquals",aMessage) Quit success ]]> aAutoQuoted,aValue,aMessage %Boolean aAutoQuoted,aValue,aMessage %Boolean aAutoQuoted,status,aMessage %Status "_$g(errorarray(1)) Do manager.LogAssert(success,"AssertStatusOK",aMessage) Quit success ]]> aAutoQuoted,status,aMessage %Status aMessage %Status aAutoQuoted,file1,file2,aMessage %Boolean message 1 argline:%String,type:%String 1 %String $l(argline) s c=$e(argline,i) d . i c="""" s q='q . i c="(" s p=p+1 . i c=")" s p=p-1 . i c=",",q=0,p=0 s args($increment(piece))=$e(argline,ptr,i-1),ptr=i+1 s args($increment(piece))=$e(argline,ptr,i-1) i type="expr" q $g(args(1)) i type="equals" q $g(args(1))_"=="_$g(args(2)) q "" ]]>