arel_extensions 0.9.7.1 → 0.9.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9be145c31813735ab972e8b497c6ceab5e06e291
4
- data.tar.gz: 7c62d208758ff4ae6c0519736db22e67163b1084
3
+ metadata.gz: 1923df0add8a1b52266d494eeb0eaf76e422b7f5
4
+ data.tar.gz: 5be82144d6f2c8c1862bb4cec335d37a2cfd109e
5
5
  SHA512:
6
- metadata.gz: 39ba0787983047a55a20012256533f4f22752e54e44e2f0504a86e26f912fa29662742b1d75588e6b35b051567754a74bc129b53c11ff1869146606480b64a43
7
- data.tar.gz: 2b8ea0881447aa61d5bdad1b2c8e111059804abe4b6613adef9372f00d7d22ef6bcada95da7f2615be8a174c298ff3e1fca8345f7bb9dda28948ec58f1d934ca
6
+ metadata.gz: 738eb1d6e164f64625b06f91be03b8852be0f5e4c359ccab87b13342af03f4d79ce69371950ab6c52410394411aa22cb5e14a25d6a610de36eb5e28df92ac453
7
+ data.tar.gz: db4742a4ac307fc3e208deba698bfa9032e9b51d5eaa13b32f69860250211ed44f588f127a96d1ec431d03c8cfe94e190e2b4df10cf15aad952b842520fbd735
@@ -1,4 +1,4 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
  module ArelExtensions
3
- VERSION = "0.9.7.1".freeze
3
+ VERSION = "0.9.7.2".freeze
4
4
  end
@@ -79,28 +79,28 @@ module ArelExtensions
79
79
 
80
80
  # :date is not possible in Oracle since this type does not really exist
81
81
  def visit_ArelExtensions_Nodes_DateDiff o, collector
82
- # lc = o.left_node_type == :ruby_date || o.left_node_type == :ruby_time
83
- # rc = o.right_node_type == :ruby_date || o.right_node_type == :ruby_time
82
+ lc = o.left_node_type == :ruby_date || o.left_node_type == :ruby_time
83
+ rc = o.right_node_type == :ruby_date || o.right_node_type == :ruby_time
84
84
  collector << '('
85
- # collector << 'TO_DATE(' if lc
85
+ collector << 'TO_DATE(' if lc
86
86
  collector = visit o.left, collector
87
- # collector << ')' if lc
87
+ collector << ')' if lc
88
88
  collector << " - "
89
- # collector << 'TO_DATE(' if rc
89
+ collector << 'TO_DATE(' if rc
90
90
  collector = visit o.right, collector
91
- # collector << ')' if rc
91
+ collector << ')' if rc
92
92
  collector << ')'
93
93
  if o.left_node_type == :ruby_time || o.left_node_type == :datetime || o.left_node_type == :time
94
- collector << ' * CASE WHEN (TRUNC('
95
- # collector << 'TO_DATE(' if lc
94
+ collector << ' * (CASE WHEN (TRUNC('
95
+ collector << 'TO_DATE(' if lc
96
96
  collector = visit o.left, collector
97
- # collector << ')' if lc
97
+ collector << ')' if lc
98
98
  collector << Arel::Visitors::Oracle::COMMA
99
99
  collector << "'DDD') = "
100
- # collector << 'TO_DATE(' if lc
100
+ collector << 'TO_DATE(' if lc
101
101
  collector = visit o.left, collector
102
- # collector << ')' if lc
103
- collector << ') THEN 1 ELSE 86400 END' # converts to seconds
102
+ collector << ')' if lc
103
+ collector << ') THEN 1 ELSE 86400 END)' # converts to seconds
104
104
  end
105
105
  collector
106
106
  end
@@ -70,7 +70,7 @@ module ArelExtensions
70
70
  it "should diff date col and datetime col with AS" do
71
71
  sql = compile((@table[:updated_at] - @table[:created_at]).as('new_name'))
72
72
  # sql.must_be_like %{(TO_DATE("users"."updated_at") - "users"."created_at") * 86400 AS new_name}
73
- sql.must_be_like %{("users"."updated_at" - "users"."created_at") * CASE WHEN (TRUNC("users"."updated_at", 'DDD') = "users"."updated_at") THEN 1 ELSE 86400 END AS new_name}
73
+ sql.must_be_like %{("users"."updated_at" - "users"."created_at") * (CASE WHEN (TRUNC("users"."updated_at", 'DDD') = "users"."updated_at") THEN 1 ELSE 86400 END) AS new_name}
74
74
  end
75
75
 
76
76
  it "should diff between time values" do
@@ -302,7 +302,11 @@ module ArelExtensions
302
302
 
303
303
  assert_equal ' ', t(@myung, @comments.coalesce("Myung").coalesce('ignored'))
304
304
  assert_equal 'Laure', t(@laure, @comments.coalesce("Laure"))
305
- assert_equal(@env_db == 'oracle' ? nil : '', t(@laure, @comments.coalesce("")))
305
+ if @env_db == 'oracle'
306
+ assert_nil t(@laure, @comments.coalesce(""))
307
+ else
308
+ assert_equal('', t(@laure, @comments.coalesce("")))
309
+ end
306
310
 
307
311
  if @env_db == 'postgresql'
308
312
  assert_equal 100, t(@test, @age.coalesce(100))
@@ -364,7 +368,7 @@ module ArelExtensions
364
368
  assert_equal 42, t(@lucas, @updated_at - Time.utc(2014, 3, 3, 12, 41, 18)).to_i
365
369
  assert_equal(-3600, t(@lucas, @updated_at - Time.utc(2014, 3, 3, 13, 42)).to_i)
366
370
 
367
- assert_equal 0, t(@lucas, (@updated_at - Time.utc(2014, 3, 3, 12, 41, 18)) < -1).to_i
371
+ assert_includes [nil, 0, 'f'], t(@lucas, (@updated_at - Time.utc(2014, 3, 3, 12, 41, 18)) < -1)
368
372
  end
369
373
  end
370
374
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arel_extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.7.1
4
+ version: 0.9.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yann Azoury