[Groonga-commit] groonga/groonga-query-log at 4916b22 [master] run-regression-test: modify to rewrite to 'vector_size(vector) > 0'

Back to archive index
Yasuhiro Horimoto null+****@clear*****
Fri Oct 26 18:15:06 JST 2018


Yasuhiro Horimoto	2018-10-26 18:15:06 +0900 (Fri, 26 Oct 2018)

  Revision: 4916b22f05dc690357e4939e43b84b737bcf86ac
  https://github.com/groonga/groonga-query-log/commit/4916b22f05dc690357e4939e43b84b737bcf86ac

  Merged 0602138: Merge pull request #31 from komainu8/add_new_rewrite_filter

  Message:
    run-regression-test: modify to rewrite to 'vector_size(vector) > 0'

  Modified files:
    lib/groonga-query-log/command/run-regression-test.rb
    lib/groonga-query-log/command/verify-server.rb
    lib/groonga-query-log/filter-rewriter.rb
    test/test-filter-rewriter.rb

  Modified: lib/groonga-query-log/command/run-regression-test.rb (+1 -1)
===================================================================
--- lib/groonga-query-log/command/run-regression-test.rb    2018-10-23 17:20:00 +0900 (77349c9)
+++ lib/groonga-query-log/command/run-regression-test.rb    2018-10-26 18:15:06 +0900 (d8d56f8)
@@ -160,7 +160,7 @@ module GroongaQueryLog
           @rewrite_vector_equal = boolean
         end
         parser.on("--[no-]rewrite-vector-not-equal-empty-string",
-                  "Rewrite 'vector != \"\"' with 'false'",
+                  "Rewrite 'vector != \"\"'and 'vector.column != \"\"' with 'false'",
                   "(#{@rewrite_vector_not_equal_empty_string})") do |boolean|
           @rewrite_vector_not_equal_empty_string = boolean
         end

  Modified: lib/groonga-query-log/command/verify-server.rb (+1 -1)
===================================================================
--- lib/groonga-query-log/command/verify-server.rb    2018-10-23 17:20:00 +0900 (7dd379c)
+++ lib/groonga-query-log/command/verify-server.rb    2018-10-26 18:15:06 +0900 (e783211)
@@ -208,7 +208,7 @@ module GroongaQueryLog
         end
 
         parser.on("--[no-]rewrite-vector-not-equal-empty-string",
-                  "Rewrite 'vector != \"\"' with 'false'",
+                  "Rewrite 'vector != \"\"' and 'vector.column != \"\"' with 'false'",
                   "(#{@options.rewrite_vector_not_equal_empty_string?})") do |boolean|
           @options.rewrite_vector_not_equal_empty_string = boolean
         end

  Modified: lib/groonga-query-log/filter-rewriter.rb (+7 -3)
===================================================================
--- lib/groonga-query-log/filter-rewriter.rb    2018-10-23 17:20:00 +0900 (b16de46)
+++ lib/groonga-query-log/filter-rewriter.rb    2018-10-26 18:15:06 +0900 (eaabc0d)
@@ -46,10 +46,14 @@ module GroongaQueryLog
     end
 
     def rewrite_vector_not_equal_empty_string(filter)
-      filter.gsub(/([a-zA-Z0-9_.]+) *!= *(?:''|"")/) do |matched|
-        variable = $1
+      filter.gsub(/(?:([a-zA-Z0-9_.]+)\.[a-zA-Z0-9_.]+|([a-zA-Z0-9_.]+)) *!= *(?:''|"")/) do |matched|
+        if $1
+          variable = $1
+        else
+          variable = $2
+        end
         if @vector_accessors.include?(variable)
-          "false"
+          "vector_size(#{variable}) > 0"
         else
           matched
         end

  Modified: test/test-filter-rewriter.rb (+8 -2)
===================================================================
--- test/test-filter-rewriter.rb    2018-10-23 17:20:00 +0900 (6969dbf)
+++ test/test-filter-rewriter.rb    2018-10-26 18:15:06 +0900 (4f77fd2)
@@ -61,15 +61,21 @@ class FilterRewriterTest < Test::Unit::TestCase
     end
 
     def test_parenthesis
-      assert_equal("((false))",
+      assert_equal("((vector_size(vector) > 0))",
                    rewrite("((vector != \"\"))",
                            ["vector"]))
     end
 
     def test_under_score
-      assert_equal("false",
+      assert_equal("vector_size(vector_column) > 0",
                    rewrite("vector_column != \"\"",
                            ["vector_column"]))
     end
+
+    def test_dot
+      assert_equal("vector_size(vector) > 0",
+                    rewrite("vector.column != \"\"",
+                            ["vector"]))
+    end
   end
 end
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20181026/738222b9/attachment-0001.html>


More information about the Groonga-commit mailing list
Back to archive index