magnum-pi 0.1.3 → 0.1.4
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 +13 -5
- data/CHANGELOG.rdoc +6 -0
- data/VERSION +1 -1
- data/lib/magnum-pi/api/inheritance.rb +12 -0
- data/lib/magnum-pi/api/scheme.rb +24 -5
- data/lib/magnum-pi/api.rb +2 -0
- data/lib/magnum-pi/core_ext/deep_clone.rb +65 -0
- data/lib/magnum-pi/core_ext.rb +1 -0
- data/lib/magnum-pi/dsl.rb +14 -0
- data/lib/magnum-pi/version.rb +1 -1
- data/lib/magnum-pi.rb +1 -0
- data/test/test_helper/minitest.rb +10 -0
- data/test/test_helper.rb +4 -1
- data/test/unit/api/test_scheme.rb +10 -4
- data/test/unit/core_ext/test_deep_clone.rb +43 -0
- data/test/unit/test_api.rb +48 -0
- metadata +30 -23
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZWU5NmI1MjVkYTk4NzA0YzU4OWRmYzU1YzYwNjBiYjBmN2FiNGVmMA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
MGRiZGM0NGY4YjA3YzhlY2U5Mzg4YTFmNWYwMmIwOGIwYTJmNzA2Zg==
|
5
7
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NWU3MGMyMjRkNDljNzNmZDM0ZGZkYzI5ZGIzM2U4NjczMGFhNTk1YTVmNDJj
|
10
|
+
YWM3NDQxZDJjYTllMmQ4ZTRkODIwOGRjNzU3YjE4NTFjZDhlNjU3N2IwNWYy
|
11
|
+
MjQwOGM2YjYxZTc0ZGFiZTBlNjg3NjAwM2IxYjhlZTkzYTIxYWQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
Zjk0YjUxY2NmMjkxODQzOGM0ZTFlYjAwMjIyMTdkNmM4MmUxM2M2YmM3MTYw
|
14
|
+
ODI4YzU1ZDU5OTEwMTk2MmFmNDJkZjFiNzA5YzI2ZTQyYzYxMmZiZTQ3MTYy
|
15
|
+
ZmMwZWRmZDUwNWUxOWE5ZGU1MmUzNTk2ZjU4ZmM3YmNiNTYyY2U=
|
data/CHANGELOG.rdoc
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
= MagnumPI CHANGELOG
|
2
2
|
|
3
|
+
== Version 0.1.4 (June 12, 2014)
|
4
|
+
|
5
|
+
* Extended Kernel, Class, Array and Hash with #deep_clone
|
6
|
+
* Corrected inheritance behavior when inheriting from an API interface by deep cloning
|
7
|
+
* Corrected finalizing API schemes by deep cloning
|
8
|
+
|
3
9
|
== Version 0.1.3 (March 27, 2014)
|
4
10
|
|
5
11
|
* Tackling arrays within Mechanize::Util.build_query_string
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.4
|
data/lib/magnum-pi/api/scheme.rb
CHANGED
@@ -9,17 +9,31 @@ module MagnumPI
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def finalize(params = {})
|
12
|
-
@types = (types = _types).
|
13
|
-
@values = (values = _values).
|
12
|
+
@types = (types = _types).deep_clone
|
13
|
+
@values = (values = _values).deep_clone
|
14
|
+
|
14
15
|
params.each do |name, value|
|
15
16
|
process_value name, [value], nil
|
16
17
|
end
|
18
|
+
|
17
19
|
to_hash
|
18
20
|
ensure
|
19
21
|
@types = types
|
20
22
|
@values = values
|
21
23
|
end
|
22
24
|
|
25
|
+
def deep_clone
|
26
|
+
clone = super
|
27
|
+
|
28
|
+
types = @types.deep_clone if @types
|
29
|
+
|
30
|
+
clone.instance_eval do
|
31
|
+
@types = types
|
32
|
+
end
|
33
|
+
|
34
|
+
clone
|
35
|
+
end
|
36
|
+
|
23
37
|
private
|
24
38
|
|
25
39
|
def _types
|
@@ -27,9 +41,14 @@ module MagnumPI
|
|
27
41
|
end
|
28
42
|
|
29
43
|
def process_value(name, args, block)
|
30
|
-
|
31
|
-
|
32
|
-
|
44
|
+
value = args[0]
|
45
|
+
if name == :resources
|
46
|
+
(_values[name] ||= {}).merge! value
|
47
|
+
else
|
48
|
+
is_a_class = value.class == ::Class
|
49
|
+
set_type name, is_a_class ? value : value.class
|
50
|
+
set_value name, value unless is_a_class
|
51
|
+
end
|
33
52
|
end
|
34
53
|
|
35
54
|
def set_type(name, type)
|
data/lib/magnum-pi/api.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require "magnum-pi/api/inheritance"
|
1
2
|
require "magnum-pi/api/scheme"
|
2
3
|
require "magnum-pi/api/resources"
|
3
4
|
require "magnum-pi/api/instance"
|
@@ -8,6 +9,7 @@ module MagnumPI
|
|
8
9
|
|
9
10
|
def self.extended(base)
|
10
11
|
if base.is_a? Class
|
12
|
+
base.extend Inheritance
|
11
13
|
base.send :include, Instance
|
12
14
|
base.send :include, Consumer
|
13
15
|
else
|
@@ -0,0 +1,65 @@
|
|
1
|
+
module Kernel
|
2
|
+
|
3
|
+
def deep_clone(cache = {})
|
4
|
+
return cache[self] if cache.key?(self)
|
5
|
+
|
6
|
+
begin
|
7
|
+
copy = clone
|
8
|
+
rescue
|
9
|
+
return cache[self] = self
|
10
|
+
end
|
11
|
+
|
12
|
+
cache[self] = copy
|
13
|
+
|
14
|
+
copy.instance_variables.each do |name|
|
15
|
+
begin
|
16
|
+
var = instance_variable_get(name).deep_clone(cache)
|
17
|
+
copy.instance_variable_set name, var
|
18
|
+
rescue TypeError
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
copy
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
|
27
|
+
class Class
|
28
|
+
|
29
|
+
def deep_clone(cache = {})
|
30
|
+
self
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
class Array
|
36
|
+
|
37
|
+
def deep_clone(cache = {})
|
38
|
+
return cache[self] if cache.key?(self)
|
39
|
+
|
40
|
+
copy = super
|
41
|
+
|
42
|
+
each_with_index do |value, index|
|
43
|
+
copy[index] = value.deep_clone(cache)
|
44
|
+
end
|
45
|
+
|
46
|
+
copy
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
class Hash
|
52
|
+
|
53
|
+
def deep_clone(cache = {})
|
54
|
+
return cache[self] if cache.key?(self)
|
55
|
+
|
56
|
+
copy = super
|
57
|
+
|
58
|
+
each do |key, value|
|
59
|
+
copy[key] = value.deep_clone(cache)
|
60
|
+
end
|
61
|
+
|
62
|
+
copy
|
63
|
+
end
|
64
|
+
|
65
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require "magnum-pi/core_ext/deep_clone"
|
data/lib/magnum-pi/dsl.rb
CHANGED
@@ -30,6 +30,20 @@ module MagnumPI
|
|
30
30
|
_values.to_s
|
31
31
|
end
|
32
32
|
|
33
|
+
def deep_clone
|
34
|
+
clone = self.class.new
|
35
|
+
|
36
|
+
valid_keys = @valid_keys.deep_clone if @valid_keys
|
37
|
+
values = @values.deep_clone if @values
|
38
|
+
|
39
|
+
clone.instance_eval do
|
40
|
+
@valid_keys = valid_keys
|
41
|
+
@values = values
|
42
|
+
end
|
43
|
+
|
44
|
+
clone
|
45
|
+
end
|
46
|
+
|
33
47
|
private
|
34
48
|
|
35
49
|
def _values
|
data/lib/magnum-pi/version.rb
CHANGED
data/lib/magnum-pi.rb
CHANGED
data/test/test_helper.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require_relative "test_helper/coverage"
|
2
2
|
|
3
|
+
require "minitest"
|
3
4
|
require "minitest/autorun"
|
4
5
|
require "mocha/setup"
|
5
6
|
|
@@ -8,4 +9,6 @@ def path(path)
|
|
8
9
|
end
|
9
10
|
|
10
11
|
require "bundler"
|
11
|
-
Bundler.require :default, :development, :test
|
12
|
+
Bundler.require :default, :development, :test
|
13
|
+
|
14
|
+
require_relative "test_helper/minitest"
|
@@ -24,13 +24,19 @@ module Unit
|
|
24
24
|
describe "#finalize" do
|
25
25
|
it "foo" do
|
26
26
|
@scheme.foo String
|
27
|
-
@scheme.bar "
|
27
|
+
@scheme.bar :baz => "qux"
|
28
28
|
object_id = @scheme.instance_eval("_values").object_id
|
29
29
|
|
30
|
-
assert_equal({:bar => "
|
31
|
-
assert_equal({:foo => "foo", :bar => "
|
30
|
+
assert_equal({:bar => {:baz => "qux"}}, @scheme.finalize)
|
31
|
+
assert_equal({:foo => "foo", :bar => {:baz => "qux"}}, @scheme.finalize(:foo => "foo"))
|
32
32
|
assert_equal object_id, @scheme.instance_eval("_values").object_id
|
33
|
-
assert_equal({:foo => "FOO", :bar => "
|
33
|
+
assert_equal({:foo => "FOO", :bar => {:baz => "qux"}}, @scheme.finalize(:foo => "FOO"))
|
34
|
+
|
35
|
+
finalized = @scheme.finalize :foo => "foo"
|
36
|
+
assert_equal({:bar => {:baz => "qux"}}, @scheme.instance_eval("_values"))
|
37
|
+
|
38
|
+
finalized[:bar][:baz] = "QUX"
|
39
|
+
assert_equal({:bar => {:baz => "qux"}}, @scheme.instance_eval("_values"))
|
34
40
|
|
35
41
|
assert_raises ArgumentError do
|
36
42
|
@scheme.finalize :foo => :foo
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require_relative "../../test_helper"
|
2
|
+
|
3
|
+
module Unit
|
4
|
+
module CoreExt
|
5
|
+
class TestDeepClone < MiniTest::Test
|
6
|
+
|
7
|
+
describe "#deep_clone" do
|
8
|
+
it "returns a deep clone of the instance" do
|
9
|
+
array = [1, 2, 3]
|
10
|
+
array.instance_variable_set :@array, %w(4 5 6)
|
11
|
+
|
12
|
+
instance = {
|
13
|
+
:a => array,
|
14
|
+
:b => "Hello",
|
15
|
+
:c => {
|
16
|
+
"alpha" => [4, 5],
|
17
|
+
"beta" => [5, 6]
|
18
|
+
}
|
19
|
+
}
|
20
|
+
|
21
|
+
clone = instance.deep_clone
|
22
|
+
assert_equal instance, clone
|
23
|
+
assert_equal instance[:a].instance_variable_get(:@array), clone[:a].instance_variable_get(:@array)
|
24
|
+
|
25
|
+
clone.merge! :d => [1, 2, 3]
|
26
|
+
assert_equal [:a, :b, :c], instance.keys
|
27
|
+
assert_equal [:a, :b, :c, :d], clone.keys
|
28
|
+
assert_equal [1, 2, 3], clone[:d]
|
29
|
+
assert_equal instance, clone.reject{|k, v| k == :d}
|
30
|
+
|
31
|
+
clone[:a].instance_variable_get(:@array) << "7"
|
32
|
+
assert_equal %w(4 5 6), instance[:a].instance_variable_get(:@array)
|
33
|
+
assert_equal %w(4 5 6 7), clone[:a].instance_variable_get(:@array)
|
34
|
+
|
35
|
+
clone[:a] << 4
|
36
|
+
assert_equal [1, 2, 3], instance[:a]
|
37
|
+
assert_equal [1, 2, 3, 4], clone[:a]
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/test/unit/test_api.rb
CHANGED
@@ -88,5 +88,53 @@ module Unit
|
|
88
88
|
end
|
89
89
|
end
|
90
90
|
|
91
|
+
class FooAPI
|
92
|
+
extend MagnumPI::API
|
93
|
+
api do
|
94
|
+
uri String
|
95
|
+
format :xml
|
96
|
+
api_key String
|
97
|
+
resources({
|
98
|
+
"foo/Bars" => {
|
99
|
+
:params => {
|
100
|
+
:start_date => Date,
|
101
|
+
:end_date => Date
|
102
|
+
}
|
103
|
+
}
|
104
|
+
})
|
105
|
+
end
|
106
|
+
resources do
|
107
|
+
bars :get, "foo/Bars", {:start_date => Date.today}
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
class BarAPI < FooAPI
|
112
|
+
api do
|
113
|
+
resources({
|
114
|
+
"baz/Quxs" => {}
|
115
|
+
})
|
116
|
+
end
|
117
|
+
resources do
|
118
|
+
quxs :get, "baz/Quxs"
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
describe "inheritance" do
|
123
|
+
describe ".api" do
|
124
|
+
it "inherits the API definition of its parent" do
|
125
|
+
assert BarAPI.api != nil
|
126
|
+
assert BarAPI.api.__id__ != FooAPI.api.__id__
|
127
|
+
assert_equal FooAPI.api.to_hash.tap{|h| h[:resources].merge!("baz/Quxs" => {})}, BarAPI.api.to_hash
|
128
|
+
end
|
129
|
+
end
|
130
|
+
describe ".resources" do
|
131
|
+
it "inherits the resources definition of its parent" do
|
132
|
+
assert BarAPI.resources != nil
|
133
|
+
assert BarAPI.resources.__id__ != FooAPI.resources.__id__
|
134
|
+
assert_equal FooAPI.resources.to_hash.merge(:quxs => [:get, "baz/Quxs"]), BarAPI.resources.to_hash
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
91
139
|
end
|
92
140
|
end
|
metadata
CHANGED
@@ -1,139 +1,139 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: magnum-pi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paul Engel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mechanize
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - '>='
|
17
|
+
- - ! '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - '>='
|
24
|
+
- - ! '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: oj
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - '>='
|
31
|
+
- - ! '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - '>='
|
38
|
+
- - ! '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: xml-simple
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - '>='
|
45
|
+
- - ! '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - '>='
|
52
|
+
- - ! '>='
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activesupport
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - '>='
|
59
|
+
- - ! '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - '>='
|
66
|
+
- - ! '>='
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - '>='
|
73
|
+
- - ! '>='
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - '>='
|
80
|
+
- - ! '>='
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: pry
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - '>='
|
87
|
+
- - ! '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - '>='
|
94
|
+
- - ! '>='
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: simplecov
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - '>='
|
101
|
+
- - ! '>='
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - '>='
|
108
|
+
- - ! '>='
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: minitest
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- - '>='
|
115
|
+
- - ! '>='
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- - '>='
|
122
|
+
- - ! '>='
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: mocha
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- - '>='
|
129
|
+
- - ! '>='
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: '0'
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- - '>='
|
136
|
+
- - ! '>='
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
139
|
description: Create an easy interface to talk with APIs
|
@@ -154,9 +154,12 @@ files:
|
|
154
154
|
- lib/magnum-pi.rb
|
155
155
|
- lib/magnum-pi/api.rb
|
156
156
|
- lib/magnum-pi/api/consumer.rb
|
157
|
+
- lib/magnum-pi/api/inheritance.rb
|
157
158
|
- lib/magnum-pi/api/instance.rb
|
158
159
|
- lib/magnum-pi/api/resources.rb
|
159
160
|
- lib/magnum-pi/api/scheme.rb
|
161
|
+
- lib/magnum-pi/core_ext.rb
|
162
|
+
- lib/magnum-pi/core_ext/deep_clone.rb
|
160
163
|
- lib/magnum-pi/dsl.rb
|
161
164
|
- lib/magnum-pi/gem_ext.rb
|
162
165
|
- lib/magnum-pi/gem_ext/mechanize.rb
|
@@ -168,10 +171,12 @@ files:
|
|
168
171
|
- script/console
|
169
172
|
- test/test_helper.rb
|
170
173
|
- test/test_helper/coverage.rb
|
174
|
+
- test/test_helper/minitest.rb
|
171
175
|
- test/unit/api/test_consumer.rb
|
172
176
|
- test/unit/api/test_instance.rb
|
173
177
|
- test/unit/api/test_resources.rb
|
174
178
|
- test/unit/api/test_scheme.rb
|
179
|
+
- test/unit/core_ext/test_deep_clone.rb
|
175
180
|
- test/unit/test_api.rb
|
176
181
|
- test/unit/test_dsl.rb
|
177
182
|
- test/unit/test_magnum-pi.rb
|
@@ -184,27 +189,29 @@ require_paths:
|
|
184
189
|
- lib
|
185
190
|
required_ruby_version: !ruby/object:Gem::Requirement
|
186
191
|
requirements:
|
187
|
-
- - '>='
|
192
|
+
- - ! '>='
|
188
193
|
- !ruby/object:Gem::Version
|
189
194
|
version: '0'
|
190
195
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
191
196
|
requirements:
|
192
|
-
- - '>='
|
197
|
+
- - ! '>='
|
193
198
|
- !ruby/object:Gem::Version
|
194
199
|
version: '0'
|
195
200
|
requirements: []
|
196
201
|
rubyforge_project:
|
197
|
-
rubygems_version: 2.
|
202
|
+
rubygems_version: 2.1.11
|
198
203
|
signing_key:
|
199
204
|
specification_version: 4
|
200
205
|
summary: Create an easy interface to talk with APIs
|
201
206
|
test_files:
|
202
207
|
- test/test_helper.rb
|
203
208
|
- test/test_helper/coverage.rb
|
209
|
+
- test/test_helper/minitest.rb
|
204
210
|
- test/unit/api/test_consumer.rb
|
205
211
|
- test/unit/api/test_instance.rb
|
206
212
|
- test/unit/api/test_resources.rb
|
207
213
|
- test/unit/api/test_scheme.rb
|
214
|
+
- test/unit/core_ext/test_deep_clone.rb
|
208
215
|
- test/unit/test_api.rb
|
209
216
|
- test/unit/test_dsl.rb
|
210
217
|
- test/unit/test_magnum-pi.rb
|