12345678910111213141516171819202122232425262728293031323334353637383940 |
- ;;;; syncase.test --- test suite for (ice-9 syncase) -*- scheme -*-
- ;;;;
- ;;;; Copyright (C) 2001, 2006 Free Software Foundation, Inc.
- ;;;;
- ;;;; This program is free software; you can redistribute it and/or modify
- ;;;; it under the terms of the GNU General Public License as published by
- ;;;; the Free Software Foundation; either version 2, or (at your option)
- ;;;; any later version.
- ;;;;
- ;;;; This program is distributed in the hope that it will be useful,
- ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
- ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ;;;; GNU General Public License for more details.
- ;;;;
- ;;;; You should have received a copy of the GNU General Public License
- ;;;; along with this software; see the file COPYING. If not, write to
- ;;;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- ;;;; Boston, MA 02110-1301 USA
- ;; These tests are in a module so that the syntax transformer does not
- ;; affect code outside of this file.
- ;;
- (define-module (test-suite test-syncase)
- :use-module (test-suite lib))
- (pass-if "(ice-9 syncase) loads"
- (false-if-exception
- (begin (eval '(use-syntax (ice-9 syncase)) (current-module))
- #t)))
- (define-syntax plus
- (syntax-rules ()
- ((plus x ...) (+ x ...))))
- (pass-if "basic syncase macro"
- (= (plus 1 2 3) (+ 1 2 3)))
- (pass-if "@ works with syncase"
- (eq? run-test (@ (test-suite lib) run-test)))
|