(define-module (tests serializers ini-test) #:use-module (srfi srfi-64) ;; #:use-module (tests runner) ) ;; https://rednosehacker.com/hall-a-project-manager-for-the-guile-programming-language (module-define! (resolve-module '(srfi srfi-64)) 'test-log-to-file #f) (use-modules (ice-9 pretty-print)) (define (test-runner-ok) (let ((runner (test-runner-null))) (test-runner-on-group-begin! runner (lambda (runner name count) (format #t "Test group: ~a\n\n" name))) (test-runner-on-test-end! runner (lambda (runner) (format #t "[~a] ~a\n" (test-result-ref runner 'result-kind) (if (test-result-ref runner 'test-name) (test-runner-test-name runner) "<>")) (case (test-result-kind runner) ((fail xfail) (if (test-result-ref runner 'expected-value) (format #t "~a:~a\n -> expected: ~s\n -> obtained: ~s\n\n" (test-result-ref runner 'source-file) (test-result-ref runner 'source-line) (test-result-ref runner 'expected-value) (test-result-ref runner 'actual-value)))) (else #t)))) (test-runner-on-final! runner (lambda (runner) (format #t "Source: ~a\npass = ~a, fail = ~a\n\n" (test-result-ref runner 'source-file) (test-runner-pass-count runner) (test-runner-fail-count runner)))) runner)) (test-runner-factory test-runner-ok) ;; (test-runner-factory test-runner-simple) ;; https://www.mail-archive.com/geiser-users%40nongnu.org/msg00323.html ;; https://rednosehacker.com/revisiting-guile-xunit ;; Test runners: ;; https://github.com/aconchillo/guile-json/blob/master/tests/runner.scm ;; https://luis-felipe.gitlab.io/guile-proba/ ;; https://git.systemreboot.net/run64/tree/bin/run64 (let ((%test-name "Object to string")) (test-begin %test-name) (test-equal "case1" "12345" (object->string 12345)) (test-equal "12345" (object->string 12345)) (test-equal "case2" "12346" (object->string 12345)) (test-equal "case3" "12346" (object->string 12345)) (test-end %test-name)) ;; (let ((%test-name "Number ato string")) ;; (test-begin %test-name) ;; (test-equal "12345" (number->string 12345)) ;; (test-equal "12346" (number->string 12345)) ;; (test-equal "12346" (number->string 12345)) ;; (test-end %test-name))