Skip to content
Snippets Groups Projects
Commit fb83dd42 authored by Karsten Poeck's avatar Karsten Poeck
Browse files

pass parameters via environment

parent e66024cb
No related branches found
No related tags found
No related merge requests found
...@@ -51,18 +51,41 @@ test-types shows the error for every pair ...@@ -51,18 +51,41 @@ test-types shows the error for every pair
|# |#
(in-package :cl-test) (in-package :cl-test)
(let ((*random-state* (make-random-state t))) #+asdf
(handler-bind ((style-warning #'muffle-warning)) (defun get-env-parameter (parameter)
(test-random-integer-forms 4 4 10000))) (uiop:getenv parameter))
#+no #-asdf
(let ((failures (test-random-mutated-types 30000 10 :reps 2))) (defun get-env-parameter (parameter)
(when failures #+(or abcl clasp clisp ecl xcl) (ext:getenv parameter)
(mapcar #'prune-type-pair failures))) #+sbcl (sb-ext:posix-getenv parameter)
#+clozure (ccl:getenv parameter)
)
(defun get-env-parameter-as-number (parameter)
(let ((value (get-env-parameter parameter)))
(if value
(parse-integer value)
nil)))
(let* ((default-size 20)
(default-variables 4)
(default-iterations 10000)
(actual-size (or (get-env-parameter-as-number "random_int_size") default-size))
(actual-variables (or (get-env-parameter-as-number "random_int_variables") default-variables))
(actual-iterations (or (get-env-parameter-as-number "random_int_iterations") default-iterations))
(*random-state* (make-random-state t)))
(handler-bind ((style-warning #'muffle-warning))
(format t "Running test-random-integer-forms with size: ~a variables: ~a iterations: ~a on implementation ~a ~%"
actual-size actual-variables actual-iterations (lisp-implementation-type))
(test-random-integer-forms actual-size actual-variables actual-iterations)))
#| #|
4) Additional testing can be done with test-types and test-type-triples. The latter has its own pruner, prune-type-triple. 4) Additional testing can be done with test-types and test-type-triples. The latter has its own pruner, prune-type-triple.
(let ((failures (test-random-mutated-types 30000 10 :reps 2)))
(when failures
(mapcar #'prune-type-pair failures)))
(let ((failures (test-random-types 30000 10))) (let ((failures (test-random-types 30000 10)))
(when failures (when failures
...@@ -71,15 +94,4 @@ test-types shows the error for every pair ...@@ -71,15 +94,4 @@ test-types shows the error for every pair
(let ((failures (test-random-types3 30000 10))) (let ((failures (test-random-types3 30000 10)))
(when failures (when failures
(mapcar #'prune-type-triple failures))) (mapcar #'prune-type-triple failures)))
Bonus: The well known random tester
(let ((*random-state* (make-random-state t)))
(handler-bind ((style-warning #'muffle-warning))
(test-random-integer-forms 10 4 10000)))
(time
(let ((*random-state* (make-random-state t)))
(handler-bind ((style-warning #'muffle-warning))
(cl-test::test-random-integer-forms 30 4 10000))))
|# |#
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment