/[LeafOK_CVS]/lbbs/src/test_lml.c
ViewVC logotype

Annotation of /lbbs/src/test_lml.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.20 - (hide annotations)
Wed Oct 29 13:45:46 2025 UTC (4 months, 2 weeks ago) by sysadm
Branch: MAIN
Changes since 1.19: +3 -3 lines
Content type: text/x-csrc
Refine and bug fix

1 sysadm 1.1 /***************************************************************************
2 sysadm 1.17 test_lml.c - description
3 sysadm 1.1 -------------------
4     Copyright : (C) 2004-2025 by Leaflet
5     Email : leaflet@leafok.com
6     ***************************************************************************/
7    
8     /***************************************************************************
9     * *
10     * This program is free software; you can redistribute it and/or modify *
11     * it under the terms of the GNU General Public License as published by *
12     * the Free Software Foundation; either version 3 of the License, or *
13     * (at your option) any later version. *
14     * *
15     ***************************************************************************/
16    
17     #include "lml.h"
18     #include "log.h"
19 sysadm 1.9 #include <errno.h>
20 sysadm 1.1 #include <stdio.h>
21     #include <string.h>
22     #include <unistd.h>
23    
24 sysadm 1.8 #define STR_OUT_BUF_SIZE 256
25 sysadm 1.1
26     const char *str_in[] = {
27     "[left]ABCD[right]EFG",
28 sysadm 1.6 "A[u]B[italic]CD[/i]E[/u]F[b]G[/bold]",
29 sysadm 1.10 "A[url BC DE]测试a网址[/url]FG",
30 sysadm 1.2 "AB[email CDE]F[/eMAil]G01[emaiL]23456[/email]789",
31 sysadm 1.10 "A[user DE]BC[/User]FG",
32 sysadm 1.20 "[article A B CD]EF[ /article]G[article 789]123[/article]456",
33 sysadm 1.1 "A[ image BCD]EFG",
34     "AB[ Flash CDE ]FG",
35     "AB[bwf]CDEFG",
36     "[lef]A[rightBCD[right]EF[left[left[]G[left",
37 sysadm 1.3 "A[ color BCD]EF[/color]G[color black]0[/color][color magenta]1[color cyan]23[/color]4[color red]5[/color]6[color yellOw]7[/color]8[color green]9[color blue]0[/color]",
38 sysadm 1.4 "A[quote]B[quote]C[quote]D[quote]E[/quote]F[/quote]G[/quote]0[/quote]1[/quote]2[quote]3[/quote]4[/quote]56789",
39 sysadm 1.8 ": ABCDE[quote]FG\r\nab[/quote]cd[quote]ef[quote]g\r\n: : 012[/quote]345[/quote]6789\nABC[quote]DEFG",
40 sysadm 1.17 "\033[35mabc\033[m",
41 sysadm 1.8 "123456",
42 sysadm 1.13 "[color red]Red[/color][plain][color blue]Blue[/color][plain]",
43 sysadm 1.16 "[color yellow]Yellow[/color][nolml][left][color blue]Blue[/color][right][lml][color red]Red[/color]",
44 sysadm 1.18 "[abc][left ][ right ][ colory ][left \nABCD[left]EFG[right ",
45 sysadm 1.19 "ABCD]EFG"
46 sysadm 1.1 };
47    
48 sysadm 1.16 const int str_cnt = sizeof(str_in) / sizeof(const char *);
49 sysadm 1.1
50     int main(int argc, char *argv[])
51     {
52     char str_out_buf[STR_OUT_BUF_SIZE];
53     int i;
54     int j;
55    
56     if (log_begin("../log/bbsd.log", "../log/error.log") < 0)
57     {
58     printf("Open log error\n");
59     return -1;
60     }
61    
62 sysadm 1.7 log_common_redir(STDOUT_FILENO);
63     log_error_redir(STDERR_FILENO);
64 sysadm 1.1
65 sysadm 1.20 printf("Test #1: quote_mode = 0\n");
66 sysadm 1.1 for (i = 0; i < str_cnt; i++)
67     {
68 sysadm 1.14 j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 0);
69 sysadm 1.1
70     printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
71     }
72 sysadm 1.11 printf("Test #1: Done\n");
73    
74 sysadm 1.20 printf("Test #2: quote_mode = 1\n");
75 sysadm 1.11 for (i = 0; i < str_cnt; i++)
76     {
77 sysadm 1.14 j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 1);
78 sysadm 1.11
79     printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
80     }
81     printf("Test #2: Done\n");
82 sysadm 1.1
83     log_end();
84    
85     return 0;
86     }

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1