alias logx_maketests { var %x 1 if ($hget(logx_tests)) hfree logx_tests echo $color(info) -ta * Generating logx tests - please wait... while (%x <= 100) { var %base $r(2,10),%power $r(1,99999) / 10000,%result $calc(%base ^ %power) while ($len(%result) > 6) var %base $r(2,10),%power $r(1,99999) / 10000,%result $calc(%base ^ %power) hadd -m logx_tests %x %base %result %power inc %x } echo $color(info) -ta * Created $({,%x) $!logx() tests. Use /logx_test to run these tests } alias logx_test { var %x 1,%table logx_tests,%errors 0,%ticks $ticks if (!$hget(%table,1)) { echo 4 -ta * Error: No tests found. Use /logx_maketests to make the tests | return } while ($hget(%table,%x)) { tokenize 32 $v1 if ($logx($1,$2) != $3) { if (!$window(@logx_test)) window -ae @logx_test echo 4 -t @logx_test * Error: $!logx( $+ $1 $+ , $+ $2 $+ ) returned $v1 - It should return $3 inc %errors } inc %x } echo $iif(%errors,4 -t @logx_test,3 -ta) 100 $!logx() tests completed with %errors errors in $calc($ticks - %ticks) ms }