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

Contents of /lbbs/src/test_lml.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.13 - (show annotations)
Sun Oct 5 07:38:51 2025 UTC (5 months, 1 week ago) by sysadm
Branch: MAIN
Changes since 1.12: +2 -1 lines
Content type: text/x-csrc
Allow disable LML with "[plain]" tag by user

1 /***************************************************************************
2 test_lml.c - description
3 -------------------
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 #include <errno.h>
20 #include <stdio.h>
21 #include <string.h>
22 #include <unistd.h>
23
24 #define STR_OUT_BUF_SIZE 256
25
26 const char *str_in[] = {
27 "[left]ABCD[right]EFG",
28 "A[u]B[italic]CD[/i]E[/u]F[b]G[/bold]",
29 "A[url BC DE]测试a网址[/url]FG",
30 "AB[email CDE]F[/eMAil]G01[emaiL]23456[/email]789",
31 "A[user DE]BC[/User]FG",
32 "[article A B CD]EF[ /article]G",
33 "A[ image BCD]EFG",
34 "AB[ Flash CDE ]FG",
35 "AB[bwf]CDEFG",
36 "[lef]A[rightBCD[right]EF[left[left[]G[left",
37 "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 "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 ": ABCDE[quote]FG\r\nab[/quote]cd[quote]ef[quote]g\r\n: : 012[/quote]345[/quote]6789\nABC[quote]DEFG",
40 "abc",
41 "123456",
42 "[color red]Red[/color][plain][color blue]Blue[/color][plain]",
43 };
44
45 int str_cnt = 16;
46
47 int main(int argc, char *argv[])
48 {
49 char str_out_buf[STR_OUT_BUF_SIZE];
50 int i;
51 int j;
52
53 if (log_begin("../log/bbsd.log", "../log/error.log") < 0)
54 {
55 printf("Open log error\n");
56 return -1;
57 }
58
59 log_common_redir(STDOUT_FILENO);
60 log_error_redir(STDERR_FILENO);
61
62 printf("Test #1: lml_tag = 1\n");
63 for (i = 0; i < str_cnt; i++)
64 {
65 j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 1);
66
67 printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
68 }
69 printf("Test #1: Done\n");
70
71 printf("Test #2: lml_tag = 0\n");
72 for (i = 0; i < str_cnt; i++)
73 {
74 j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 0);
75
76 printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
77 }
78 printf("Test #2: Done\n");
79
80 log_end();
81
82 return 0;
83 }

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