ソースを参照

fixed todo scanner defects

avkonst 11 年 前
コミット
79195afc95

+ 1 - 1
mainline/ext/std/code/todo.py

@@ -46,7 +46,7 @@ class Plugin(mpp.api.Plugin,
             if re.match(r'''^[A-Za-z0-9]+$''', tag) == None:
                 self.parser.error('option --std.code.todo.tags: tag {0} includes not allowed symbols'.
                                   format(tag))
-        self.pattern_to_search = re.compile('[^a-zA-Z]{0}[^a-zA-Z]'.format('|'.join(self.tags_list)))
+        self.pattern_to_search = re.compile('([^a-zA-Z]({0})(?=[^a-zA-Z]))|([^a-zA-Z]({0})$)'.format('|'.join(self.tags_list)))
 
     def initialize(self):
         self.declare_metric(self.is_active_comments,

+ 1 - 0
mainline/tests/general/test_std_code_todo/sources/test.cpp

@@ -13,4 +13,5 @@ int main()
 	// no heretodo
 	// no todoss
 	//TOBEDONE
+	char a[] = "TODO string TOBEDONE";
 }

+ 2 - 0
mainline/tests/general/test_std_code_todo/sources/test.cs

@@ -23,6 +23,8 @@ class MainClass
 		// no heretodo
 		// no todoss
 		//TOBEDONE
+		
+		char a[] = "TODO string TOBEDONE";
 	}
 
 		//All here: TODO,ToDo,FIXME,FixMe,TBD,HACK,XXX

+ 23 - 23
mainline/tests/general/test_std_code_todo/test_comments_view_files_stdout.gold.txt

@@ -1,57 +1,57 @@
 ./test.cpp:0: info: Metrics per '__global__' region
 	Region name    : __global__
 	Region type    : global
-	Offsets        : 0-237
-	Line numbers   : 1-17
+	Offsets        : 0-273
+	Line numbers   : 1-18
 	Modified       : None
 
 .   ./test.cpp:2: info: Metrics per 'main' region
     	Region name    : main
     	Region type    : function
-    	Offsets        : 1-236
-    	Line numbers   : 2-16
+    	Offsets        : 1-272
+    	Line numbers   : 2-17
     	Modified       : None
-    	std.code.todo:comments: 13
+    	std.code.todo:comments: 14
 
 ./test.cpp:: info: Overall metrics for 'std.code.todo:comments' metric
-	Average        : 13.0 (excluding zero metric values)
-	Minimum        : 13
-	Maximum        : 13
-	Total          : 13.0
+	Average        : 14.0 (excluding zero metric values)
+	Minimum        : 14
+	Maximum        : 14
+	Total          : 14.0
 	Distribution   : 1 regions in total (including 0 suppressed)
 	  Metric value : Ratio : R-sum : Number of regions
-	            13 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	            14 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 
 ./test.cs:0: info: Metrics per '__global__' region
 	Region name    : __global__
 	Region type    : global
-	Offsets        : 0-507
-	Line numbers   : 1-34
+	Offsets        : 0-547
+	Line numbers   : 1-36
 	Modified       : None
 
 .   ./test.cs:2: info: Metrics per 'MainClass' region
     	Region name    : MainClass
     	Region type    : class
-    	Offsets        : 1-506
-    	Line numbers   : 2-33
+    	Offsets        : 1-546
+    	Line numbers   : 2-35
     	Modified       : None
-    	std.code.todo:comments: 13
+    	std.code.todo:comments: 14
 
 .   .   ./test.cs:12: info: Metrics per 'main' region
         	Region name    : main
         	Region type    : function
-        	Offsets        : 141-390
-        	Line numbers   : 12-26
+        	Offsets        : 141-430
+        	Line numbers   : 12-28
         	Modified       : None
-        	std.code.todo:comments: 13
+        	std.code.todo:comments: 14
 
 ./test.cs:: info: Overall metrics for 'std.code.todo:comments' metric
-	Average        : 13.0 (excluding zero metric values)
-	Minimum        : 13
-	Maximum        : 13
-	Total          : 26.0
+	Average        : 14.0 (excluding zero metric values)
+	Minimum        : 14
+	Maximum        : 14
+	Total          : 28.0
 	Distribution   : 2 regions in total (including 0 suppressed)
 	  Metric value : Ratio : R-sum : Number of regions
-	            13 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	            14 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 
 

+ 10 - 10
mainline/tests/general/test_std_code_todo/test_strings_view_files_stdout.gold.txt

@@ -1,15 +1,15 @@
 ./test.cpp:0: info: Metrics per '__global__' region
 	Region name    : __global__
 	Region type    : global
-	Offsets        : 0-237
-	Line numbers   : 1-17
+	Offsets        : 0-273
+	Line numbers   : 1-18
 	Modified       : None
 
 .   ./test.cpp:2: info: Metrics per 'main' region
     	Region name    : main
     	Region type    : function
-    	Offsets        : 1-236
-    	Line numbers   : 2-16
+    	Offsets        : 1-272
+    	Line numbers   : 2-17
     	Modified       : None
 
 ./test.cpp:: info: Overall metrics for 'std.code.todo:strings' metric
@@ -23,22 +23,22 @@
 ./test.cs:0: info: Metrics per '__global__' region
 	Region name    : __global__
 	Region type    : global
-	Offsets        : 0-507
-	Line numbers   : 1-34
+	Offsets        : 0-547
+	Line numbers   : 1-36
 	Modified       : None
 
 .   ./test.cs:2: info: Metrics per 'MainClass' region
     	Region name    : MainClass
     	Region type    : class
-    	Offsets        : 1-506
-    	Line numbers   : 2-33
+    	Offsets        : 1-546
+    	Line numbers   : 2-35
     	Modified       : None
 
 .   .   ./test.cs:12: info: Metrics per 'main' region
         	Region name    : main
         	Region type    : function
-        	Offsets        : 141-390
-        	Line numbers   : 12-26
+        	Offsets        : 141-430
+        	Line numbers   : 12-28
         	Modified       : None
 
 ./test.cs:: info: Overall metrics for 'std.code.todo:strings' metric

+ 6 - 5
mainline/tests/general/test_std_code_todo/test_tags_view_default_stdout.gold.txt

@@ -1,10 +1,11 @@
 :: info: Overall metrics for 'std.code.todo:strings' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 2.0
+	Distribution   : 2 regions in total (including 0 suppressed)
 	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 
 :: info: Overall metrics for 'std.code.todo:comments' metric
 	Average        : 5.0 (excluding zero metric values)