diff --git a/app/logical/post_query/parser.rb b/app/logical/post_query/parser.rb index 165a9ba37..2068f8724 100644 --- a/app/logical/post_query/parser.rb +++ b/app/logical/post_query/parser.rb @@ -172,7 +172,7 @@ class PostQuery expect("'") [true, a] else - [false, string(/[^ ]+/)] + [false, string(/[^ ]*/)] end end diff --git a/test/unit/post_query_builder_test.rb b/test/unit/post_query_builder_test.rb index e5327a92b..ef78ac6a6 100644 --- a/test/unit/post_query_builder_test.rb +++ b/test/unit/post_query_builder_test.rb @@ -896,6 +896,7 @@ class PostQueryBuilderTest < ActiveSupport::TestCase assert_tag_match([post3], "source:NONE") assert_tag_match([post3], 'source:""') assert_tag_match([post3], "source:''") + assert_tag_match([post3], "source:") assert_tag_match([post2, post1], "-source:none") assert_tag_match([post2, post1], "-source:''") assert_tag_match([post2, post1], '-source:""') diff --git a/test/unit/post_query_parser_test.rb b/test/unit/post_query_parser_test.rb index 72a325c38..92f5d599f 100644 --- a/test/unit/post_query_parser_test.rb +++ b/test/unit/post_query_parser_test.rb @@ -114,6 +114,7 @@ class PostQueryParserTest < ActiveSupport::TestCase assert_parse_equals('source:"foo bar"', 'source:"foo bar"') assert_parse_equals('source:foobar"(', 'source:foobar"(') + assert_parse_equals('source:', 'source:') assert_parse_equals('source:""', 'source:""') assert_parse_equals('source:"\""', 'source:"\""') assert_parse_equals(%q{source:"don't say \"lazy\" okay"}, %q{source:"don't say \"lazy\" okay"})