expressive 0.0.21 → 0.0.22
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.
- data/Gemfile.lock +2 -2
- data/lib/expressive/version.rb +1 -1
- data/lib/scope.rb +3 -2
- data/spec/expressive_spec.rb +12 -1
- metadata +5 -5
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
expressive (0.0.
|
4
|
+
expressive (0.0.22)
|
5
5
|
awesome_print (~> 1.0.2)
|
6
6
|
json
|
7
7
|
polyglot (~> 0.3.3)
|
@@ -30,7 +30,7 @@ GEM
|
|
30
30
|
rb-fsevent (~> 0.9.1)
|
31
31
|
rb-inotify (~> 0.8.8)
|
32
32
|
method_source (0.8)
|
33
|
-
mime-types (1.
|
33
|
+
mime-types (1.21)
|
34
34
|
polyglot (0.3.3)
|
35
35
|
pry (0.9.10)
|
36
36
|
coderay (~> 1.0.5)
|
data/lib/expressive/version.rb
CHANGED
data/lib/scope.rb
CHANGED
@@ -165,13 +165,14 @@ module Expressive
|
|
165
165
|
the_proc = lookup_result.last
|
166
166
|
the_proc.call(options, key, *Array(cells[2..-1]).map {|cell| cell.eval(scope)})
|
167
167
|
end
|
168
|
-
end
|
168
|
+
end
|
169
169
|
end
|
170
170
|
|
171
171
|
def perform_webhook(verb, scope, cells)
|
172
172
|
#convert cells to array so it can manipulated easily
|
173
|
-
cells_array = cells.map{|c| c.text_value.gsub(
|
173
|
+
cells_array = cells.map{|c| c.text_value.gsub(/\A"|"\Z/, '')}
|
174
174
|
url = cells_array.shift
|
175
|
+
url = Expressive.run(url, scope) || url
|
175
176
|
headers = create_webhook_headers(cells_array)
|
176
177
|
params = create_webhook_parameters(scope, cells_array)
|
177
178
|
begin
|
data/spec/expressive_spec.rb
CHANGED
@@ -164,7 +164,7 @@ describe "Expressive" do
|
|
164
164
|
end
|
165
165
|
|
166
166
|
describe "understands retrieving the id of an object" do
|
167
|
-
it do
|
167
|
+
it do
|
168
168
|
@scope["an_object"] = mock(:an_object, id: 5)
|
169
169
|
Expressive.run('($id an_object)', @scope).should == 5
|
170
170
|
end
|
@@ -270,5 +270,16 @@ describe "Expressive" do
|
|
270
270
|
@scope['goodbye'].should eql 'srsly'
|
271
271
|
end
|
272
272
|
end
|
273
|
+
|
274
|
+
context "conditional post" do
|
275
|
+
it "should post to correct url" do
|
276
|
+
@scope['ohai'] = "world"
|
277
|
+
@scope["monty"] = "python"
|
278
|
+
request = stub_request(:post, "www.example.com").with(body: {'monty' => 'python', 'ohai' => 'world'}).to_return(body: {'goodbye' => 'srsly'})
|
279
|
+
Expressive.run('(post (if (= ohai "world") "http://www.example.com", "http://www.wrongurl.com") "*")', @scope)
|
280
|
+
assert_requested(request)
|
281
|
+
@scope['goodbye'].should eql 'srsly'
|
282
|
+
end
|
283
|
+
end
|
273
284
|
end
|
274
285
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: expressive
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.22
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-04-
|
12
|
+
date: 2013-04-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: ruby_gntp
|
@@ -294,7 +294,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
294
294
|
version: '0'
|
295
295
|
segments:
|
296
296
|
- 0
|
297
|
-
hash:
|
297
|
+
hash: 2019720455442608896
|
298
298
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
299
299
|
none: false
|
300
300
|
requirements:
|
@@ -303,10 +303,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
303
303
|
version: '0'
|
304
304
|
segments:
|
305
305
|
- 0
|
306
|
-
hash:
|
306
|
+
hash: 2019720455442608896
|
307
307
|
requirements: []
|
308
308
|
rubyforge_project:
|
309
|
-
rubygems_version: 1.8.
|
309
|
+
rubygems_version: 1.8.24
|
310
310
|
signing_key:
|
311
311
|
specification_version: 3
|
312
312
|
summary: Scheme-like language for manipulating CaseBlocks cases
|