[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Code coverage
From: |
Jeremy Korwin-Zmijowski |
Subject: |
Re: Code coverage |
Date: |
Sat, 13 Apr 2019 16:52:03 +0200 |
Le vendredi 12 avril 2019 à 12:35 +0200, address@hidden a
écrit :
> Hello dear guilers !
>
> I have implemented a code coverage test with a piece of code I
> modified
> for my usage, here it is (filename : cybo-cov.scm):
>
> (use-modules (system vm coverage)
> (system vm vm)
> (srfi srfi-11))
>
> (let ((output-directory
> (string-append
> (getenv "HOME") "/Workspace/guile-cybo/coverage")))
> (let-values (((data . values)
> (with-code-coverage (the-vm)
> (lambda ()
> (load "cybo-test.scm")))))
> (let* ((port (mkstemp! (string-copy "/tmp/cybo-coverage-
> XXXXXX")))
> (file (port-filename port)))
> (coverage-data->lcov data port)
> (close port)
> (when (not (zero? (system* "genhtml" file "-o" output-
> directory)))
> (error "genhtml failed"))
> (delete-file file))))
>
> When I execute
>
> $ guile -L .
>
> then
>
> scheme@(guile-user)> (load "cybo-cov.scm")
>
> The report seems to cover my project and all Guile 2.0 code. I would
> like the test to focus on my project only.
> Does someone know how I can configure the test ?
>
> Thank you in advance for your help.
>
> Jeko
>
The code for Guile 2.2.3 is
(use-modules (system vm coverage)
(system vm vm)
(srfi srfi-11))
(let ((output-directory (string-append
(getenv "HOME")
"/Workspace/guile-cybo/coverage")))
(let-values (((data . values)
(with-code-coverage
(lambda ()
(load "cybo-test.scm")))))
(let* ((port (mkstemp! (string-copy "/tmp/cybo-coverage-XXXXXX")))
(file (port-filename port)))
(coverage-data->lcov data port)
(close port)
(when (not (zero? (system* "genhtml" file "-o" output-
directory)))
(error "genhtml failed"))
(delete-file file))))
Jeko
- Code coverage, jeremy, 2019/04/12
- Re: Code coverage,
Jeremy Korwin-Zmijowski <=