magnum-pi 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MTljZTBmZGU3ZDJhNjIyMWNlODkyMTNjMDg5OTdjMjI0ZmJkZmIyZg==
5
- data.tar.gz: !binary |-
6
- YzM3MGUyZWY4Y2RiODA1M2VhNWRmM2E3ODExODg2MGIwODA0MGFmMg==
2
+ SHA1:
3
+ metadata.gz: 55724ea3ada97d6403c53b433978eae455a0f031
4
+ data.tar.gz: f8da79852504723c92e3bac6d516e0a7ed8438f6
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- ZWY2YmRmM2E1ZGM2NDg3YmJmZTVhNjBjM2UzMTJmMzExMzE0YjcyODExNjc4
10
- NTQ3ZDkxZDRlYWQyMzMxMWNjNzMyNWQwODc0YTBhMDkzMmI0ZWRmZjJkZTYz
11
- MmU3NWE3OWQ0NzY0ZGEwNTRhOGQ3YjdmZGQxZTk1OGM2NjYxN2E=
12
- data.tar.gz: !binary |-
13
- M2RmNjcxODYzNjlhYmI5NmFmNjdkMDAzZDllZjI3Mzg0ODRlNTA2NDM3NjFi
14
- N2ZjNDI1MDdjMzJhODAyZjVlOTQzYTQxYTdhOTBkZTIxYzM5MTk2ODcyYWRj
15
- M2Q1MDE2ZTdhZDcyYmZmOTE1ZjE5N2U5Mjc0MDRmZGIwOGQzMjM=
6
+ metadata.gz: cb9c350bd994b2780a02b45c12455280ce40be6b050ac779112d30c1e457b43edeaa4901e020d07505d2b0d821f6d5d9abfb4d94c7ce61df342997c31b938cb5
7
+ data.tar.gz: 81b0628aecc23ed7d338305189531117482f2e0a8bd088efa8a8c9d70dc0b92b33071ea54e8c103fbcb8dfcc8d16a346885c6a36b5710d0bf1e67e377efefc9a
@@ -1,5 +1,10 @@
1
1
  = MagnumPI CHANGELOG
2
2
 
