opushon 0.1.1 → 0.2
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 +0 -5
- data/.travis.yml +12 -3
- data/.yardopts +1 -0
- data/CODE_OF_CONDUCT.md +13 -0
- data/Gemfile +1 -0
- data/LICENSE.md +17 -18
- data/README.md +36 -3
- data/Rakefile +3 -2
- data/VERSION.semver +1 -1
- data/bin/console +7 -0
- data/bin/setup +5 -0
- data/lib/opushon/body.rb +35 -0
- data/lib/opushon/option.rb +22 -0
- data/lib/opushon/parameter.rb +52 -6
- data/lib/opushon/request.rb +19 -0
- data/lib/opushon/response.rb +17 -0
- data/lib/opushon/restricted_value.rb +4 -22
- data/lib/opushon.rb +23 -9
- data/opushon.gemspec +10 -6
- metadata +65 -68
- data/.coveralls.yml +0 -1
- data/.ruby-version +0 -1
- data/lib/opushon/error/base_error.rb +0 -6
- data/lib/opushon/error/min_is_greater_than_max_error.rb +0 -8
- data/lib/opushon/error/minlen_is_longer_than_maxlen_error.rb +0 -8
- data/lib/opushon/error/syntax_error.rb +0 -8
- data/lib/opushon/error/verb_error.rb +0 -8
- data/lib/opushon/error.rb +0 -3
- data/lib/opushon/instance.rb +0 -34
- data/lib/opushon/option_object.rb +0 -36
- data/lib/opushon/parameter/base.rb +0 -47
- data/lib/opushon/parameter/input.rb +0 -34
- data/lib/opushon/parameter/output.rb +0 -10
- data/lib/opushon/type/array.rb +0 -10
- data/lib/opushon/type/base.rb +0 -25
- data/lib/opushon/type/boolean.rb +0 -10
- data/lib/opushon/type/hash.rb +0 -10
- data/lib/opushon/type/number.rb +0 -29
- data/lib/opushon/type/string.rb +0 -32
- data/lib/opushon/type.rb +0 -10
- data/lib/opushon/verb/base.rb +0 -7
- data/lib/opushon/verb/delete.rb +0 -9
- data/lib/opushon/verb/get.rb +0 -9
- data/lib/opushon/verb/head.rb +0 -9
- data/lib/opushon/verb/patch.rb +0 -9
- data/lib/opushon/verb/post.rb +0 -9
- data/lib/opushon/verb/put.rb +0 -9
- data/lib/opushon/verb.rb +0 -9
- data/lib/opushon/version.rb +0 -9
- data/spec/opushon/parameter/input_spec.rb +0 -161
- data/spec/opushon/parameter/output_spec.rb +0 -108
- data/spec/opushon/parameter/spec_helper.rb +0 -1
- data/spec/opushon/restricted_value_spec.rb +0 -42
- data/spec/opushon/spec_helper.rb +0 -1
- data/spec/opushon/version_spec.rb +0 -9
- data/spec/opushon_spec.rb +0 -343
- data/spec/spec_helper.rb +0 -4
- data/spec/support/coverage.rb +0 -9
- data/spec/support/env.rb +0 -1
- data/spec/support/immutable.rb +0 -15
- data/spec/support.rb +0 -3
@@ -1,161 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Opushon::Parameter::Input do
|
4
|
-
subject do
|
5
|
-
Opushon::Parameter::Input
|
6
|
-
end
|
7
|
-
|
8
|
-
describe '.load' do
|
9
|
-
it 'MUST return the hash' do
|
10
|
-
params = {
|
11
|
-
foo: subject.new(title: 'Foo').to_h,
|
12
|
-
bar: subject.new(title: 'Bar').to_h
|
13
|
-
}
|
14
|
-
|
15
|
-
subject.load(params).must_equal({
|
16
|
-
foo: subject.new(title: 'Foo').to_h,
|
17
|
-
bar: subject.new(title: 'Bar').to_h
|
18
|
-
})
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe '.new' do
|
23
|
-
describe '#to_h' do
|
24
|
-
describe 'default params' do
|
25
|
-
describe 'default type' do
|
26
|
-
it 'MUST return the hash' do
|
27
|
-
o = subject.new
|
28
|
-
|
29
|
-
o.to_h.must_equal(title: '',
|
30
|
-
description: '',
|
31
|
-
type: :string,
|
32
|
-
nullifiable: true,
|
33
|
-
query_string: true,
|
34
|
-
restricted_values: nil,
|
35
|
-
minlen: nil,
|
36
|
-
maxlen: nil,
|
37
|
-
pattern: nil)
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
describe 'string type' do
|
42
|
-
it 'MUST return the hash' do
|
43
|
-
o = subject.new(type: 'string')
|
44
|
-
|
45
|
-
o.to_h.must_equal(title: '',
|
46
|
-
description: '',
|
47
|
-
type: :string,
|
48
|
-
nullifiable: true,
|
49
|
-
query_string: true,
|
50
|
-
restricted_values: nil,
|
51
|
-
minlen: nil,
|
52
|
-
maxlen: nil,
|
53
|
-
pattern: nil)
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
describe 'number type' do
|
58
|
-
it 'MUST return the hash' do
|
59
|
-
o = subject.new(type: 'number')
|
60
|
-
|
61
|
-
o.to_h.must_equal(title: '',
|
62
|
-
description: '',
|
63
|
-
type: :number,
|
64
|
-
nullifiable: true,
|
65
|
-
query_string: true,
|
66
|
-
restricted_values: nil,
|
67
|
-
min: nil,
|
68
|
-
max: nil)
|
69
|
-
end
|
70
|
-
end
|
71
|
-
|
72
|
-
describe 'boolean type' do
|
73
|
-
it 'MUST return the hash' do
|
74
|
-
o = subject.new(type: 'boolean')
|
75
|
-
|
76
|
-
o.to_h.must_equal(title: '',
|
77
|
-
description: '',
|
78
|
-
type: :boolean,
|
79
|
-
nullifiable: true,
|
80
|
-
query_string: true,
|
81
|
-
restricted_values: nil)
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
describe 'array type' do
|
86
|
-
it 'MUST return the hash' do
|
87
|
-
o = subject.new(type: 'array')
|
88
|
-
|
89
|
-
o.to_h.must_equal(title: '',
|
90
|
-
description: '',
|
91
|
-
type: :array,
|
92
|
-
nullifiable: true,
|
93
|
-
query_string: true,
|
94
|
-
restricted_values: nil)
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
describe 'hash type' do
|
99
|
-
it 'MUST return the hash' do
|
100
|
-
o = subject.new(type: 'hash')
|
101
|
-
|
102
|
-
o.to_h.must_equal(title: '',
|
103
|
-
description: '',
|
104
|
-
type: :hash,
|
105
|
-
nullifiable: true,
|
106
|
-
query_string: true,
|
107
|
-
restricted_values: nil)
|
108
|
-
end
|
109
|
-
end
|
110
|
-
end
|
111
|
-
end
|
112
|
-
|
113
|
-
describe 'random example' do
|
114
|
-
it 'MUST return the hash' do
|
115
|
-
o = subject.new(
|
116
|
-
description: 'State of the issues to return.',
|
117
|
-
type: 'boolean',
|
118
|
-
query_string: false,
|
119
|
-
nullifiable: true,
|
120
|
-
restricted_values: [
|
121
|
-
{
|
122
|
-
value: "open",
|
123
|
-
title: "Open"
|
124
|
-
},
|
125
|
-
{
|
126
|
-
value: "closed",
|
127
|
-
title: "Closed"
|
128
|
-
},
|
129
|
-
{
|
130
|
-
value: "all",
|
131
|
-
title: "All"
|
132
|
-
}
|
133
|
-
]
|
134
|
-
)
|
135
|
-
|
136
|
-
o.to_h.must_equal(title: '',
|
137
|
-
description: 'State of the issues to return.',
|
138
|
-
type: :boolean,
|
139
|
-
nullifiable: true,
|
140
|
-
query_string: false,
|
141
|
-
restricted_values: [
|
142
|
-
{
|
143
|
-
title: 'Open',
|
144
|
-
description: '',
|
145
|
-
value: 'open'
|
146
|
-
},
|
147
|
-
{
|
148
|
-
title: 'Closed',
|
149
|
-
description: '',
|
150
|
-
value: 'closed'
|
151
|
-
},
|
152
|
-
{
|
153
|
-
title: 'All',
|
154
|
-
description: '',
|
155
|
-
value: 'all'
|
156
|
-
}
|
157
|
-
])
|
158
|
-
end
|
159
|
-
end
|
160
|
-
end
|
161
|
-
end
|
@@ -1,108 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Opushon::Parameter::Output do
|
4
|
-
subject do
|
5
|
-
Opushon::Parameter::Output
|
6
|
-
end
|
7
|
-
|
8
|
-
describe '.load' do
|
9
|
-
it 'MUST return the hash' do
|
10
|
-
params = {
|
11
|
-
foo: subject.new(title: 'Foo').to_h,
|
12
|
-
bar: subject.new(title: 'Bar').to_h
|
13
|
-
}
|
14
|
-
|
15
|
-
subject.load(params).must_equal({
|
16
|
-
foo: subject.new(title: 'Foo').to_h,
|
17
|
-
bar: subject.new(title: 'Bar').to_h
|
18
|
-
})
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe '.new' do
|
23
|
-
describe '#to_h' do
|
24
|
-
describe 'default params' do
|
25
|
-
describe 'default type' do
|
26
|
-
it 'MUST return the hash' do
|
27
|
-
o = subject.new
|
28
|
-
|
29
|
-
o.to_h.must_equal(title: '',
|
30
|
-
description: '',
|
31
|
-
type: :string,
|
32
|
-
nullifiable: true)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
describe 'string type' do
|
37
|
-
it 'MUST return the hash' do
|
38
|
-
o = subject.new(type: 'string')
|
39
|
-
|
40
|
-
o.to_h.must_equal(title: '',
|
41
|
-
description: '',
|
42
|
-
type: :string,
|
43
|
-
nullifiable: true)
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
describe 'number type' do
|
48
|
-
it 'MUST return the hash' do
|
49
|
-
o = subject.new(type: 'number')
|
50
|
-
|
51
|
-
o.to_h.must_equal(title: '',
|
52
|
-
description: '',
|
53
|
-
type: :number,
|
54
|
-
nullifiable: true)
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
describe 'boolean type' do
|
59
|
-
it 'MUST return the hash' do
|
60
|
-
o = subject.new(type: 'boolean')
|
61
|
-
|
62
|
-
o.to_h.must_equal(title: '',
|
63
|
-
description: '',
|
64
|
-
type: :boolean,
|
65
|
-
nullifiable: true)
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
describe 'array type' do
|
70
|
-
it 'MUST return the hash' do
|
71
|
-
o = subject.new(type: 'array')
|
72
|
-
|
73
|
-
o.to_h.must_equal(title: '',
|
74
|
-
description: '',
|
75
|
-
type: :array,
|
76
|
-
nullifiable: true)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
describe 'hash type' do
|
81
|
-
it 'MUST return the hash' do
|
82
|
-
o = subject.new(type: 'hash')
|
83
|
-
|
84
|
-
o.to_h.must_equal(title: '',
|
85
|
-
description: '',
|
86
|
-
type: :hash,
|
87
|
-
nullifiable: true)
|
88
|
-
end
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
|
93
|
-
describe 'random example' do
|
94
|
-
it 'MUST return the hash' do
|
95
|
-
o = subject.new(
|
96
|
-
description: 'State of the issues to return.',
|
97
|
-
type: 'boolean',
|
98
|
-
nullifiable: true
|
99
|
-
)
|
100
|
-
|
101
|
-
o.to_h.must_equal(title: '',
|
102
|
-
description: 'State of the issues to return.',
|
103
|
-
type: :boolean,
|
104
|
-
nullifiable: true)
|
105
|
-
end
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
@@ -1 +0,0 @@
|
|
1
|
-
require_relative File.join(*%w(.. spec_helper))
|
@@ -1,42 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Opushon::RestrictedValue do
|
4
|
-
subject do
|
5
|
-
Opushon::RestrictedValue
|
6
|
-
end
|
7
|
-
|
8
|
-
describe 'passes' do
|
9
|
-
describe '#to_h' do
|
10
|
-
it 'MUST return the hash' do
|
11
|
-
subject.new(value: :foobar).to_h.must_equal({
|
12
|
-
title: '',
|
13
|
-
description: '',
|
14
|
-
value: :foobar
|
15
|
-
})
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
describe '#to_h' do
|
20
|
-
it 'MUST return the hash' do
|
21
|
-
subject.new(value: :foobar,
|
22
|
-
description: :foobar).to_h.must_equal({
|
23
|
-
title: '',
|
24
|
-
description: 'foobar',
|
25
|
-
value: :foobar
|
26
|
-
})
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
describe '#value' do
|
31
|
-
it 'MUST return the value' do
|
32
|
-
subject.new(value: :foobar).value.must_equal(:foobar)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
describe 'errors' do
|
38
|
-
it 'MUST raise without value' do
|
39
|
-
-> { subject.new(description: :foobar) }.must_raise(ArgumentError)
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
data/spec/opushon/spec_helper.rb
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
require_relative File.join(*%w(.. spec_helper))
|
data/spec/opushon_spec.rb
DELETED
@@ -1,343 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Opushon do
|
4
|
-
subject { Opushon }
|
5
|
-
|
6
|
-
describe '.load' do
|
7
|
-
let :opushon_string do
|
8
|
-
'{
|
9
|
-
"GET": {
|
10
|
-
"title": "List issues",
|
11
|
-
"description": "List all issues across all the authenticated user\'s visible repositories.",
|
12
|
-
"parameters": {
|
13
|
-
"input": {
|
14
|
-
"page": {
|
15
|
-
"type": "number",
|
16
|
-
"description": "Identify the page to return.",
|
17
|
-
"min": 1,
|
18
|
-
"max": null
|
19
|
-
},
|
20
|
-
"per_page": {
|
21
|
-
"type": "number",
|
22
|
-
"description": "Indicate the number of issues per page.",
|
23
|
-
"min": 1,
|
24
|
-
"max": 100
|
25
|
-
},
|
26
|
-
"state": {
|
27
|
-
"description": "Indicates the state of the issues to return.",
|
28
|
-
"restricted_values": [
|
29
|
-
{
|
30
|
-
"value": "open",
|
31
|
-
"title": "Open"
|
32
|
-
},
|
33
|
-
{
|
34
|
-
"value": "closed",
|
35
|
-
"title": "Closed"
|
36
|
-
},
|
37
|
-
{
|
38
|
-
"value": "all",
|
39
|
-
"title": "All"
|
40
|
-
}
|
41
|
-
],
|
42
|
-
"nullifiable": true
|
43
|
-
}
|
44
|
-
},
|
45
|
-
"output": {
|
46
|
-
"created_at": {
|
47
|
-
"type": "string",
|
48
|
-
"description": "The datetime that the resource was created at.",
|
49
|
-
"nullifiable": false
|
50
|
-
},
|
51
|
-
"title": {
|
52
|
-
"type": "string",
|
53
|
-
"description": "The title of the resource.",
|
54
|
-
"nullifiable": false
|
55
|
-
},
|
56
|
-
"body": {
|
57
|
-
"type": "string",
|
58
|
-
"description": "The body of the resource.",
|
59
|
-
"nullifiable": true
|
60
|
-
},
|
61
|
-
"state": {
|
62
|
-
"type": "string",
|
63
|
-
"description": "Indicates the state of the issue.",
|
64
|
-
"nullifiable": false
|
65
|
-
}
|
66
|
-
}
|
67
|
-
},
|
68
|
-
"examples": {
|
69
|
-
"input": null,
|
70
|
-
"output": [
|
71
|
-
{
|
72
|
-
"created_at": "2014-01-01T01:01:01Z",
|
73
|
-
"title": "Found a bug",
|
74
|
-
"body": "I\'m having a problem with this.",
|
75
|
-
"state": "open"
|
76
|
-
}
|
77
|
-
]
|
78
|
-
}
|
79
|
-
},
|
80
|
-
"POST": {
|
81
|
-
"title": "Create an issue",
|
82
|
-
"description": "Any user with pull access to a repository can create an issue.",
|
83
|
-
"parameters": {
|
84
|
-
"input": {
|
85
|
-
"title": {
|
86
|
-
"query_string": false,
|
87
|
-
"type": "string",
|
88
|
-
"description": "Issue title.",
|
89
|
-
"maxlen": 255,
|
90
|
-
"nullifiable": false
|
91
|
-
},
|
92
|
-
"body": {
|
93
|
-
"query_string": false,
|
94
|
-
"type": "string",
|
95
|
-
"description": "Issue body.",
|
96
|
-
"nullifiable": true
|
97
|
-
},
|
98
|
-
"labels": {
|
99
|
-
"query_string": false,
|
100
|
-
"type": "string",
|
101
|
-
"description": "Labels to associate with this issue.",
|
102
|
-
"nullifiable": true,
|
103
|
-
"restricted_values": [
|
104
|
-
{
|
105
|
-
"value": "label_1",
|
106
|
-
"title": "Java"
|
107
|
-
},
|
108
|
-
{
|
109
|
-
"value": "label_2",
|
110
|
-
"title": "Ruby"
|
111
|
-
},
|
112
|
-
{
|
113
|
-
"value": "label_3",
|
114
|
-
"title": "Elixir"
|
115
|
-
}
|
116
|
-
]
|
117
|
-
}
|
118
|
-
},
|
119
|
-
"output": null
|
120
|
-
},
|
121
|
-
"examples": {
|
122
|
-
"input": {
|
123
|
-
"title": "Found a bug",
|
124
|
-
"body": "I\'m having a problem with this.",
|
125
|
-
"labels": [
|
126
|
-
"label_1",
|
127
|
-
"label_2"
|
128
|
-
]
|
129
|
-
},
|
130
|
-
"output": null
|
131
|
-
}
|
132
|
-
},
|
133
|
-
"DELETE": {
|
134
|
-
"title": "Delete issues",
|
135
|
-
"description": "Remove every issues.",
|
136
|
-
"parameters": {
|
137
|
-
"input": null,
|
138
|
-
"output": null
|
139
|
-
},
|
140
|
-
"examples": {
|
141
|
-
"input": null,
|
142
|
-
"output": null
|
143
|
-
}
|
144
|
-
}
|
145
|
-
}'
|
146
|
-
end
|
147
|
-
|
148
|
-
describe '#to_h' do
|
149
|
-
it 'MUST load opushon having query_string and parameters' do
|
150
|
-
subject.load(opushon_string).to_h.must_equal({
|
151
|
-
:GET=>{
|
152
|
-
:title=>"List issues",
|
153
|
-
:description=>"List all issues across all the authenticated user's visible repositories.",
|
154
|
-
:parameters=>{
|
155
|
-
:input=>{
|
156
|
-
:page=>{
|
157
|
-
:query_string=>true,
|
158
|
-
:restricted_values=>nil,
|
159
|
-
:title=>"",
|
160
|
-
:description=>"Identify the page to return.",
|
161
|
-
:nullifiable=>true,
|
162
|
-
:type=>:number,
|
163
|
-
:min=>1,
|
164
|
-
:max=>nil
|
165
|
-
},
|
166
|
-
:per_page=>{
|
167
|
-
:query_string=>true,
|
168
|
-
:restricted_values=>nil,
|
169
|
-
:title=>"",
|
170
|
-
:description=>"Indicate the number of issues per page.",
|
171
|
-
:nullifiable=>true,
|
172
|
-
:type=>:number,
|
173
|
-
:min=>1,
|
174
|
-
:max=>100
|
175
|
-
},
|
176
|
-
:state=>{
|
177
|
-
:query_string=>true,
|
178
|
-
:restricted_values=>[
|
179
|
-
{
|
180
|
-
:title=>"Open",
|
181
|
-
:description=>"",
|
182
|
-
:value=>"open"
|
183
|
-
},
|
184
|
-
{
|
185
|
-
:title=>"Closed",
|
186
|
-
:description=>"",
|
187
|
-
:value=>"closed"
|
188
|
-
},
|
189
|
-
{
|
190
|
-
:title=>"All",
|
191
|
-
:description=>"",
|
192
|
-
:value=>"all"
|
193
|
-
}
|
194
|
-
],
|
195
|
-
:title=>"",
|
196
|
-
:description=>"Indicates the state of the issues to return.",
|
197
|
-
:nullifiable=>true,
|
198
|
-
:type=>:string,
|
199
|
-
:minlen=>nil,
|
200
|
-
:maxlen=>nil,
|
201
|
-
:pattern=>nil
|
202
|
-
}
|
203
|
-
},
|
204
|
-
:output=>{
|
205
|
-
:created_at=>{
|
206
|
-
:title=>"",
|
207
|
-
:description=>"The datetime that the resource was created at.",
|
208
|
-
:nullifiable=>false,
|
209
|
-
:type=>:string
|
210
|
-
},
|
211
|
-
:title=>{
|
212
|
-
:title=>"",
|
213
|
-
:description=>"The title of the resource.",
|
214
|
-
:nullifiable=>false,
|
215
|
-
:type=>:string
|
216
|
-
},
|
217
|
-
:body=>{
|
218
|
-
:title=>"",
|
219
|
-
:description=>"The body of the resource.",
|
220
|
-
:nullifiable=>true,
|
221
|
-
:type=>:string
|
222
|
-
},
|
223
|
-
:state=>{
|
224
|
-
:title=>"",
|
225
|
-
:description=>"Indicates the state of the issue.",
|
226
|
-
:nullifiable=>false,
|
227
|
-
:type=>:string
|
228
|
-
}
|
229
|
-
}
|
230
|
-
},
|
231
|
-
:examples=>{
|
232
|
-
:input=>nil,
|
233
|
-
:output=>[
|
234
|
-
{
|
235
|
-
:created_at=>"2014-01-01T01:01:01Z",
|
236
|
-
:title=>"Found a bug",
|
237
|
-
:body=>"I'm having a problem with this.",
|
238
|
-
:state=>"open"
|
239
|
-
}
|
240
|
-
]
|
241
|
-
}
|
242
|
-
},
|
243
|
-
:POST=>{
|
244
|
-
:title=>"Create an issue",
|
245
|
-
:description=>"Any user with pull access to a repository can create an issue.",
|
246
|
-
:parameters=>{
|
247
|
-
:input=>{
|
248
|
-
:title=>{
|
249
|
-
:query_string=>false,
|
250
|
-
:restricted_values=>nil,
|
251
|
-
:title=>"",
|
252
|
-
:description=>"Issue title.",
|
253
|
-
:nullifiable=>false,
|
254
|
-
:type=>:string,
|
255
|
-
:minlen=>nil,
|
256
|
-
:maxlen=>255,
|
257
|
-
:pattern=>nil
|
258
|
-
},
|
259
|
-
:body=>{
|
260
|
-
:query_string=>false,
|
261
|
-
:restricted_values=>nil,
|
262
|
-
:title=>"",
|
263
|
-
:description=>"Issue body.",
|
264
|
-
:nullifiable=>true,
|
265
|
-
:type=>:string,
|
266
|
-
:minlen=>nil,
|
267
|
-
:maxlen=>nil,
|
268
|
-
:pattern=>nil
|
269
|
-
},
|
270
|
-
:labels=>{
|
271
|
-
:query_string=>false,
|
272
|
-
:restricted_values=>[
|
273
|
-
{
|
274
|
-
:title=>"Java",
|
275
|
-
:description=>"",
|
276
|
-
:value=>"label_1"
|
277
|
-
},
|
278
|
-
{
|
279
|
-
:title=>"Ruby",
|
280
|
-
:description=>"",
|
281
|
-
:value=>"label_2"
|
282
|
-
},
|
283
|
-
{
|
284
|
-
:title=>"Elixir",
|
285
|
-
:description=>"",
|
286
|
-
:value=>"label_3"
|
287
|
-
}
|
288
|
-
],
|
289
|
-
:title=>"",
|
290
|
-
:description=>"Labels to associate with this issue.",
|
291
|
-
:nullifiable=>true,
|
292
|
-
:type=>:string,
|
293
|
-
:minlen=>nil,
|
294
|
-
:maxlen=>nil,
|
295
|
-
:pattern=>nil
|
296
|
-
}
|
297
|
-
},
|
298
|
-
:output=>nil
|
299
|
-
},
|
300
|
-
:examples=>{
|
301
|
-
:input=>{
|
302
|
-
:title=>"Found a bug",
|
303
|
-
:body=>"I'm having a problem with this.",
|
304
|
-
:labels=>[
|
305
|
-
"label_1",
|
306
|
-
"label_2"
|
307
|
-
]
|
308
|
-
},
|
309
|
-
:output=>nil
|
310
|
-
}
|
311
|
-
},
|
312
|
-
:DELETE=>{
|
313
|
-
:title=>"Delete issues",
|
314
|
-
:description=>"Remove every issues.",
|
315
|
-
:parameters=>{
|
316
|
-
:input=>nil,
|
317
|
-
:output=>nil
|
318
|
-
},
|
319
|
-
:examples=>{
|
320
|
-
:input=>nil,
|
321
|
-
:output=>nil
|
322
|
-
}
|
323
|
-
}
|
324
|
-
})
|
325
|
-
end
|
326
|
-
end
|
327
|
-
end
|
328
|
-
|
329
|
-
describe '.dump' do
|
330
|
-
it 'MUST dump Ruby object o to a Opushon string' do
|
331
|
-
JSON.load(
|
332
|
-
Opushon.dump({
|
333
|
-
DELETE: {
|
334
|
-
title: 'Delete issues',
|
335
|
-
description: 'Remove every issues.'
|
336
|
-
}
|
337
|
-
})
|
338
|
-
).must_equal(
|
339
|
-
JSON.load("{\"DELETE\":{\"title\":\"Delete issues\",\"description\":\"Remove every issues.\"}}")
|
340
|
-
)
|
341
|
-
end
|
342
|
-
end
|
343
|
-
end
|
data/spec/spec_helper.rb
DELETED
data/spec/support/coverage.rb
DELETED
data/spec/support/env.rb
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
abort "Needs Ruby 2, you're running: #{RUBY_VERSION}" if RUBY_VERSION < '2'
|