expressive 0.0.28 → 0.0.29
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 +15 -0
- data/lib/expressive/version.rb +1 -1
- data/lib/scope.rb +5 -1
- data/spec/expressive_spec.rb +30 -0
- metadata +5 -43
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NjBiY2RjOWUzNTlmYmQzMGQzMWM5YzQ4NWQ2NTJiN2FlMTZkNjE3Zg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NTIzMjJhNGYxMDBhN2M0ZDYyM2UwYzFiYjZlOGQ2N2UzMDA5NmU2Yw==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZDA0ODU0NzI4OTM5Y2Q5OTdmY2YzM2I3YThiNjE3ODY5MDg3MTNiMzYzNTM3
|
10
|
+
MmE1OGE4ZTcxYmE0MzFiZDhkYTZhNDc3YzIwOWYyZGY2YjZmY2QyZjliZjUy
|
11
|
+
Mzk2ZDc0MzcwYTllNGJkY2IyZDhmOTgwMDI5Mjk0MjAyYThhYjI=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
ZGQ2ZGJkNmM4ZGFlMzZkY2Y1Y2NjMTZiYWNhNWNmZGFiZWVlZGQ4YTNkZmU5
|
14
|
+
M2MxMTYzZjBkZjlmNTdlOGNhOWU0NDE2ZDExYmJmNzRmM2Q0MGI3YmM5MjA5
|
15
|
+
YTA0NjZiZTA2OTk2NmQ3NWUyZGFiYTRmOTE0NzQzMDVkNjc4NWY=
|
data/lib/expressive/version.rb
CHANGED
data/lib/scope.rb
CHANGED
data/spec/expressive_spec.rb
CHANGED
@@ -66,6 +66,8 @@ describe "Expressive" do
|
|
66
66
|
it { Expressive.run("(sum )").should eql 0 }
|
67
67
|
it { Expressive.run("(- (sum 1 5 7) 3)").should eql 10.0}
|
68
68
|
it { Expressive.run("(round 0.12345 2)").should eql 0.12}
|
69
|
+
it { Expressive.run("(round 0.45 0)").should eql 0}
|
70
|
+
it { Expressive.run("(round 0.55 0)").should eql 1}
|
69
71
|
end
|
70
72
|
|
71
73
|
describe "understands comparisson" do
|
@@ -93,6 +95,11 @@ describe "Expressive" do
|
|
93
95
|
|
94
96
|
describe "understands conditional statements" do
|
95
97
|
it { Expressive.run('(if (> 5 4) "greater" "not so greater")').should eql "greater" }
|
98
|
+
it { Expressive.run('(if (= 5.2473 5.3473) true false)').should eql false }
|
99
|
+
it { Expressive.run('(if (= 5.3473 5.3473) true false)').should eql true }
|
100
|
+
it { Expressive.run('(if (= ($round 5.2473 2) ($round 5.3473 2)) true false)').should eql false }
|
101
|
+
it { Expressive.run('(if (= ($round 5.2473 1) ($round 5.3473 1)) true false)').should eql false }
|
102
|
+
it { Expressive.run('(if (= ($round 5.3473 1) ($round 5.3473 1)) true false)').should eql true }
|
96
103
|
|
97
104
|
context "it understands the need for commas (if you like that kind of thing" do
|
98
105
|
it { Expressive.run('(if (< 5 4), "greater", "not so greater")').should eql "not so greater" }
|
@@ -253,6 +260,29 @@ EOH
|
|
253
260
|
end
|
254
261
|
|
255
262
|
describe "understands the modification of scope" do
|
263
|
+
|
264
|
+
it "works" do
|
265
|
+
@scope['total_payment_amount'] = 2.32
|
266
|
+
@scope['refund_amount'] = 2.32
|
267
|
+
@scope['payment_reconciled'] = "asdf"
|
268
|
+
Expressive.run('(if (= ($round total_payment_amount 2) ($round refund_amount 2)) true false)', @scope).should eql true
|
269
|
+
Expressive.run('(if (= ($round total_payment_amount 2) ($round refund_amount 2)) true, false)', @scope).should eql true
|
270
|
+
Expressive.run('(= (- ($round total_payment_amount 2) ($round refund_amount 2)) 0)', @scope).should eql true
|
271
|
+
Expressive.run('(set payment_reconciled (if (= ($round total_payment_amount 2) ($round refund_amount 2)) true false))', @scope)
|
272
|
+
@scope['payment_reconciled'].should eql true
|
273
|
+
|
274
|
+
@scope['total_payment_amount'] = 3
|
275
|
+
@scope['refund_amount'] = 2.32
|
276
|
+
@scope['payment_reconciled'] = "asdf"
|
277
|
+
Expressive.run('(if (= ($round total_payment_amount 2) ($round refund_amount 2)) true false)', @scope).should eql false
|
278
|
+
Expressive.run('(if (= ($round total_payment_amount 2) ($round refund_amount 2)) true, false)', @scope).should eql false
|
279
|
+
Expressive.run('(= (- ($round total_payment_amount 2) ($round refund_amount 2)) 0)', @scope).should eql false
|
280
|
+
Expressive.run('(set payment_reconciled (if (= ($round total_payment_amount 2) ($round refund_amount 2)) true false))', @scope)
|
281
|
+
puts @scope['payment_reconciled']
|
282
|
+
@scope['payment_reconciled'].should eql false
|
283
|
+
|
284
|
+
end
|
285
|
+
|
256
286
|
it "using single set commands" do
|
257
287
|
@scope['vsi'] = 'oldvalue'
|
258
288
|
Expressive.run('(set vsi "vsi1234")', @scope).should eql "vsi1234"
|
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: expressive
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.29
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ijonas Kisselbach
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-
|
11
|
+
date: 2014-02-12 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: ruby_gntp
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rspec
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rdoc
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ~>
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ~>
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: bundler
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,7 +69,6 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: guard
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
73
|
- - ~>
|
84
74
|
- !ruby/object:Gem::Version
|
@@ -86,7 +76,6 @@ dependencies:
|
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
80
|
- - ~>
|
92
81
|
- !ruby/object:Gem::Version
|
@@ -94,7 +83,6 @@ dependencies:
|
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: guard-rspec
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
87
|
- - ~>
|
100
88
|
- !ruby/object:Gem::Version
|
@@ -102,7 +90,6 @@ dependencies:
|
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
94
|
- - ~>
|
108
95
|
- !ruby/object:Gem::Version
|
@@ -110,7 +97,6 @@ dependencies:
|
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: webmock
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
101
|
- - ~>
|
116
102
|
- !ruby/object:Gem::Version
|
@@ -118,7 +104,6 @@ dependencies:
|
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
108
|
- - ~>
|
124
109
|
- !ruby/object:Gem::Version
|
@@ -126,7 +111,6 @@ dependencies:
|
|
126
111
|
- !ruby/object:Gem::Dependency
|
127
112
|
name: pry
|
128
113
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
114
|
requirements:
|
131
115
|
- - ~>
|
132
116
|
- !ruby/object:Gem::Version
|
@@ -134,7 +118,6 @@ dependencies:
|
|
134
118
|
type: :development
|
135
119
|
prerelease: false
|
136
120
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
121
|
requirements:
|
139
122
|
- - ~>
|
140
123
|
- !ruby/object:Gem::Version
|
@@ -142,7 +125,6 @@ dependencies:
|
|
142
125
|
- !ruby/object:Gem::Dependency
|
143
126
|
name: timecop
|
144
127
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
128
|
requirements:
|
147
129
|
- - ~>
|
148
130
|
- !ruby/object:Gem::Version
|
@@ -150,7 +132,6 @@ dependencies:
|
|
150
132
|
type: :development
|
151
133
|
prerelease: false
|
152
134
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
135
|
requirements:
|
155
136
|
- - ~>
|
156
137
|
- !ruby/object:Gem::Version
|
@@ -158,7 +139,6 @@ dependencies:
|
|
158
139
|
- !ruby/object:Gem::Dependency
|
159
140
|
name: rake
|
160
141
|
requirement: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
142
|
requirements:
|
163
143
|
- - ! '>='
|
164
144
|
- !ruby/object:Gem::Version
|
@@ -166,7 +146,6 @@ dependencies:
|
|
166
146
|
type: :development
|
167
147
|
prerelease: false
|
168
148
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
none: false
|
170
149
|
requirements:
|
171
150
|
- - ! '>='
|
172
151
|
- !ruby/object:Gem::Version
|
@@ -174,7 +153,6 @@ dependencies:
|
|
174
153
|
- !ruby/object:Gem::Dependency
|
175
154
|
name: polyglot
|
176
155
|
requirement: !ruby/object:Gem::Requirement
|
177
|
-
none: false
|
178
156
|
requirements:
|
179
157
|
- - ~>
|
180
158
|
- !ruby/object:Gem::Version
|
@@ -182,7 +160,6 @@ dependencies:
|
|
182
160
|
type: :runtime
|
183
161
|
prerelease: false
|
184
162
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
-
none: false
|
186
163
|
requirements:
|
187
164
|
- - ~>
|
188
165
|
- !ruby/object:Gem::Version
|
@@ -190,7 +167,6 @@ dependencies:
|
|
190
167
|
- !ruby/object:Gem::Dependency
|
191
168
|
name: json
|
192
169
|
requirement: !ruby/object:Gem::Requirement
|
193
|
-
none: false
|
194
170
|
requirements:
|
195
171
|
- - ! '>='
|
196
172
|
- !ruby/object:Gem::Version
|
@@ -198,7 +174,6 @@ dependencies:
|
|
198
174
|
type: :runtime
|
199
175
|
prerelease: false
|
200
176
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
-
none: false
|
202
177
|
requirements:
|
203
178
|
- - ! '>='
|
204
179
|
- !ruby/object:Gem::Version
|
@@ -206,7 +181,6 @@ dependencies:
|
|
206
181
|
- !ruby/object:Gem::Dependency
|
207
182
|
name: treetop
|
208
183
|
requirement: !ruby/object:Gem::Requirement
|
209
|
-
none: false
|
210
184
|
requirements:
|
211
185
|
- - ~>
|
212
186
|
- !ruby/object:Gem::Version
|
@@ -214,7 +188,6 @@ dependencies:
|
|
214
188
|
type: :runtime
|
215
189
|
prerelease: false
|
216
190
|
version_requirements: !ruby/object:Gem::Requirement
|
217
|
-
none: false
|
218
191
|
requirements:
|
219
192
|
- - ~>
|
220
193
|
- !ruby/object:Gem::Version
|
@@ -222,7 +195,6 @@ dependencies:
|
|
222
195
|
- !ruby/object:Gem::Dependency
|
223
196
|
name: awesome_print
|
224
197
|
requirement: !ruby/object:Gem::Requirement
|
225
|
-
none: false
|
226
198
|
requirements:
|
227
199
|
- - ~>
|
228
200
|
- !ruby/object:Gem::Version
|
@@ -230,7 +202,6 @@ dependencies:
|
|
230
202
|
type: :runtime
|
231
203
|
prerelease: false
|
232
204
|
version_requirements: !ruby/object:Gem::Requirement
|
233
|
-
none: false
|
234
205
|
requirements:
|
235
206
|
- - ~>
|
236
207
|
- !ruby/object:Gem::Version
|
@@ -238,7 +209,6 @@ dependencies:
|
|
238
209
|
- !ruby/object:Gem::Dependency
|
239
210
|
name: rest-client
|
240
211
|
requirement: !ruby/object:Gem::Requirement
|
241
|
-
none: false
|
242
212
|
requirements:
|
243
213
|
- - ~>
|
244
214
|
- !ruby/object:Gem::Version
|
@@ -246,7 +216,6 @@ dependencies:
|
|
246
216
|
type: :runtime
|
247
217
|
prerelease: false
|
248
218
|
version_requirements: !ruby/object:Gem::Requirement
|
249
|
-
none: false
|
250
219
|
requirements:
|
251
220
|
- - ~>
|
252
221
|
- !ruby/object:Gem::Version
|
@@ -282,33 +251,26 @@ files:
|
|
282
251
|
- spec/webhook_examples.rb
|
283
252
|
homepage: http://github.com/emergeadapt/expressive
|
284
253
|
licenses: []
|
254
|
+
metadata: {}
|
285
255
|
post_install_message:
|
286
256
|
rdoc_options: []
|
287
257
|
require_paths:
|
288
258
|
- lib
|
289
259
|
required_ruby_version: !ruby/object:Gem::Requirement
|
290
|
-
none: false
|
291
260
|
requirements:
|
292
261
|
- - ! '>='
|
293
262
|
- !ruby/object:Gem::Version
|
294
263
|
version: '0'
|
295
|
-
segments:
|
296
|
-
- 0
|
297
|
-
hash: 2507656080840932177
|
298
264
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
299
|
-
none: false
|
300
265
|
requirements:
|
301
266
|
- - ! '>='
|
302
267
|
- !ruby/object:Gem::Version
|
303
268
|
version: '0'
|
304
|
-
segments:
|
305
|
-
- 0
|
306
|
-
hash: 2507656080840932177
|
307
269
|
requirements: []
|
308
270
|
rubyforge_project:
|
309
|
-
rubygems_version:
|
271
|
+
rubygems_version: 2.0.3
|
310
272
|
signing_key:
|
311
|
-
specification_version:
|
273
|
+
specification_version: 4
|
312
274
|
summary: Scheme-like language for manipulating CaseBlocks cases
|
313
275
|
test_files:
|
314
276
|
- spec/expressive_spec.rb
|