diff options
author | Ludovic Courtès <ludo@gnu.org> | 2011-10-15 16:46:29 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2011-10-15 16:46:29 +0200 |
commit | 7c42e426dcf621af0d375ef27d5144efaf33fef6 (patch) | |
tree | 429c6d6ad88167c0c4191f0350e257f85596fcbf /test-suite/tests/coverage.test | |
parent | c7519da3eaef6cf6d862a87e2d050766eb6c4388 (diff) | |
download | guile-7c42e426dcf621af0d375ef27d5144efaf33fef6.tar.gz |
coverage: Add test with `eval'.
* test-suite/tests/coverage.test (test-procedure): New procedure.
("procedure-execution-count")["called from eval"]: New test.
Diffstat (limited to 'test-suite/tests/coverage.test')
-rw-r--r-- | test-suite/tests/coverage.test | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/test-suite/tests/coverage.test b/test-suite/tests/coverage.test index 6869a3a62..7e38dafb9 100644 --- a/test-suite/tests/coverage.test +++ b/test-suite/tests/coverage.test @@ -1,6 +1,6 @@ ;;;; coverage.test --- Code coverage. -*- mode: scheme; coding: utf-8; -*- ;;;; -;;;; Copyright (C) 2010 Free Software Foundation, Inc. +;;;; Copyright (C) 2010, 2011 Free Software Foundation, Inc. ;;;; ;;;; This library is free software; you can redistribute it and/or ;;;; modify it under the terms of the GNU Lesser General Public @@ -35,6 +35,12 @@ (define %test-vm (make-vm)) +(define test-procedure + (compile '(lambda (x) + (if (> x 2) + (- x 2) + (+ x 2))))) + (with-test-prefix "instrumented/executed-lines" @@ -204,7 +210,16 @@ (make-pointer (object-address 2))))))) (and (coverage-data? data) (= (object-address 3) (pointer-address result)) - (= (procedure-execution-count data proc) 1)))))) + (= (procedure-execution-count data proc) 1))))) + + (pass-if "called from eval" + (let-values (((data result) + (with-code-coverage %test-vm + (lambda () + (eval '(test-procedure 123) (current-module)))))) + (and (coverage-data? data) + (= (test-procedure 123) result) + (= (procedure-execution-count data test-procedure) 1))))) (with-test-prefix "instrumented-source-files" |