| <testcase> | |
| <info> | |
| <keywords> | |
| checksrc | |
| </keywords> | |
| </info> | |
| # | |
| # Client-side | |
| <client> | |
| <server> | |
| none | |
| </server> | |
| <name> | |
| checksrc | |
| </name> | |
| <command type="perl"> | |
| %SRCDIR/../scripts/checksrc.pl %LOGDIR/code%TESTNUMBER.c | |
| </command> | |
| <file name="%LOGDIR/code%TESTNUMBER.c"> | |
| /* test source code | |
| * Violate each rule at least once. | |
| **/ | |
| int hello; /*------------------------------------------------------------------*/ | |
| int tab; | |
| int trailing_space; | |
| int a = func (); | |
| int b = func( b); | |
| int b = func(b ); | |
| func(a, b , c); | |
| int hello() | |
| { | |
| return(2); | |
| } | |
| func(a, b,c); | |
| if(a == 2) { | |
| ; | |
| } else { | |
| moo = 2; | |
| } | |
| if(a == 2){ /* followed by comment */ | |
| ; | |
| } | |
| func() ; | |
| a = sprintf(buffer, "%s", moo); | |
| FILE *f = fopen("filename", "r"); | |
| void startfunc(int a, int b) { | |
| func(); | |
| } | |
| for(;;) { | |
| func(1); | |
| } while(1); | |
| char * name = "hello"; | |
| char* name = "hello"; | |
| int foo=bar; | |
| int foo= bar; | |
| int foo = bar; | |
| int foo = bar;foo++; | |
| for(;;) { | |
| } | |
| int a = sizeof int; | |
| int a = snprintf(buffer, sizeof(buffer), "%d", 99); | |
| int moo = hej?wrong:a>b; | |
| int moo2 = wrong2:(a)>(b); | |
| if(a) b++; | |
| // CPP comment ? | |
| /* comment doesn't end | |
| </file> | |
| </client> | |
| # | |
| # Verify data after the test has been "shot" | |
| <verify> | |
| <stdout> | |
| ./%LOGDIR/code1185.c:4:82: warning: Longer than 79 columns (LONGLINE) | |
| int hello; /*------------------------------------------------------------------*/ | |
| ./%LOGDIR/code1185.c:5:4: error: Contains TAB character (TABS) | |
| int tab; | |
| ^ | |
| ./%LOGDIR/code1185.c:7:13: warning: func with space (SPACEBEFOREPAREN) | |
| int a = func (); | |
| ^ | |
| ./%LOGDIR/code1185.c:8:14: warning: space after open parenthesis (SPACEAFTERPAREN) | |
| int b = func( b); | |
| ^ | |
| ./%LOGDIR/code1185.c:9:16: warning: space before close parenthesis (SPACEBEFORECLOSE) | |
| int b = func(b ); | |
| ^ | |
| ./%LOGDIR/code1185.c:10:11: warning: space before comma (SPACEBEFORECOMMA) | |
| func(a, b , c); | |
| ^ | |
| ./%LOGDIR/code1185.c:14:9: warning: return without space before paren (RETURNNOSPACE) | |
| return(2); | |
| ^ | |
| ./%LOGDIR/code1185.c:16:11: warning: comma without following space (COMMANOSPACE) | |
| func(a, b,c); | |
| ^ | |
| ./%LOGDIR/code1185.c:18:12: warning: wrongly placed open brace (BRACEPOS) | |
| if(a == 2) { | |
| ^ | |
| ./%LOGDIR/code1185.c:20:1: warning: else after closing brace on same line (BRACEELSE) | |
| } else { | |
| ^ | |
| ./%LOGDIR/code1185.c:24:11: warning: missing space after close paren (PARENBRACE) | |
| if(a == 2){ | |
| ^ | |
| ./%LOGDIR/code1185.c:28:7: warning: no space before semicolon (SPACESEMICOLON) | |
| func() ; | |
| ^ | |
| ./%LOGDIR/code1185.c:30:5: warning: use of sprintf is banned (BANNEDFUNC) | |
| a = sprintf(buffer, "%s", moo); | |
| ^ | |
| ./%LOGDIR/code1185.c:32:11: warning: use of non-binary fopen without FOPEN_* macro: r (FOPENMODE) | |
| FILE *f = fopen("filename", "r"); | |
| ^ | |
| ./%LOGDIR/code1185.c:34:30: warning: wrongly placed open brace (BRACEPOS) | |
| void startfunc(int a, int b) { | |
| ^ | |
| ./%LOGDIR/code1185.c:39:6: warning: not indented 2 steps (uses 4) (INDENTATION) | |
| func(1); | |
| ^ | |
| ./%LOGDIR/code1185.c:42:8: warning: space after declarative asterisk (ASTERISKSPACE) | |
| char * name = "hello"; | |
| ^ | |
| ./%LOGDIR/code1185.c:43:7: warning: space after declarative asterisk (ASTERISKSPACE) | |
| char* name = "hello"; | |
| ^ | |
| ./%LOGDIR/code1185.c:43:6: warning: no space before asterisk (ASTERISKNOSPACE) | |
| char* name = "hello"; | |
| ^ | |
| ./%LOGDIR/code1185.c:45:10: warning: no space after equals sign (EQUALSNOSPACE) | |
| int foo=bar; | |
| ^ | |
| ./%LOGDIR/code1185.c:46:9: warning: no space before equals sign (NOSPACEEQUALS) | |
| int foo= bar; | |
| ^ | |
| ./%LOGDIR/code1185.c:48:16: warning: no space after semicolon (SEMINOSPACE) | |
| int foo = bar;foo++; | |
| ^ | |
| ./%LOGDIR/code1185.c:49:10: warning: multiple spaces (MULTISPACE) | |
| for(;;) { | |
| ^ | |
| ./%LOGDIR/code1185.c:50:2: warning: not indented 2 steps (uses 0) (INDENTATION) | |
| } | |
| ^ | |
| ./%LOGDIR/code1185.c:52:16: warning: sizeof without parenthesis (SIZEOFNOPAREN) | |
| int a = sizeof int; | |
| ^ | |
| ./%LOGDIR/code1185.c:53:10: warning: use of snprintf is banned (SNPRINTF) | |
| int a = snprintf(buffer, sizeof(buffer), "%d", 99); | |
| ^ | |
| ./%LOGDIR/code1185.c:54:21: warning: missing space before colon (NOSPACEC) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:54:22: warning: missing space after colon (NOSPACEC) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:54:15: warning: missing space before question mark (NOSPACEQ) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:54:16: warning: missing space after question mark (NOSPACEQ) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:54:23: warning: missing space before less or greater than (NOSPACETHAN) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:54:23: warning: missing space after less or greater than (NOSPACETHAN) | |
| int moo = hej?wrong:a>b; | |
| ^ | |
| ./%LOGDIR/code1185.c:55:23: warning: missing space before less or greater than (NOSPACETHAN) | |
| int moo2 = wrong2:(a)>(b); | |
| ^ | |
| ./%LOGDIR/code1185.c:55:23: warning: missing space after less or greater than (NOSPACETHAN) | |
| int moo2 = wrong2:(a)>(b); | |
| ^ | |
| ./%LOGDIR/code1185.c:57:7: warning: conditional block on the same line (ONELINECONDITION) | |
| if(a) b++; | |
| ^ | |
| ./%LOGDIR/code1185.c:59:2: warning: // comment (CPPCOMMENTS) | |
| // CPP comment ? | |
| ^ | |
| ./%LOGDIR/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT) | |
| ^ | |
| ./%LOGDIR/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT) | |
| ^ | |
| checksrc: 0 errors and 38 warnings | |
| </stdout> | |
| <errorcode> | |
| 5 | |
| </errorcode> | |
| </verify> | |
| </testcase> |