ruby-trello 0.4.1 → 0.4.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.
- data/lib/trello.rb +1 -0
- data/lib/trello/card.rb +6 -0
- data/lib/trello/label.rb +19 -0
- data/lib/trello/member.rb +2 -2
- data/spec/card_spec.rb +13 -0
- data/spec/spec_helper.rb +11 -0
- metadata +17 -16
data/lib/trello.rb
CHANGED
@@ -37,6 +37,7 @@ module Trello
|
|
37
37
|
autoload :HasActions, 'trello/has_actions'
|
38
38
|
autoload :Item, 'trello/item'
|
39
39
|
autoload :ItemState, 'trello/item_state'
|
40
|
+
autoload :Label, 'trello/label'
|
40
41
|
autoload :List, 'trello/list'
|
41
42
|
autoload :Member, 'trello/member'
|
42
43
|
autoload :MultiAssociation, 'trello/multi_association'
|
data/lib/trello/card.rb
CHANGED
@@ -110,6 +110,12 @@ module Trello
|
|
110
110
|
})
|
111
111
|
end
|
112
112
|
|
113
|
+
# Retrieve a list of labels
|
114
|
+
def labels
|
115
|
+
labels = Client.get("/cards/#{id}/labels").json_into(Label)
|
116
|
+
MultiAssociation.new(self, labels).proxy
|
117
|
+
end
|
118
|
+
|
113
119
|
# Add a label
|
114
120
|
def add_label(colour)
|
115
121
|
unless %w{green yellow orange red purple blue}.include? colour
|
data/lib/trello/label.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
module Trello
|
2
|
+
|
3
|
+
# A colored Label attached to a card
|
4
|
+
class Label < BasicData
|
5
|
+
register_attributes :name, :color
|
6
|
+
|
7
|
+
# Update the fields of a label.
|
8
|
+
#
|
9
|
+
# Supply a hash of stringkeyed data retrieved from the Trello API representing
|
10
|
+
# a label.
|
11
|
+
def update_fields(fields)
|
12
|
+
attributes[:name] = fields['name']
|
13
|
+
attributes[:color] = fields['color']
|
14
|
+
self
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
data/lib/trello/member.rb
CHANGED
data/spec/card_spec.rb
CHANGED
@@ -146,6 +146,19 @@ module Trello
|
|
146
146
|
end
|
147
147
|
|
148
148
|
context "labels" do
|
149
|
+
it "can retrieve labels" do
|
150
|
+
Client.stub(:get).with("/cards/abcdef123456789123456789/labels").
|
151
|
+
and_return label_payload
|
152
|
+
labels = @card.labels
|
153
|
+
labels.size.should == 2
|
154
|
+
|
155
|
+
labels[0].color.should == 'yellow'
|
156
|
+
labels[0].name.should == 'iOS'
|
157
|
+
|
158
|
+
labels[1].color.should == 'purple'
|
159
|
+
labels[1].name.should == 'Issue or bug'
|
160
|
+
end
|
161
|
+
|
149
162
|
it "can add a label" do
|
150
163
|
Client.stub(:post).with("/cards/abcdef123456789123456789/labels", { :value => 'green' }).
|
151
164
|
and_return "not important"
|
data/spec/spec_helper.rb
CHANGED
@@ -230,4 +230,15 @@ module Helpers
|
|
230
230
|
def token_payload
|
231
231
|
JSON.generate(token_details)
|
232
232
|
end
|
233
|
+
|
234
|
+
def label_details
|
235
|
+
[
|
236
|
+
{"color" => "yellow", "name" => "iOS"},
|
237
|
+
{"color" => "purple", "name" => "Issue or bug"}
|
238
|
+
]
|
239
|
+
end
|
240
|
+
|
241
|
+
def label_payload
|
242
|
+
JSON.generate(label_details)
|
243
|
+
end
|
233
244
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-trello
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
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-02-
|
12
|
+
date: 2012-02-14 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: oauth
|
16
|
-
requirement: &
|
16
|
+
requirement: &70222887650260 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.4.5
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70222887650260
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: addressable
|
27
|
-
requirement: &
|
27
|
+
requirement: &70222887648300 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 2.2.6
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70222887648300
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rest-client
|
38
|
-
requirement: &
|
38
|
+
requirement: &70222887646220 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.6.7
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70222887646220
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: activemodel
|
49
|
-
requirement: &
|
49
|
+
requirement: &70222887645500 !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: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70222887645500
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: bundler
|
60
|
-
requirement: &
|
60
|
+
requirement: &70222887625140 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 1.0.0
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70222887625140
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rspec
|
71
|
-
requirement: &
|
71
|
+
requirement: &70222887623700 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 2.8.0
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70222887623700
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rake
|
82
|
-
requirement: &
|
82
|
+
requirement: &70222887621880 !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: *70222887621880
|
91
91
|
description: A wrapper around the trello.com API.
|
92
92
|
email: jeremy@tregunna.ca
|
93
93
|
executables: []
|
@@ -107,6 +107,7 @@ files:
|
|
107
107
|
- lib/trello/has_actions.rb
|
108
108
|
- lib/trello/item.rb
|
109
109
|
- lib/trello/item_state.rb
|
110
|
+
- lib/trello/label.rb
|
110
111
|
- lib/trello/list.rb
|
111
112
|
- lib/trello/member.rb
|
112
113
|
- lib/trello/multi_association.rb
|