marty 2.0.8 → 2.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/marty/data_grid.rb +4 -1
- data/lib/marty/version.rb +1 -1
- data/spec/models/data_grid_spec.rb +18 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cc93810ae5dd275a46e3126262f32d3b1801eb0c
|
4
|
+
data.tar.gz: ec26658316552eb0be436ece29dcc3e5954604cb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c0a913f766620e18ab38ea070872b071cc5f4581e9eb0819f62fe82de458d166746978826998df9e7cf055256d94655f9dfffa91965840a5dc0ae6faeb1f2abe
|
7
|
+
data.tar.gz: a377aa7395151b4a7588ff59bba50c91ecafc65a027f77abfc04e98db1262638850c9877b5ce7f388e68f162e1d2cfeef35355e91a40150ba33b36e844ae9212
|
@@ -37,7 +37,7 @@ class Marty::DataGrid < Marty::Base
|
|
37
37
|
inf["attr"], inf["type"], inf["keys"], inf["rs_keep"]
|
38
38
|
|
39
39
|
unless rs_keep.nil? || rs_keep.empty?
|
40
|
-
m = /\A *(<|<=|>|>=)? *([a-
|
40
|
+
m = /\A *(<|<=|>|>=)? *([a-z][a-z_0-9]+) *\z/.match(rs_keep)
|
41
41
|
unless m
|
42
42
|
dg.errors.add(:base, "invalid grid modifier expression: #{rs_keep}")
|
43
43
|
next
|
@@ -193,6 +193,9 @@ class Marty::DataGrid < Marty::Base
|
|
193
193
|
h[attr] = val.is_a?(String) ?
|
194
194
|
ActiveRecord::Base.connection.quote(val)[1..-2] : val
|
195
195
|
end
|
196
|
+
nilparams = h.select{|k, v| v==nil}
|
197
|
+
raise "Data Grid #{dgh['name']} lookup with nil attrs #{nilparams}" if
|
198
|
+
nilparams.present?
|
196
199
|
|
197
200
|
fn = "lookup_grid_distinct"
|
198
201
|
hjson = "'#{h.to_json}'::JSONB"
|
data/lib/marty/version.rb
CHANGED
@@ -169,6 +169,15 @@ property_state\tstring\tv
|
|
169
169
|
|
170
170
|
\tCA\t0.25
|
171
171
|
700127\tCA\t0.35
|
172
|
+
EOS
|
173
|
+
|
174
|
+
Gk =<<EOS
|
175
|
+
fha_203k_option\tstring\tv\tfha_203k_option
|
176
|
+
|
177
|
+
Investor Services\t-0.625
|
178
|
+
Admin Services\t-1.0
|
179
|
+
Admin Services Plus\t-1.625
|
180
|
+
Investor Services Acadamy\t-0.5
|
172
181
|
EOS
|
173
182
|
|
174
183
|
before(:each) do
|
@@ -269,6 +278,15 @@ EOS
|
|
269
278
|
dg_from_import("Ga", g_bad)
|
270
279
|
}.to raise_error(RuntimeError)
|
271
280
|
end
|
281
|
+
|
282
|
+
it "validates grid modifier" do
|
283
|
+
bad = ': abc def'
|
284
|
+
g_bad = Gk.sub(/fha_203k_option$/, bad)
|
285
|
+
expect { dg_from_import( "Gk", g_bad)
|
286
|
+
}.to raise_error(/invalid grid modifier expression: #{bad}/)
|
287
|
+
expect { dg_from_import( "Gk", Gk)
|
288
|
+
}.not_to raise_error
|
289
|
+
end
|
272
290
|
end
|
273
291
|
|
274
292
|
describe "lookups for infinity" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: marty
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arman Bostani
|
@@ -14,7 +14,7 @@ authors:
|
|
14
14
|
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date: 2018-05-
|
17
|
+
date: 2018-05-18 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: pg
|