arelastic 0.6.2 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b7e6147284908ea72345b434db648ed51a887286
|
4
|
+
data.tar.gz: a992f57aee01a9b9541ceb4f844c0ca8a7ee1318
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8bf09de6b0fabf1834878b3ee0e7194a952e60f0a2b99ba177e4c399af754ccc46ca69a437a5503aacf555221a74f479b5b03f392f18aaab69dc84defca5d9aa
|
7
|
+
data.tar.gz: 274c22454a4a8b1646e2a71069dc004671ee87d363b988701f9cb11d553b97114c9b58d2b8719163000e5c4ae57b86ba6e9b4e0b3109080f22f2e5e79214dec6
|
@@ -10,8 +10,8 @@ module Arelastic
|
|
10
10
|
query Arelastic::Queries::ConstantScore.new(search)
|
11
11
|
end
|
12
12
|
|
13
|
-
def filtered(query, filter)
|
14
|
-
query Arelastic::Queries::Filtered.new(query, filter)
|
13
|
+
def filtered(query: nil, filter: nil)
|
14
|
+
query Arelastic::Queries::Filtered.new(query: query, filter: filter)
|
15
15
|
end
|
16
16
|
|
17
17
|
def match_all
|
@@ -2,19 +2,18 @@ module Arelastic
|
|
2
2
|
module Queries
|
3
3
|
class Filtered < Arelastic::Queries::Query
|
4
4
|
attr_accessor :query, :filter
|
5
|
-
def initialize(query, filter)
|
5
|
+
def initialize(query: nil, filter: nil)
|
6
6
|
@query = query
|
7
7
|
@filter = filter
|
8
8
|
end
|
9
9
|
|
10
10
|
def as_elastic
|
11
|
-
{
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
}
|
11
|
+
searches = {}
|
12
|
+
searches['query'] = convert_to_elastic(query) if query
|
13
|
+
searches['filter'] = convert_to_elastic(filter) if filter
|
14
|
+
|
15
|
+
{ "filtered" => searches }
|
17
16
|
end
|
18
17
|
end
|
19
18
|
end
|
20
|
-
end
|
19
|
+
end
|
@@ -9,7 +9,10 @@ class Arelastic::Builders::QueryTest < MiniTest::Unit::TestCase
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def test_filtered
|
12
|
-
query = Arelastic::Builders::Query.filtered(
|
12
|
+
query = Arelastic::Builders::Query.filtered(
|
13
|
+
query: {"query_string" => "foo"},
|
14
|
+
filter: {"term" => "bar"}
|
15
|
+
)
|
13
16
|
expected = {"query" => {"filtered" => {"query" => {"query_string" => "foo"}, "filter" => {"term" => "bar"}}}}
|
14
17
|
|
15
18
|
assert_equal expected, query.as_elastic
|
@@ -43,14 +46,14 @@ class Arelastic::Builders::QueryTest < MiniTest::Unit::TestCase
|
|
43
46
|
def test_terms
|
44
47
|
query = Arelastic::Builders::Query['tags'].terms ['blue', 'pill']
|
45
48
|
expected = {"terms" => { "tags" => ["blue", "pill"] }}
|
46
|
-
|
49
|
+
|
47
50
|
assert_equal expected, query.as_elastic
|
48
51
|
end
|
49
52
|
|
50
53
|
def test_match
|
51
54
|
query = Arelastic::Builders::Query['message'].match "hello"
|
52
55
|
expected = {"match" => { "message" => "hello" }}
|
53
|
-
|
56
|
+
|
54
57
|
assert_equal expected, query.as_elastic
|
55
58
|
end
|
56
|
-
end
|
59
|
+
end
|
@@ -2,9 +2,19 @@ require 'helper'
|
|
2
2
|
|
3
3
|
class Arelastic::Queries::FilteredTest < MiniTest::Unit::TestCase
|
4
4
|
def test_as_elastic
|
5
|
-
filtered = Arelastic::Queries::Filtered.new(
|
5
|
+
filtered = Arelastic::Queries::Filtered.new(
|
6
|
+
query: {"query_string" => "bar"},
|
7
|
+
filter: {"term" => "baz"}
|
8
|
+
)
|
6
9
|
expected = {"filtered" => {"query" => {"query_string" => "bar"}, "filter" => {"term" => "baz"}}}
|
7
10
|
|
8
11
|
assert_equal expected, filtered.as_elastic
|
9
12
|
end
|
10
|
-
|
13
|
+
|
14
|
+
def test_as_elastic_with_query_node
|
15
|
+
filtered = Arelastic::Queries::Filtered.new(query: Arelastic::Queries::QueryString.new("bar"))
|
16
|
+
expected = {"filtered" => {"query" => {"query_string" => {"query"=>"bar"}}}}
|
17
|
+
|
18
|
+
assert_equal expected, filtered.as_elastic
|
19
|
+
end
|
20
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arelastic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Higgins
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-01-23 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Build Elastic Search queries with objects
|
14
14
|
email: developer@matthewhiggins.com
|