alias logx_maketests {
var %x 1
write -c logx_tests.txt
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)
write logx_tests.txt %base %result %power
inc %x
}
echo -a Wrote $({,%x) tests to logx_tests.txt ==> Use /logx_test to run these tests
}
alias logx_test {
var %x 1,%file logx_tests.txt,%errors 0
if (!$read(%file,1)) { echo 4 -a * Error: No tests found in logx_tests.txt. Use /logx_maketests to make the tests | return }
while ($read(%file,%x)) {
tokenize 32 $v1
if ($logx($1,$2) != $3) {
if (!$window(@logx_test)) window -ae @logx_test
echo 4 @logx_test * Error: $!logx( $+ $1 $+ , $+ $2 $+ ) returned $v1 - It should return $3
inc %errors
}
inc %x
}
echo $iif(%errors,4 @logx_test,3 -a) $!logx() tests completed with %errors errors
}