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

Diff of /lbbs/src/test_lml.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.3 by sysadm, Tue Jun 3 00:57:27 2025 UTC Revision 1.22 by sysadm, Thu Oct 30 07:51:47 2025 UTC
# Line 16  Line 16 
16    
17  #include "lml.h"  #include "lml.h"
18  #include "log.h"  #include "log.h"
19    #include <errno.h>
20  #include <stdio.h>  #include <stdio.h>
21  #include <string.h>  #include <string.h>
22  #include <unistd.h>  #include <unistd.h>
 #include <errno.h>  
23    
24  #define STR_OUT_BUF_SIZE 1024  #define STR_OUT_BUF_SIZE 256
25    
26  const char *str_in[] = {  const char *str_in[] = {
27          "[left]ABCD[right]EFG",          "[left]ABCD[right]EFG",
28          "A[u]BCDE[/underline]FG",          "A[u]B[italic]CD[/i]E[/u]F[b]G[/bold]",
29          "A[url BCDE[/url]FG",          "A[url BC DE]测试a网址[/url]FG",
30          "AB[email CDE]F[/eMAil]G01[emaiL]23456[/email]789",          "AB[email CDE]F[/eMAil]G01[emaiL]23456[/email]789",
31          "A[user DE]BC[  /User  ]FG",          "A[user DE]BC[/User]FG",
32          "[article A B CD]EF[/article   ]G",          "[article A B CD]EF[  /article]G[article 789]123[/article]456",
33          "A[ image  BCD]EFG",          "A[ image  BCD]EFG",
34          "AB[ Flash  CDE ]FG",          "AB[ Flash  CDE ]FG",
35          "AB[bwf]CDEFG",          "AB[bwf]CDEFG",
36          "[lef]A[rightBCD[right]EF[left[left[]G[left",          "[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]",          "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            "\033[1;35;42mABC\033[0mDE\033[334mF\033[33mG\033[12345\033[m",
41            "123456",
42            "[color red]Red[/color][plain][color blue]Blue[/color][plain]",
43            "[color yellow]Yellow[/color][nolml][left][color blue]Blue[/color][right][lml][color red]Red[/color]",
44            "[abc][left ][ right ][ colory ][left  \nABCD[left]EFG[right ",
45            "ABCD]EFG",
46            ": : A123456789B123456789C123456789D123456789E123456789F123456789G123456789H123456789I123456789J123456789",
47  };  };
48    
49  int str_cnt = 11;  const int str_cnt = sizeof(str_in) / sizeof(const char *);
50    
51  int main(int argc, char *argv[])  int main(int argc, char *argv[])
52  {  {
# Line 51  int main(int argc, char *argv[]) Line 60  int main(int argc, char *argv[])
60                  return -1;                  return -1;
61          }          }
62    
63          log_std_redirect(STDOUT_FILENO);          log_common_redir(STDOUT_FILENO);
64          log_err_redirect(STDERR_FILENO);          log_error_redir(STDERR_FILENO);
65    
66            printf("Test #1: quote_mode = 0\n");
67            for (i = 0; i < str_cnt; i++)
68            {
69                    j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 80, 0);
70    
71                    printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
72            }
73            printf("Test #1: Done\n");
74    
75            printf("Test #2: quote_mode = 1\n");
76          for (i = 0; i < str_cnt; i++)          for (i = 0; i < str_cnt; i++)
77          {          {
78                  j = lml_plain(str_in[i], str_out_buf, sizeof(str_out_buf));                  j = lml_render(str_in[i], str_out_buf, sizeof(str_out_buf), 80, 1);
79    
80                  printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);                  printf("Input(len=%ld): %s\nOutput(len=%d): %s\n", strlen(str_in[i]), str_in[i], j, str_out_buf);
81          }          }
82            printf("Test #2: Done\n");
83    
84          log_end();          log_end();
85    


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

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