3
+ == Version 0.1.2 (March 27, 2014)
4
+
5
+ * Corrected Mechanize::Util.build_query_string (using ActiveSupport's #to_query)
6
+ * Printing request debug data when MagnumPI.debug_output?
7
+
3
8
  == Version 0.1.1 (March 26, 2014)
4
9
 
5
10
  * Made #api and #resources public for API instances
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
@@ -1,6 +1,7 @@
1
1
  require "mechanize"
2
2
  require "oj"
3
3
  require "xmlsimple"
4
+ require "active_support/core_ext/object/to_query"
4
5
 
5
6
  require "magnum-pi/gem_ext"
6
7
  require "magnum-pi/dsl"
@@ -8,7 +9,17 @@ require "magnum-pi/api"
8
9
  require "magnum-pi/version"
9
10
 
10
11
  module MagnumPI
12
+
11
13
  def self.extended(base)
12
14
  base.extend API
13
15
  end
16
+
17
+ def self.debug_output(bool = true)
18
+ @debug_output = bool
19
+ end
20
+
21
+ def self.debug_output?
22
+ !!@debug_output
23
+ end
24
+
14
25
  end
@@ -33,6 +33,7 @@ module MagnumPI
33
33
  end
34
34
 
35
35
  def request(method, url, params)
36
+ puts "#{method.upcase} #{url} #{"(#{params.inspect[1..-2]})" if params && params.size > 0}" if MagnumPI.debug_output?
36
37
  agent.send method, url, params
37
38
  rescue Mechanize::ResponseCodeError => e
38
39
  raise Error, e.message, e.backtrace
@@ -1 +1,2 @@
1
- require "magnum-pi/gem_ext/mechanize/http"
1
+ require "magnum-pi/gem_ext/mechanize/http"
2
+ require "magnum-pi/gem_ext/mechanize/util"
@@ -0,0 +1,9 @@
1
+ class Mechanize
2
+ class Util
3
+
4
+ def self.build_query_string(parameters, enc = nil)
5
+ parameters.to_query
6
+ end
7
+
8
+ end
9
+ end
@@ -1,7 +1,7 @@
1
1
  module MagnumPI
2
2
  MAJOR = 0
3
3
  MINOR = 1
4
- TINY = 1
4
+ TINY = 2
5
5
 
6
6
  VERSION = [MAJOR, MINOR, TINY].join(".")
7
7
  end
@@ -18,6 +18,7 @@ Gem::Specification.new do |gem|
18
18
  gem.add_dependency "mechanize"
19
19
  gem.add_dependency "oj"
20
20
  gem.add_dependency "xml-simple"
21
+ gem.add_dependency "activesupport"
21
22
 
22
23
  gem.add_development_dependency "rake"
23
24
  gem.add_development_dependency "pry"
@@ -22,6 +22,61 @@ module Unit
22
22
  assert_equal true, SomeAPI.extended_modules.include?(MagnumPI::API)
23
23
  end
24
24
  end
25
+
26
+ describe ".debug_output" do
27
+ before do
28
+ MagnumPI.class_eval do
29
+ @debug_output = nil
30
+ end
31
+ end
32
+ describe "when not passing an argument" do
33
+ it "sets to true" do
34
+ MagnumPI.debug_output
35
+ assert_equal true, MagnumPI.class_eval("@debug_output")
36
+ end
37
+ end
38
+ describe "when passing an argument" do
39
+ it "stores the passed argument" do
40
+ MagnumPI.debug_output false
41
+ assert_equal false, MagnumPI.class_eval("@debug_output")
42
+ MagnumPI.debug_output "foo"
43
+ assert_equal "foo", MagnumPI.class_eval("@debug_output")
44
+ end
45
+ end
46
+ end
47
+
48
+ describe ".debug_output?" do
49
+ before do
50
+ MagnumPI.class_eval do
51
+ @debug_output = nil
52
+ end
53
+ end
54
+ describe "when not set" do
55
+ it "returns false" do
56
+ assert_equal false, MagnumPI.debug_output?
57
+ end
58
+ end
59
+ describe "when setting a falsy value" do
60
+ it "returns false" do
61
+ MagnumPI.debug_output false
62
+ assert_equal false, MagnumPI.debug_output?
63
+ MagnumPI.debug_output true
64
+ assert_equal true, MagnumPI.debug_output?
65
+ MagnumPI.debug_output nil
66
+ assert_equal false, MagnumPI.debug_output?
67
+ end
68
+ end
69
+ describe "when setting a truthy value" do
70
+ it "returns true" do
71
+ MagnumPI.debug_output true
72
+ assert_equal true, MagnumPI.debug_output?
73
+ MagnumPI.debug_output false
74
+ assert_equal false, MagnumPI.debug_output?
75
+ MagnumPI.debug_output "foo"
76
+ assert_equal true, MagnumPI.debug_output?
77
+ end
78
+ end
79
+ end
25
80
  end
26
81
 
27
82
  end
metadata CHANGED
@@ -1,125 +1,139 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: magnum-pi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
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-03-26 00:00:00.000000000 Z
11
+ date: 2014-03-27 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
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: activesupport
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rake
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - ! '>='
73
+ - - '>='
60
74
  - !ruby/object:Gem::Version
61
75
  version: '0'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - ! '>='
80
+ - - '>='
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: pry
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - ! '>='
87
+ - - '>='
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - ! '>='
94
+ - - '>='
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: simplecov
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - ! '>='
101
+ - - '>='
88
102
  - !ruby/object:Gem::Version
89
103
  version: '0'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - ! '>='
108
+ - - '>='
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: minitest
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - ! '>='
115
+ - - '>='
102
116
  - !ruby/object:Gem::Version
103
117
  version: '0'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - ! '>='
122
+ - - '>='
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: mocha
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - ! '>='
129
+ - - '>='
116
130
  - !ruby/object:Gem::Version
117
131
  version: '0'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - ! '>='
136
+ - - '>='
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
139
  description: Create an easy interface to talk with APIs
@@ -148,6 +162,7 @@ files:
148
162
  - lib/magnum-pi/gem_ext/mechanize.rb
149
163
  - lib/magnum-pi/gem_ext/mechanize/http.rb
150
164
  - lib/magnum-pi/gem_ext/mechanize/http/agent.rb
165
+ - lib/magnum-pi/gem_ext/mechanize/util.rb
151
166
  - lib/magnum-pi/version.rb
152
167
  - magnum-pi.gemspec
153
168
  - script/console
@@ -169,17 +184,17 @@ require_paths:
169
184
  - lib
170
185
  required_ruby_version: !ruby/object:Gem::Requirement
171
186
  requirements:
172
- - - ! '>='
187
+ - - '>='
173
188
  - !ruby/object:Gem::Version
174
189
  version: '0'
175
190
  required_rubygems_version: !ruby/object:Gem::Requirement
176
191
  requirements:
177
- - - ! '>='
192
+ - - '>='
178
193
  - !ruby/object:Gem::Version
179
194
  version: '0'
180
195
  requirements: []
181
196
  rubyforge_project:
182
- rubygems_version: 2.1.11
197
+ rubygems_version: 2.0.3
183
198
  signing_key:
184
199
  specification_version: 4
185
200
  summary: Create an easy interface to talk with APIs