Change Guile license to LGPLv3+
[bpt/guile.git] / test-suite / standalone / test-list.c
1 /* test-list.c - exercise libguile/list.c functions */
2
3 /* Copyright (C) 2006, 2008 Free Software Foundation, Inc.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public License
7 * as published by the Free Software Foundation; either version 3 of
8 * the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18 * 02110-1301 USA
19 */
20
21 #ifndef HAVE_CONFIG_H
22 # include <config.h>
23 #endif
24
25 #include <libguile.h>
26
27 #include <stdio.h>
28 #include <assert.h>
29 #include <string.h>
30
31 /* pretty trivial, but ensure this entrypoint exists, since it was
32 documented in Guile 1.6 and earlier */
33 static void
34 test_scm_list (void)
35 {
36 {
37 if (! scm_is_eq (SCM_EOL, scm_list (SCM_EOL)))
38 {
39 fprintf (stderr, "fail: scm_list SCM_EOL\n");
40 exit (1);
41 }
42 }
43
44 {
45 SCM lst = scm_list_2 (scm_from_int (1), scm_from_int (2));
46 if (! scm_is_true (scm_equal_p (lst, scm_list (lst))))
47 {
48 fprintf (stderr, "fail: scm_list '(1 2)\n");
49 exit (1);
50 }
51 }
52 }
53
54 static void
55 tests (void *data, int argc, char **argv)
56 {
57 test_scm_list ();
58 }
59
60 int
61 main (int argc, char *argv[])
62 {
63 scm_boot_guile (argc, argv, tests, NULL);
64 return 0;
65 }