komoju 0.0.0 → 0.0.3
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 +4 -4
- data/.gitignore +2 -14
- data/.gitmodules +3 -0
- data/Gemfile.lock +34 -0
- data/LICENSE.txt +1 -1
- data/README.md +14 -2
- data/Rakefile +9 -0
- data/bin/generate-client +11 -0
- data/komoju.gemspec +15 -6
- data/lib/komoju/client.rb +460 -0
- data/lib/komoju/version.rb +1 -1
- data/lib/komoju.rb +10 -2
- data/test/client_test.rb +8 -0
- data/test/helper.rb +1 -0
- data/vendor/heroics/lib/heroics/cli.rb +88 -0
- data/vendor/heroics/lib/heroics/client.rb +109 -0
- data/vendor/heroics/lib/heroics/client_generator.rb +99 -0
- data/vendor/heroics/lib/heroics/command.rb +67 -0
- data/vendor/heroics/lib/heroics/errors.rb +6 -0
- data/vendor/heroics/lib/heroics/link.rb +120 -0
- data/vendor/heroics/lib/heroics/naming.rb +19 -0
- data/vendor/heroics/lib/heroics/resource.rb +30 -0
- data/vendor/heroics/lib/heroics/schema.rb +444 -0
- data/vendor/heroics/lib/heroics/version.rb +3 -0
- data/vendor/heroics/lib/heroics.rb +22 -0
- data/vendor/heroics/test/cli_test.rb +236 -0
- data/vendor/heroics/test/client_generator_test.rb +34 -0
- data/vendor/heroics/test/client_test.rb +215 -0
- data/vendor/heroics/test/command_test.rb +214 -0
- data/vendor/heroics/test/helper.rb +204 -0
- data/vendor/heroics/test/link_test.rb +398 -0
- data/vendor/heroics/test/naming_test.rb +45 -0
- data/vendor/heroics/test/resource_test.rb +35 -0
- data/vendor/heroics/test/schema_test.rb +287 -0
- data/vendor/heroics/test/version_test.rb +9 -0
- data/vendor/heroics/test.rb +42 -0
- metadata +139 -8
@@ -0,0 +1,287 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
class SchemaTest < MiniTest::Unit::TestCase
|
4
|
+
# Schema.to_s returns a simple human-readable description of the schema
|
5
|
+
# instance with the description embedded in it.
|
6
|
+
def test_to_s
|
7
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
8
|
+
assert_equal(
|
9
|
+
'#<Heroics::Schema description="Sample schema for use in tests.">',
|
10
|
+
schema.to_s)
|
11
|
+
end
|
12
|
+
|
13
|
+
# Schema.resource returns a ResourceSchema for the named resource.
|
14
|
+
def test_resource
|
15
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
16
|
+
assert_equal('resource', schema.resource('resource').name)
|
17
|
+
end
|
18
|
+
|
19
|
+
# Schema.resource raises a SchemaError is an unknown resource is requested.
|
20
|
+
def test_resource_with_unknown_name
|
21
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
22
|
+
error = assert_raises Heroics::SchemaError do
|
23
|
+
schema.resource('unknown-resource')
|
24
|
+
end
|
25
|
+
assert_equal("Unknown resource 'unknown-resource'.", error.message)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Schema.resources returns a sequence of ResourceSchema children.
|
29
|
+
def test_resources
|
30
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
31
|
+
assert_equal(['resource', 'another-resource'],
|
32
|
+
schema.resources.map(&:name))
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
class ResourceSchemaTest < MiniTest::Unit::TestCase
|
37
|
+
# ResourceSchema.link returns a LinkSchema for the named link.
|
38
|
+
def test_link
|
39
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
40
|
+
link = schema.resource('resource').link('list')
|
41
|
+
assert_equal('list', link.name)
|
42
|
+
end
|
43
|
+
|
44
|
+
# ResourceSchema.link raises a SchemaError is an unknown link is requested.
|
45
|
+
def test_link_with_unknown_name
|
46
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
47
|
+
error = assert_raises Heroics::SchemaError do
|
48
|
+
schema.resource('resource').link('unknown-link')
|
49
|
+
end
|
50
|
+
assert_equal("Unknown link 'unknown-link'.", error.message)
|
51
|
+
end
|
52
|
+
|
53
|
+
# ResourceSchema.links returns an array of LinkSchema children.
|
54
|
+
def test_links
|
55
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
56
|
+
assert_equal(
|
57
|
+
['list', 'info', 'identify_resource', 'create', 'submit', 'update', 'delete'],
|
58
|
+
schema.resource('resource').links.map { |link| link.name })
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
class LinkSchemaTest < MiniTest::Unit::TestCase
|
63
|
+
# LinkSchema.name returns the sanitized link name.
|
64
|
+
def test_name
|
65
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
66
|
+
assert_equal('list', schema.resource('resource').link('list').name)
|
67
|
+
end
|
68
|
+
|
69
|
+
# LinkSchema.resource_name returns the parent resource name.
|
70
|
+
def test_resource_name
|
71
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
72
|
+
assert_equal('resource',
|
73
|
+
schema.resource('resource').link('list').resource_name)
|
74
|
+
end
|
75
|
+
|
76
|
+
# LinkSchema.description returns the link description.
|
77
|
+
def test_description
|
78
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
79
|
+
assert_equal('Show all sample resources',
|
80
|
+
schema.resource('resource').link('list').description)
|
81
|
+
end
|
82
|
+
|
83
|
+
# LinkSchema.parameters returns an empty array if the link doesn't require
|
84
|
+
# parameters.
|
85
|
+
def test_parameters_without_parameters
|
86
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
87
|
+
link = schema.resource('resource').link('list')
|
88
|
+
assert_equal([], link.parameters)
|
89
|
+
end
|
90
|
+
|
91
|
+
# LinkSchema.parameters returns an array of named parameter required to
|
92
|
+
# invoke the link correctly.
|
93
|
+
def test_parameters
|
94
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
95
|
+
link = schema.resource('resource').link('info')
|
96
|
+
assert_equal(['uuid_field'], link.parameters)
|
97
|
+
end
|
98
|
+
|
99
|
+
# LinkSchema.parameters returns a parameter name for multiple parameters
|
100
|
+
# when the parameter contains a 'oneOf' element that references more than
|
101
|
+
# one parameter.
|
102
|
+
def test_parameters_with_one_of_field
|
103
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
104
|
+
link = schema.resource('resource').link('identify_resource')
|
105
|
+
assert_equal(['uuid_field|email_field'], link.parameters)
|
106
|
+
end
|
107
|
+
|
108
|
+
# LinkSchema.parameter_details returns an empty array if the link doesn't
|
109
|
+
# require parameters.
|
110
|
+
def test_parameter_details_without_parameters
|
111
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
112
|
+
link = schema.resource('another-resource').link('create')
|
113
|
+
assert_equal([], link.parameter_details)
|
114
|
+
end
|
115
|
+
|
116
|
+
# LinkSchema.parameter_details returns an options parameter if the
|
117
|
+
# link is for a collection of instances.
|
118
|
+
def test_parameter_details_with_collection_options_parameter
|
119
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
120
|
+
link = schema.resource('resource').link('list')
|
121
|
+
parameters = link.parameter_details
|
122
|
+
parameter = parameters[0]
|
123
|
+
assert_equal('collection_options', parameter.name)
|
124
|
+
assert_equal('collection_options = {}', parameter.signature)
|
125
|
+
assert_equal('additional collection options to pass with the request', parameter.description)
|
126
|
+
end
|
127
|
+
|
128
|
+
# LinkSchema.parameter_details returns an array of Parameter with information
|
129
|
+
# about the parameters accepted by the link.
|
130
|
+
def test_parameter_details
|
131
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
132
|
+
link = schema.resource('resource').link('info')
|
133
|
+
parameters = link.parameter_details
|
134
|
+
assert_equal(1, parameters.length)
|
135
|
+
parameter = parameters[0]
|
136
|
+
assert_equal('resource_uuid_field', parameter.name)
|
137
|
+
assert_equal('resource_uuid_field', parameter.signature)
|
138
|
+
assert_equal('A sample UUID field', parameter.description)
|
139
|
+
end
|
140
|
+
|
141
|
+
# LinkSchema.parameter_details returns an array of ParameterChoices, when
|
142
|
+
# more than one value may be used with a property, with information about
|
143
|
+
# the parameters accepted by the link.
|
144
|
+
def test_parameter_details_with_one_of_field
|
145
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
146
|
+
link = schema.resource('resource').link('identify_resource')
|
147
|
+
parameters = link.parameter_details
|
148
|
+
assert_equal(1, parameters.length)
|
149
|
+
parameter = parameters[0]
|
150
|
+
assert_equal('resource_uuid_field_or_resource_email_field', parameter.name)
|
151
|
+
assert_equal('resource_uuid_field_or_resource_email_field', parameter.signature)
|
152
|
+
assert_equal('A sample UUID field or A sample email address field',
|
153
|
+
parameter.description)
|
154
|
+
end
|
155
|
+
|
156
|
+
# LinkSchema.body returns nil if the link doesn't accept a request body.
|
157
|
+
def test_example_body_without_body
|
158
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
159
|
+
link = schema.resource('resource').link('info')
|
160
|
+
assert_equal(nil, link.example_body)
|
161
|
+
end
|
162
|
+
|
163
|
+
# LinkSchema.body returns a sample body generated from the properties and
|
164
|
+
# embedded examples.
|
165
|
+
def test_example_body
|
166
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
167
|
+
link = schema.resource('resource').link('create')
|
168
|
+
assert_equal({'date_field' => '2013-10-19 22:10:29Z',
|
169
|
+
'string_field' => 'Sample text.',
|
170
|
+
'boolean_field' => true,
|
171
|
+
'uuid_field' => '44724831-bf66-4bc2-865f-e2c4c2b14c78',
|
172
|
+
'email_field' => 'username@example.com'},
|
173
|
+
link.example_body)
|
174
|
+
end
|
175
|
+
|
176
|
+
# LinkSchema.format_path converts an array of parameters into a path.
|
177
|
+
def test_format_path
|
178
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
179
|
+
link = schema.resource('resource').link('info')
|
180
|
+
assert_equal(['/resource/44724831-bf66-4bc2-865f-e2c4c2b14c78', nil],
|
181
|
+
link.format_path(['44724831-bf66-4bc2-865f-e2c4c2b14c78']))
|
182
|
+
end
|
183
|
+
|
184
|
+
# LinkSchema.format_path escapes special URL characters in parameters.
|
185
|
+
def test_format_path_with_illegal_literals
|
186
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
187
|
+
link = schema.resource('resource').link('info')
|
188
|
+
assert_equal(['/resource/foobar%25', nil],
|
189
|
+
link.format_path(['foobar%']))
|
190
|
+
end
|
191
|
+
|
192
|
+
# LinkSchema.format_path correctly returns a parameter as a body if a path
|
193
|
+
# doesn't have any parameters.
|
194
|
+
def test_format_path_with_body
|
195
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
196
|
+
link = schema.resource('resource').link('create')
|
197
|
+
assert_equal(['/resource', {'new' => 'resource'}],
|
198
|
+
link.format_path([{'new' => 'resource'}]))
|
199
|
+
end
|
200
|
+
|
201
|
+
# LinkSchema.format_path correctly returns a parameter as a body if a path
|
202
|
+
# doesn't have any parameters.
|
203
|
+
def test_format_path_with_path_and_body
|
204
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
205
|
+
link = schema.resource('resource').link('update')
|
206
|
+
assert_equal(['/resource/44724831-bf66-4bc2-865f-e2c4c2b14c78',
|
207
|
+
{'new' => 'resource'}],
|
208
|
+
link.format_path(['44724831-bf66-4bc2-865f-e2c4c2b14c78',
|
209
|
+
{'new' => 'resource'}]))
|
210
|
+
end
|
211
|
+
|
212
|
+
# LinkSchema.format_path raises an ArgumentError if too few parameters are
|
213
|
+
# provided
|
214
|
+
def test_format_path_with_too_few_parameters
|
215
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
216
|
+
link = schema.resource('resource').link('info')
|
217
|
+
error = assert_raises ArgumentError do
|
218
|
+
link.format_path([])
|
219
|
+
end
|
220
|
+
assert_equal('wrong number of arguments (0 for 1)', error.message)
|
221
|
+
end
|
222
|
+
|
223
|
+
# LinkSchema.format_path raises an ArgumentError if too many parameters are
|
224
|
+
# provided
|
225
|
+
def test_format_path_with_too_many_parameters
|
226
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
227
|
+
link = schema.resource('resource').link('info')
|
228
|
+
error = assert_raises ArgumentError do
|
229
|
+
link.format_path(['too', 'many', 'parameters'])
|
230
|
+
end
|
231
|
+
assert_equal('wrong number of arguments (3 for 1)', error.message)
|
232
|
+
end
|
233
|
+
|
234
|
+
# LinkSchema.pretty_resource_name returns the resource name in a pretty
|
235
|
+
# form, with underscores converted to dashes.
|
236
|
+
def test_pretty_resource_name
|
237
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
238
|
+
link = schema.resource('another-resource').link('list')
|
239
|
+
assert_equal('another-resource', link.pretty_resource_name)
|
240
|
+
end
|
241
|
+
|
242
|
+
# LinkSchema.pretty_name returns the link name in a pretty form, with
|
243
|
+
# underscores converted to dashes.
|
244
|
+
def test_pretty_resource_name
|
245
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
246
|
+
link = schema.resource('resource').link('identify_resource')
|
247
|
+
assert_equal('identify-resource', link.pretty_name)
|
248
|
+
end
|
249
|
+
|
250
|
+
# LinkSchema.content_type returns the media type associated with this
|
251
|
+
# resource.
|
252
|
+
def test_content_type
|
253
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
254
|
+
link = schema.resource('resource').link('submit')
|
255
|
+
assert_equal('application/x-www-form-urlencoded', link.content_type)
|
256
|
+
end
|
257
|
+
|
258
|
+
# The content type should default to application/json
|
259
|
+
def test_default_content_type
|
260
|
+
schema = Heroics::Schema.new(SAMPLE_SCHEMA)
|
261
|
+
link = schema.resource('resource').link('identify_resource')
|
262
|
+
assert_equal('application/json', link.content_type)
|
263
|
+
end
|
264
|
+
end
|
265
|
+
|
266
|
+
class DownloadSchemaTest < MiniTest::Unit::TestCase
|
267
|
+
include ExconHelper
|
268
|
+
|
269
|
+
# download_schema makes a request to fetch the schema, decodes the
|
270
|
+
# downloaded JSON and returns a Ruby hash.
|
271
|
+
def test_download_schema
|
272
|
+
Excon.stub(method: :get) do |request|
|
273
|
+
assert_equal('example.com', request[:host])
|
274
|
+
assert_equal('/schema', request[:path])
|
275
|
+
assert_equal('application/vnd.heroku+json; version=3',
|
276
|
+
request[:headers]['Accept'])
|
277
|
+
Excon.stubs.pop
|
278
|
+
{status: 200, headers: {'Content-Type' => 'application/json'},
|
279
|
+
body: MultiJson.dump(SAMPLE_SCHEMA)}
|
280
|
+
end
|
281
|
+
|
282
|
+
schema = Heroics::download_schema(
|
283
|
+
'https://username:token@example.com/schema',
|
284
|
+
default_headers: {'Accept' => 'application/vnd.heroku+json; version=3'})
|
285
|
+
assert_equal(SAMPLE_SCHEMA, schema.schema)
|
286
|
+
end
|
287
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'netrc'
|
2
|
+
|
3
|
+
_, token = Netrc.read['api.heroku.com']
|
4
|
+
|
5
|
+
require './lib/heroics'
|
6
|
+
|
7
|
+
heroics = Heroics.new(
|
8
|
+
:cache => Heroics::FileCache.new(token),
|
9
|
+
:token => token
|
10
|
+
)
|
11
|
+
|
12
|
+
heroics.apps.list
|
13
|
+
apps = heroics.apps.list # should use cache
|
14
|
+
puts(apps)
|
15
|
+
puts
|
16
|
+
|
17
|
+
app = heroics.apps.info('stringer-geemus')
|
18
|
+
puts(app)
|
19
|
+
puts
|
20
|
+
|
21
|
+
puts(heroics.apps('stringer-geemus'))
|
22
|
+
puts
|
23
|
+
|
24
|
+
collaborators = app.collaborators.list
|
25
|
+
puts(collaborators)
|
26
|
+
puts
|
27
|
+
|
28
|
+
collaborator_id = collaborators.first.id
|
29
|
+
collaborator = app.collaborators.info(collaborator_id)
|
30
|
+
puts(collaborator)
|
31
|
+
puts
|
32
|
+
|
33
|
+
regions = heroics.regions.list
|
34
|
+
puts(regions)
|
35
|
+
puts
|
36
|
+
|
37
|
+
region_id = regions.first.id
|
38
|
+
puts(heroics.regions.info(region_id))
|
39
|
+
puts
|
40
|
+
|
41
|
+
puts(heroics.regions(region_id))
|
42
|
+
puts
|
metadata
CHANGED
@@ -1,15 +1,85 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: komoju
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Richard Ramsden
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-11-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: erubis
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '2.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: excon
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: moneta
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: multi_json
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 1.9.2
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 1.9.2
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: netrc
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
13
83
|
- !ruby/object:Gem::Dependency
|
14
84
|
name: bundler
|
15
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,22 +108,79 @@ dependencies:
|
|
38
108
|
- - "~>"
|
39
109
|
- !ruby/object:Gem::Version
|
40
110
|
version: '10.0'
|
41
|
-
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: minitest
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 4.7.5
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 4.7.5
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: turn
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
description: These are the ruby bindings for the Komoju API
|
42
140
|
email:
|
43
|
-
- rramsden
|
44
|
-
executables:
|
141
|
+
- richard@rramsden.ca
|
142
|
+
executables:
|
143
|
+
- generate-client
|
45
144
|
extensions: []
|
46
145
|
extra_rdoc_files: []
|
47
146
|
files:
|
48
147
|
- ".gitignore"
|
148
|
+
- ".gitmodules"
|
49
149
|
- Gemfile
|
150
|
+
- Gemfile.lock
|
50
151
|
- LICENSE.txt
|
51
152
|
- README.md
|
52
153
|
- Rakefile
|
154
|
+
- bin/generate-client
|
53
155
|
- komoju.gemspec
|
54
156
|
- lib/komoju.rb
|
157
|
+
- lib/komoju/client.rb
|
55
158
|
- lib/komoju/version.rb
|
56
|
-
|
159
|
+
- test/client_test.rb
|
160
|
+
- test/helper.rb
|
161
|
+
- vendor/heroics/lib/heroics.rb
|
162
|
+
- vendor/heroics/lib/heroics/cli.rb
|
163
|
+
- vendor/heroics/lib/heroics/client.rb
|
164
|
+
- vendor/heroics/lib/heroics/client_generator.rb
|
165
|
+
- vendor/heroics/lib/heroics/command.rb
|
166
|
+
- vendor/heroics/lib/heroics/errors.rb
|
167
|
+
- vendor/heroics/lib/heroics/link.rb
|
168
|
+
- vendor/heroics/lib/heroics/naming.rb
|
169
|
+
- vendor/heroics/lib/heroics/resource.rb
|
170
|
+
- vendor/heroics/lib/heroics/schema.rb
|
171
|
+
- vendor/heroics/lib/heroics/version.rb
|
172
|
+
- vendor/heroics/test.rb
|
173
|
+
- vendor/heroics/test/cli_test.rb
|
174
|
+
- vendor/heroics/test/client_generator_test.rb
|
175
|
+
- vendor/heroics/test/client_test.rb
|
176
|
+
- vendor/heroics/test/command_test.rb
|
177
|
+
- vendor/heroics/test/helper.rb
|
178
|
+
- vendor/heroics/test/link_test.rb
|
179
|
+
- vendor/heroics/test/naming_test.rb
|
180
|
+
- vendor/heroics/test/resource_test.rb
|
181
|
+
- vendor/heroics/test/schema_test.rb
|
182
|
+
- vendor/heroics/test/version_test.rb
|
183
|
+
homepage: https://komoju.com
|
57
184
|
licenses:
|
58
185
|
- MIT
|
59
186
|
metadata: {}
|
@@ -61,6 +188,7 @@ post_install_message:
|
|
61
188
|
rdoc_options: []
|
62
189
|
require_paths:
|
63
190
|
- lib
|
191
|
+
- vendor/heroics/lib
|
64
192
|
required_ruby_version: !ruby/object:Gem::Requirement
|
65
193
|
requirements:
|
66
194
|
- - ">="
|
@@ -76,5 +204,8 @@ rubyforge_project:
|
|
76
204
|
rubygems_version: 2.2.2
|
77
205
|
signing_key:
|
78
206
|
specification_version: 4
|
79
|
-
summary: Ruby
|
80
|
-
test_files:
|
207
|
+
summary: Komoju Ruby Bindings
|
208
|
+
test_files:
|
209
|
+
- test/client_test.rb
|
210
|
+
- test/helper.rb
|
211
|
+
has_rdoc:
|