Commit | Line | Data |
---|---|---|
025f75b4 MV |
1 | ;;;; format.test --- test suite for Guile's CL-ish format -*- scheme -*- |
2 | ;;;; Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de> --- June 2001 | |
3 | ;;;; | |
6c61859f | 4 | ;;;; Copyright (C) 2001, 2003 Free Software Foundation, Inc. |
025f75b4 MV |
5 | ;;;; |
6 | ;;;; This program is free software; you can redistribute it and/or modify | |
7 | ;;;; it under the terms of the GNU General Public License as published by | |
8 | ;;;; the Free Software Foundation; either version 2, or (at your option) | |
9 | ;;;; any later version. | |
10 | ;;;; | |
11 | ;;;; This program is distributed in the hope that it will be useful, | |
12 | ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | ;;;; GNU General Public License for more details. | |
15 | ;;;; | |
16 | ;;;; You should have received a copy of the GNU General Public License | |
17 | ;;;; along with this software; see the file COPYING. If not, write to | |
18 | ;;;; the Free Software Foundation, Inc., 59 Temple Place, Suite 330, | |
19 | ;;;; Boston, MA 02111-1307 USA | |
20 | ||
21 | (use-modules (test-suite lib) | |
22 | (ice-9 format)) | |
23 | ||
24 | ;;; FORMAT Basic Output | |
25 | ||
26 | (with-test-prefix "format basic output" | |
27 | (pass-if "format ~% produces a new line" | |
28 | (string=? (format "~%") "\n")) | |
29 | (pass-if "format ~& starts a fresh line" | |
30 | (string=? (format "~&abc~&~&") "abc\n")) | |
31 | (pass-if "format ~& is stateless but works properly across outputs via port-column" | |
32 | (string=? | |
33 | (with-output-to-string | |
34 | (lambda () | |
35 | (display "xyz") | |
36 | (format #t "~&abc") | |
37 | (format #f "~&") ; shall have no effect | |
38 | (format #t "~&~&"))) | |
6c61859f MV |
39 | "xyz\nabc\n")) |
40 | (pass-if "format ~F (format-out-substr) maintains the column correctly" | |
41 | (= (string-length (format "~@F~20T" 1)) 20))) |