nexter 0.2.0 → 0.2.1

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: bb5f5647cea17c363cbc0c3bdd0a0dbffaf60e4d
4
- data.tar.gz: 05a68031d96af8db94742064b8f5efe6e831f3a3
3
+ metadata.gz: fa27845095fbceddc5060d15a5649166bca1c028
4
+ data.tar.gz: 73948d478174c7ff9550a4e25908b7d9a24850c6
5
5
  SHA512:
6
- metadata.gz: 3a989deebd5e880d7710c5ca97adac906b554a184d0efd701305497d961975f2be5f632192aa23d3a28587d215c5abb96a4875b5364b5b8d5edeb666a51bfaa2
7
- data.tar.gz: e87cbdb667b506e39116e63b6fe4c2dbf62525161471d9b92d6d2bda8ca2364a5def9230280531d1917c9c73df6bccc318cead3a06470dee575adb200e0463e1
6
+ metadata.gz: 44e8a6909a2ad1dfadbb4bba479d160ac2f7bbf5f0947a8f45b64ea830ce3b4e6d4e685f858851eb203092cdc31a06a12833a047c6f0ba6847035c427ccc5995
7
+ data.tar.gz: 8463803e201191cd9d8161b36749854fddec605279c7d54f5aa07fd7adec4b524f3deb03877f5b459012ba8d20a8973902ffcf1f1e82aafb778c0f92fa73c2b0
@@ -1,3 +1,8 @@
1
+ ## Nexter 0.2.1 (Mars 2016)
2
+
3
+ * fixed non existing column problem with pg_search
4
+ * Order parsing : arel consistent with string parsing
5
+
1
6
  ## Nexter 0.2.0 (Mars 2016)
2
7
 
3
8
  * properly do order parsing so it works with arel or plain string
@@ -10,11 +10,12 @@ module Nexter
10
10
 
11
11
  def values
12
12
  @values ||= @order_values.map do |column|
13
+ next unless value = value_of(column[0])
13
14
  { col: column[0],
14
- val: value_of(column[0]),
15
+ val: value,
15
16
  dir: column[1]
16
17
  }
17
- end
18
+ end.compact
18
19
  end
19
20
 
20
21
  private
@@ -22,9 +23,10 @@ module Nexter
22
23
  splits = cursor.split(".")
23
24
  result = if splits.first == model.class.table_name || splits.size == 1
24
25
  model.send(splits.last) if model.respond_to?(splits.last)
25
- else
26
- asso = model.class.reflections.keys.grep(/#{splits.first.singularize}/).first
26
+ elsif asso = model.class.reflections.keys.grep(/#{splits.first.singularize}/).first
27
27
  asso = model.send(asso) and asso.send(splits.last)
28
+ else
29
+ false
28
30
  end
29
31
  end
30
32
 
@@ -27,7 +27,7 @@ class Nexter::Model
27
27
  end
28
28
 
29
29
  def parse_arel(arel)
30
- ["#{arel.value.name}", "#{arel.direction}"]
30
+ [["#{arel.value.name}", "#{arel.direction}"]]
31
31
  end
32
32
 
33
33
 
@@ -1,3 +1,3 @@
1
1
  module Nexter
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -16,6 +16,15 @@ describe Nexter::Model do
16
16
  {col: "title", val: "ada", dir: "asc"}
17
17
  ])
18
18
  end
19
+
20
+ it "should skip non existing columns (for now ?)" do
21
+ relation = Relation.new.tap{|r| r.order_values=["pg_search_8bf729ffe074caee622c02.rank","title"]}
22
+ model = Nexter::Model.new(book, relation)
23
+
24
+ expect(model.values).to eq([
25
+ {col: "title", val: "ada", dir: "asc"}
26
+ ])
27
+ end
19
28
  end
20
29
 
21
30
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Sistovaris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-07 00:00:00.000000000 Z
11
+ date: 2016-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord