trello-client 0.0.3 → 0.0.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.
- data/History.rdoc +5 -0
- data/README.rdoc +21 -4
- data/Rakefile +4 -2
- data/lib/trello-client.rb +37 -4
- data/lib/trello-client/card.rb +36 -0
- data/lib/trello-client/list.rb +5 -6
- data/lib/trello-client/version.rb +1 -1
- data/test/data/list.json +1 -0
- data/test/data/list_with_cards.json +1 -0
- data/test/test_client.rb +63 -0
- data/test/test_list.rb +71 -0
- metadata +25 -18
data/History.rdoc
CHANGED
data/README.rdoc
CHANGED
@@ -46,7 +46,6 @@ Get user token:
|
|
46
46
|
|
47
47
|
# Get board with lists
|
48
48
|
client.board( '<identifier>', :lists => 'all' ) do |b|
|
49
|
-
# Returns Trello::Client::Board object
|
50
49
|
b.lists.each do |l|
|
51
50
|
# Returns Trello::Client::List object
|
52
51
|
l['id'] # => list identifier
|
@@ -54,6 +53,26 @@ Get user token:
|
|
54
53
|
l['name'] # => list name
|
55
54
|
end
|
56
55
|
end
|
56
|
+
|
57
|
+
# Get list
|
58
|
+
client.list( '<identifier>' ) do |l|
|
59
|
+
# Returns Trello::Client::List object
|
60
|
+
l['id'] # => list identifier
|
61
|
+
l['idBoard'] # => list board identifier
|
62
|
+
l['name'] # => list name
|
63
|
+
end
|
64
|
+
|
65
|
+
# Get list with cards
|
66
|
+
client.list( '<identifier>' ) do |l|
|
67
|
+
l.cards.each do |c|
|
68
|
+
# Returns Trello::Client::Card object
|
69
|
+
c['id'] # => card identifier
|
70
|
+
c['idBoard'] # => card board identifier
|
71
|
+
c['idList'] # => card list identifier
|
72
|
+
c['name'] # => card name
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
57
76
|
end
|
58
77
|
|
59
78
|
== Author
|
@@ -70,10 +89,8 @@ https://github.com/blairc/trello-client/
|
|
70
89
|
|
71
90
|
== To Do
|
72
91
|
|
73
|
-
* Trello::Client#list()
|
74
|
-
* Get cards
|
75
92
|
* Memoize API calls
|
76
93
|
* Add script
|
77
|
-
* DRY +Board+, +List+ and +Member+
|
94
|
+
* DRY +Card+, +Board+, +List+ and +Member+
|
78
95
|
* Lazy fetching of data that wasn't requested?
|
79
96
|
|
data/Rakefile
CHANGED
@@ -34,8 +34,10 @@ task :update_test_data do
|
|
34
34
|
client.api_token = ENV['TRELLO_API_TOKEN']
|
35
35
|
|
36
36
|
{
|
37
|
-
'board' => [ :board,
|
38
|
-
'board_with_lists' => [ :board,
|
37
|
+
'board' => [ :board, '4f4f9d55cf2e679318098c5b' ],
|
38
|
+
'board_with_lists' => [ :board, '4f4f9d55cf2e679318098c5b', :lists => 'all' ],
|
39
|
+
'list' => [ :list, '4f4f9d55cf2e679318098c53' ],
|
40
|
+
'list_with_cards' => [ :list, '4f4f9d55cf2e679318098c53', :cards => 'all' ],
|
39
41
|
'member' => [ :member, 'me' ],
|
40
42
|
'member_with_boards' => [ :member, 'me', :boards => 'all' ]
|
41
43
|
}.each_pair do |file, request|
|
data/lib/trello-client.rb
CHANGED
@@ -5,6 +5,7 @@ require 'open-uri'
|
|
5
5
|
require 'uri'
|
6
6
|
|
7
7
|
require 'trello-client/board'
|
8
|
+
require 'trello-client/card'
|
8
9
|
require 'trello-client/list'
|
9
10
|
require 'trello-client/member'
|
10
11
|
require 'trello-client/version'
|
@@ -58,7 +59,6 @@ require 'trello-client/version'
|
|
58
59
|
#
|
59
60
|
# # Get board with lists
|
60
61
|
# client.board( '<identifier>', :lists => 'all' ) do |b|
|
61
|
-
# # Returns Trello::Client::Board object
|
62
62
|
# b.lists.each do |l|
|
63
63
|
# # Returns Trello::Client::List object
|
64
64
|
# l['id'] # => list identifier
|
@@ -66,6 +66,26 @@ require 'trello-client/version'
|
|
66
66
|
# l['name'] # => list name
|
67
67
|
# end
|
68
68
|
# end
|
69
|
+
#
|
70
|
+
# # Get list
|
71
|
+
# client.list( '<identifier>' ) do |l|
|
72
|
+
# # Returns Trello::Client::List object
|
73
|
+
# l['id'] # => list identifier
|
74
|
+
# l['idBoard'] # => list board identifier
|
75
|
+
# l['name'] # => list name
|
76
|
+
# end
|
77
|
+
#
|
78
|
+
# # Get list with cards
|
79
|
+
# client.list( '<identifier>' ) do |l|
|
80
|
+
# l.cards.each do |c|
|
81
|
+
# # Returns Trello::Client::Card object
|
82
|
+
# c['id'] # => card identifier
|
83
|
+
# c['idBoard'] # => card board identifier
|
84
|
+
# c['idList'] # => card list identifier
|
85
|
+
# c['name'] # => card name
|
86
|
+
# end
|
87
|
+
# end
|
88
|
+
#
|
69
89
|
# end
|
70
90
|
#
|
71
91
|
# == Author
|
@@ -82,11 +102,9 @@ require 'trello-client/version'
|
|
82
102
|
#
|
83
103
|
# == To Do
|
84
104
|
#
|
85
|
-
# * Trello::Client#list()
|
86
|
-
# * Get cards
|
87
105
|
# * Memoize API calls
|
88
106
|
# * Add script
|
89
|
-
# * DRY +Board+, +List+ and +Member+
|
107
|
+
# * DRY +Card+, +Board+, +List+ and +Member+
|
90
108
|
# * Lazy fetching of data that wasn't requested?
|
91
109
|
#
|
92
110
|
module Trello # :nodoc:
|
@@ -136,6 +154,21 @@ module Trello # :nodoc:
|
|
136
154
|
Trello::Client::Board.new( _get( "#{api}/board/#{id}", options ) )
|
137
155
|
end
|
138
156
|
|
157
|
+
#
|
158
|
+
# Get Trello::Client::List object
|
159
|
+
#
|
160
|
+
# See https://trello.com/docs/api/list/index.html
|
161
|
+
#
|
162
|
+
# Params:
|
163
|
+
# +id+:: List identifier
|
164
|
+
# +options+:: (optional) Additional API parameters
|
165
|
+
#
|
166
|
+
def list(id, options = {} )
|
167
|
+
raise('invalid id') if id.nil? || id.empty?
|
168
|
+
Trello::Client::Member.new( _get( "#{api}/list/#{id}", options ) )
|
169
|
+
end
|
170
|
+
|
171
|
+
|
139
172
|
#
|
140
173
|
# Get Trello::Client::Member object
|
141
174
|
#
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Trello # :nodoc:
|
4
|
+
class Client # :nodoc:
|
5
|
+
|
6
|
+
#
|
7
|
+
# Trello::Client::Card object
|
8
|
+
#
|
9
|
+
# See https://trello.com/docs/api/card/index.html
|
10
|
+
#
|
11
|
+
class Card
|
12
|
+
|
13
|
+
#
|
14
|
+
# Initialize Trello::Client::Card
|
15
|
+
#
|
16
|
+
# Params:
|
17
|
+
# +card+:: Hash'ified JSON card or JSON string
|
18
|
+
#
|
19
|
+
def initialize(card)
|
20
|
+
@card = card.kind_of?(Hash) ? card : MultiJson.decode(card)
|
21
|
+
yield self if block_given?
|
22
|
+
self
|
23
|
+
end
|
24
|
+
|
25
|
+
#
|
26
|
+
# Get Trello::Client::Card property
|
27
|
+
#
|
28
|
+
def[](key)
|
29
|
+
@card[key]
|
30
|
+
end
|
31
|
+
|
32
|
+
end # class Card
|
33
|
+
|
34
|
+
end # class Client
|
35
|
+
end # module Trello
|
36
|
+
|
data/lib/trello-client/list.rb
CHANGED
@@ -30,14 +30,13 @@ module Trello # :nodoc:
|
|
30
30
|
end
|
31
31
|
|
32
32
|
#
|
33
|
-
#
|
33
|
+
# Get +Array+ of Trello::Client::Card objects
|
34
34
|
#
|
35
35
|
def cards
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
@list['cards'] || []
|
36
|
+
unless @lists
|
37
|
+
@cards = ( @list['cards'] || [] ).collect { |c| Trello::Client::Card.new(c) }
|
38
|
+
end
|
39
|
+
@cards
|
41
40
|
end
|
42
41
|
|
43
42
|
end # class List
|
data/test/data/list.json
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"id":"4f4f9d55cf2e679318098c53","name":"Basics","closed":false,"idBoard":"4f4f9d55cf2e679318098c5b","pos":16384}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"id":"4f4f9d55cf2e679318098c53","name":"Basics","closed":false,"idBoard":"4f4f9d55cf2e679318098c5b","pos":16384,"cards":[{"id":"4f4f9d56cf2e679318098ca3","name":"Welcome to Trello!","desc":"","closed":false,"idShort":1,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/welcome-to-trello/4f4f9d55cf2e679318098c5b/1","attachments":[],"labels":[],"badges":{"votes":0,"viewingMemberVoted":false,"due":null,"description":false,"attachments":0,"comments":0,"checkItemsChecked":0,"checkItems":0,"fogbugz":""},"pos":65536,"idChecklists":[],"checkItemStates":[]},{"id":"4f4f9d55cf2e679318098c7f","name":"This is a card.","desc":"People can vote on cards.","closed":false,"idShort":2,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/this-is-a-card/4f4f9d55cf2e679318098c5b/2","attachments":[],"labels":[],"badges":{"votes":1,"viewingMemberVoted":false,"due":null,"description":true,"attachments":0,"comments":0,"checkItemsChecked":0,"checkItems":0,"fogbugz":""},"pos":131072,"idChecklists":[],"checkItemStates":[]},{"id":"4f4f9d56cf2e679318098ca6","name":"Click on a card to see what's behind it.","desc":"You can put a detailed description here...","closed":false,"idShort":3,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/click-on-a-card-to-see-what-s-behind-it/4f4f9d55cf2e679318098c5b/3","attachments":[],"labels":[],"badges":{"votes":0,"viewingMemberVoted":false,"due":null,"description":true,"attachments":0,"comments":1,"checkItemsChecked":0,"checkItems":0,"fogbugz":""},"pos":196608,"idChecklists":[],"checkItemStates":[]},{"id":"4f4f9d56cf2e679318098cab","name":"You can attach pictures and files...","desc":"This is Taco, the most famous Siberian Husky in New York City.","closed":false,"idShort":4,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/you-can-attach-pictures-and-files/4f4f9d55cf2e679318098c5b/4","attachments":[{"_id":"4f4f9d56cf2e679318098caa","bytes":52566,"date":"2011-09-09T21:11:21.104Z","url":"https://trello-attachments.s3.amazonaws.com/4e6a8095efa69909ba007382/4e6a80e8efa69909ba007596/stnx5HjpZNWPO3ex/6-9-2010_10-33-30_AM.png","name":"6-9-2010_10-33-30_AM.png","idMember":"4e6a7fad05d98b02ba00845c"}],"labels":[],"badges":{"votes":0,"viewingMemberVoted":false,"due":null,"description":true,"attachments":1,"comments":0,"checkItemsChecked":0,"checkItems":0,"fogbugz":""},"pos":262144,"idChecklists":[],"checkItemStates":[]},{"id":"4f4f9d56cf2e679318098c9d","name":"... any kind of hyperlink ...","desc":"","closed":false,"idShort":5,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/any-kind-of-hyperlink/4f4f9d55cf2e679318098c5b/5","attachments":[],"labels":[],"badges":{"votes":0,"viewingMemberVoted":false,"due":null,"description":false,"attachments":0,"comments":1,"checkItemsChecked":0,"checkItems":0,"fogbugz":""},"pos":327680,"idChecklists":[],"checkItemStates":[]},{"id":"4f4f9d56cf2e679318098cb1","name":"... or checklists.","desc":"","closed":false,"idShort":6,"idList":"4f4f9d55cf2e679318098c53","idBoard":"4f4f9d55cf2e679318098c5b","idMembers":[],"url":"https://trello.com/card/or-checklists/4f4f9d55cf2e679318098c5b/6","attachments":[],"labels":[],"badges":{"votes":0,"viewingMemberVoted":false,"due":null,"description":false,"attachments":0,"comments":0,"checkItemsChecked":1,"checkItems":3,"fogbugz":""},"pos":393216,"idChecklists":["4f4f9d55cf2e679318098c59"],"checkItemStates":[{"_id":"4f4f9d56cf2e679318098cb0","idCheckItem":"4f4f9d55cf2e679318098c56","state":"complete"}]}]}
|
data/test/test_client.rb
CHANGED
@@ -110,6 +110,69 @@ class TestClient < Test::Unit::TestCase
|
|
110
110
|
end
|
111
111
|
end
|
112
112
|
|
113
|
+
def test_list_parameter_validation
|
114
|
+
Trello::Client.new do |client|
|
115
|
+
assert_raise(RuntimeError, 'invalid id') { client.list(nil) }
|
116
|
+
assert_raise(RuntimeError, 'invalid id') { client.list('') }
|
117
|
+
|
118
|
+
assert_nil client.api_key
|
119
|
+
assert_raise(RuntimeError, 'invalid API key') { client.list('me') }
|
120
|
+
client.api_key = ''
|
121
|
+
assert_equal '', client.api_key
|
122
|
+
assert_raise(RuntimeError, 'invalid API key') { client.list('me') }
|
123
|
+
client.api_key = @api_key
|
124
|
+
assert_equal @api_key, client.api_key
|
125
|
+
|
126
|
+
assert_nil client.api_token
|
127
|
+
assert_raise(RuntimeError, 'invalid API token') { client.list('me') }
|
128
|
+
client.api_token = ''
|
129
|
+
assert_equal '', client.api_token
|
130
|
+
assert_raise(RuntimeError, 'invalid API token') { client.list('me') }
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
def test_list
|
135
|
+
Trello::Client.new do |client|
|
136
|
+
json = open( File.join( @test_data, 'list.json' ) ).read
|
137
|
+
l = Trello::Client::List.new(json)
|
138
|
+
client.stubs(:list).with('id').returns(l)
|
139
|
+
|
140
|
+
assert_not_nil l
|
141
|
+
assert_kind_of Trello::Client::List, l
|
142
|
+
|
143
|
+
assert_equal '4f4f9d55cf2e679318098c53', l['id']
|
144
|
+
assert_equal 'Basics', l['name']
|
145
|
+
assert_equal false, l['closed']
|
146
|
+
assert_equal '4f4f9d55cf2e679318098c5b', l['idBoard']
|
147
|
+
assert_equal 16384, l['pos']
|
148
|
+
|
149
|
+
assert_not_nil l.cards
|
150
|
+
assert_kind_of Array, l.cards
|
151
|
+
assert_equal 0, l.cards.size
|
152
|
+
end
|
153
|
+
end
|
154
|
+
|
155
|
+
def test_list_with_boards
|
156
|
+
Trello::Client.new do |client|
|
157
|
+
json = open( File.join( @test_data, 'list_with_cards.json' ) ).read
|
158
|
+
l = Trello::Client::List.new(json)
|
159
|
+
client.stubs(:list).with('id').returns(l)
|
160
|
+
|
161
|
+
assert_not_nil l
|
162
|
+
assert_kind_of Trello::Client::List, l
|
163
|
+
|
164
|
+
assert_equal '4f4f9d55cf2e679318098c53', l['id']
|
165
|
+
assert_equal 'Basics', l['name']
|
166
|
+
assert_equal false, l['closed']
|
167
|
+
assert_equal '4f4f9d55cf2e679318098c5b', l['idBoard']
|
168
|
+
assert_equal 16384, l['pos']
|
169
|
+
|
170
|
+
assert_not_nil l.cards
|
171
|
+
assert_kind_of Array, l.cards
|
172
|
+
assert_equal 6, l.cards.size
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
113
176
|
def test_member_parameter_validation
|
114
177
|
Trello::Client.new do |client|
|
115
178
|
assert_raise(RuntimeError, 'invalid id') { client.member(nil) }
|
data/test/test_list.rb
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'simplecov'
|
4
|
+
SimpleCov.start
|
5
|
+
|
6
|
+
require 'fakeweb'
|
7
|
+
require 'trello-client'
|
8
|
+
require 'test/unit'
|
9
|
+
|
10
|
+
|
11
|
+
class TestList < Test::Unit::TestCase
|
12
|
+
|
13
|
+
def setup
|
14
|
+
@test_dir = File.dirname(__FILE__)
|
15
|
+
@test_data = File.join( @test_dir, 'data' )
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_cards
|
19
|
+
Trello::Client.new do |client|
|
20
|
+
json = open( File.join( @test_data, 'list_with_cards.json' ) ).read
|
21
|
+
l = Trello::Client::List.new(json)
|
22
|
+
|
23
|
+
assert_not_nil l
|
24
|
+
assert_kind_of Trello::Client::List, l
|
25
|
+
|
26
|
+
assert_not_nil l.cards
|
27
|
+
assert_kind_of Array, l.cards
|
28
|
+
assert_equal 6, l.cards.size
|
29
|
+
|
30
|
+
first = l.cards.first
|
31
|
+
assert_not_nil first
|
32
|
+
assert_kind_of Trello::Client::Card, first
|
33
|
+
assert_equal [], first['attachments']
|
34
|
+
assert_kind_of Hash, first['badges']
|
35
|
+
assert_equal [], first['checkItemStates']
|
36
|
+
assert_equal false, first['closed']
|
37
|
+
assert_equal '', first['desc']
|
38
|
+
assert_equal '4f4f9d56cf2e679318098ca3', first['id']
|
39
|
+
assert_equal '4f4f9d55cf2e679318098c5b', first['idBoard']
|
40
|
+
assert_equal [], first['idChecklists']
|
41
|
+
assert_equal '4f4f9d55cf2e679318098c53', first['idList']
|
42
|
+
assert_equal [], first['idMembers']
|
43
|
+
assert_equal 1, first['idShort']
|
44
|
+
assert_equal [], first['labels']
|
45
|
+
assert_equal 'Welcome to Trello!', first['name']
|
46
|
+
assert_equal 65536, first['pos']
|
47
|
+
assert_equal 'https://trello.com/card/welcome-to-trello/4f4f9d55cf2e679318098c5b/1', first['url']
|
48
|
+
|
49
|
+
last = l.cards.last
|
50
|
+
assert_not_nil last
|
51
|
+
assert_kind_of Trello::Client::Card, last
|
52
|
+
assert_equal [], last['attachments']
|
53
|
+
assert_kind_of Hash, last['badges']
|
54
|
+
assert_kind_of Array, last['checkItemStates']
|
55
|
+
assert_equal false, last['closed']
|
56
|
+
assert_equal '', last['desc']
|
57
|
+
assert_equal '4f4f9d56cf2e679318098cb1', last['id']
|
58
|
+
assert_equal '4f4f9d55cf2e679318098c5b', last['idBoard']
|
59
|
+
assert_equal [ '4f4f9d55cf2e679318098c59' ], last['idChecklists']
|
60
|
+
assert_equal '4f4f9d55cf2e679318098c53', last['idList']
|
61
|
+
assert_equal [], last['idMembers']
|
62
|
+
assert_equal 6, last['idShort']
|
63
|
+
assert_equal [], last['labels']
|
64
|
+
assert_equal '... or checklists.', last['name']
|
65
|
+
assert_equal 393216, last['pos']
|
66
|
+
assert_equal 'https://trello.com/card/or-checklists/4f4f9d55cf2e679318098c5b/6', last['url']
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
end
|
71
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trello-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: multi_json
|
16
|
-
requirement: &
|
16
|
+
requirement: &70339636455920 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70339636455920
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: fakeweb
|
27
|
-
requirement: &
|
27
|
+
requirement: &70339636455100 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70339636455100
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mocha
|
38
|
-
requirement: &
|
38
|
+
requirement: &70339636474840 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70339636474840
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
|
-
requirement: &
|
49
|
+
requirement: &70339636473960 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70339636473960
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rdoc
|
60
|
-
requirement: &
|
60
|
+
requirement: &70339636473020 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70339636473020
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rdoc-readme
|
71
|
-
requirement: &
|
71
|
+
requirement: &70339636472320 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.1.2
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70339636472320
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: simplecov
|
82
|
-
requirement: &
|
82
|
+
requirement: &70339636471580 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,7 +87,7 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70339636471580
|
91
91
|
description: Trello API client
|
92
92
|
email:
|
93
93
|
- blair.christensen@gmail.com
|
@@ -103,15 +103,19 @@ files:
|
|
103
103
|
- Rakefile
|
104
104
|
- lib/trello-client.rb
|
105
105
|
- lib/trello-client/board.rb
|
106
|
+
- lib/trello-client/card.rb
|
106
107
|
- lib/trello-client/list.rb
|
107
108
|
- lib/trello-client/member.rb
|
108
109
|
- lib/trello-client/version.rb
|
109
110
|
- test/data/board.json
|
110
111
|
- test/data/board_with_lists.json
|
112
|
+
- test/data/list.json
|
113
|
+
- test/data/list_with_cards.json
|
111
114
|
- test/data/member.json
|
112
115
|
- test/data/member_with_boards.json
|
113
116
|
- test/test_board.rb
|
114
117
|
- test/test_client.rb
|
118
|
+
- test/test_list.rb
|
115
119
|
- test/test_member.rb
|
116
120
|
- trello-client.gemspec
|
117
121
|
homepage: https://github.com/blairc/trello-client/
|
@@ -128,7 +132,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
128
132
|
version: '0'
|
129
133
|
segments:
|
130
134
|
- 0
|
131
|
-
hash: -
|
135
|
+
hash: -2574410681571816951
|
132
136
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
137
|
none: false
|
134
138
|
requirements:
|
@@ -137,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
137
141
|
version: '0'
|
138
142
|
segments:
|
139
143
|
- 0
|
140
|
-
hash: -
|
144
|
+
hash: -2574410681571816951
|
141
145
|
requirements: []
|
142
146
|
rubyforge_project:
|
143
147
|
rubygems_version: 1.8.11
|
@@ -147,8 +151,11 @@ summary: Trello API client
|
|
147
151
|
test_files:
|
148
152
|
- test/data/board.json
|
149
153
|
- test/data/board_with_lists.json
|
154
|
+
- test/data/list.json
|
155
|
+
- test/data/list_with_cards.json
|
150
156
|
- test/data/member.json
|
151
157
|
- test/data/member_with_boards.json
|
152
158
|
- test/test_board.rb
|
153
159
|
- test/test_client.rb
|
160
|
+
- test/test_list.rb
|
154
161
|
- test/test_member.rb
|