msfl 1.2.0.dev3 → 1.2.0.dev4

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: 92776017e13b2f1677d282efee338f57475e0c6b
4
- data.tar.gz: cf7f80e1c004e70bfa209cedfa9867a87277b52b
3
+ metadata.gz: 64f2f1391e2c2d84010f3f24dea6c05876914c0a
4
+ data.tar.gz: 043011b2811609dca0d3c64f77bf3bc38fc18736
5
5
  SHA512:
6
- metadata.gz: 9cb498ae6117a7a53f7899f0bab6e56d2bf87c64dce04aa44d1675709729e9fded2785fff74d1b122c13754239fac4e9b121bd2c75a41be4bbe67969161da95c
7
- data.tar.gz: e899946daebe34c207f9ce94dd9dd4f698e84f1a277d2b4c8701f50325e942a026c877b4cc2c2631056fe426789c0ca727b408e60c46d1c2afbb12c6de1f24f1
6
+ metadata.gz: a76a648c5915c1f12bffe6df8ccbc177a664414046df5690d5e1ed71325b825aa2914a8b9ebc836376818347ff8db797adb35a2bb694cdbf37147fbd39d84217
7
+ data.tar.gz: 60ba3c0cf3aedf8dea480b7eb79072a49002ec27a22143f2dbda12e66e1825be7bf29ce2374fe90b707c54a8566c536ac733684bbb9e2698127fb7f45ac4a992
data/README.md CHANGED
@@ -41,7 +41,11 @@ MSFL is a context-free language. The context-free grammar is defined below.
41
41
 
42
42
  partial_expr = partial_op , colon , partial ;
43
43
 
44
- foreign_expr = word , colon , filter ;
44
+ foreign_expr = foreign_op , colon , foreign_filter ;
45
+
46
+ foreign_filter = lc , dataset_expr , comma , partial_filter , rc ;
47
+
48
+ dataset_expr = dataset_op , colon , word ;
45
49
 
46
50
  partial = lc , given_expr , comma , partial_filter , rc ;
47
51
 
@@ -118,6 +122,10 @@ MSFL is a context-free language. The context-free grammar is defined below.
118
122
  and_op = dq , "and" , dq ;
119
123
 
120
124
  or_op = dq , "or" , dq ;
125
+
126
+ foreign_op = dq , "foreign" , dq ;
127
+
128
+ dataset_op = dq , "dataset" , dq ;
121
129
 
122
130
 
123
131
 
@@ -167,10 +167,6 @@ module MSFL
167
167
  def value_conforms?(value, field, errors = [])
168
168
  true
169
169
  end
170
-
171
- def foreign?(field)
172
-
173
- end
174
170
  end
175
171
  end
176
172
  end
data/msfl.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'msfl'
3
- s.version = '1.2.0.dev3'
3
+ s.version = '1.2.0.dev4'
4
4
  s.date = '2015-05-12'
5
5
  s.summary = "MSFL in Ruby"
6
6
  s.description = "Serializers, validators, and other tasty goodness for the Mattermark Semantic Filter Language in Ruby."
@@ -38,10 +38,10 @@ describe "MSFL::Parsers::JSON" do
38
38
 
39
39
  # The test scenario here is if we are limiting the set of cars by person criteria (only cars owned by people over 25)
40
40
 
41
- let(:test_json) { '{"person":{"age":{"gte":25}}}' }
41
+ let(:test_json) { '{"foreign":{"dataset":"person","filter":{"age":{"gte":25}}}}' }
42
42
 
43
43
  it "is an equivalent Ruby hash" do
44
- expect(mut).to eq({ person: { age: { gte: 25 } } })
44
+ expect(mut).to eq({foreign: { dataset: "person", filter: { age: { gte: 25 } } } })
45
45
  end
46
46
 
47
47
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: msfl
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0.dev3
4
+ version: 1.2.0.dev4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Courtland Caldwell