tacokit 0.1.0 → 0.2.0

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.
Files changed (136) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +86 -0
  3. data/.travis.yml +6 -0
  4. data/Gemfile +16 -25
  5. data/Guardfile +1 -1
  6. data/README.md +61 -17
  7. data/Rakefile +10 -5
  8. data/lib/tacokit/authorization.rb +14 -13
  9. data/lib/tacokit/client/actions.rb +68 -28
  10. data/lib/tacokit/client/boards.rb +92 -85
  11. data/lib/tacokit/client/cards.rb +285 -92
  12. data/lib/tacokit/client/checklists.rb +48 -28
  13. data/lib/tacokit/client/labels.rb +14 -16
  14. data/lib/tacokit/client/lists.rb +52 -28
  15. data/lib/tacokit/client/members.rb +56 -46
  16. data/lib/tacokit/client/notifications.rb +13 -27
  17. data/lib/tacokit/client/organizations.rb +0 -6
  18. data/lib/tacokit/client/searches.rb +0 -1
  19. data/lib/tacokit/client/tokens.rb +0 -6
  20. data/lib/tacokit/client/types.rb +0 -1
  21. data/lib/tacokit/client/webhooks.rb +3 -8
  22. data/lib/tacokit/client.rb +48 -75
  23. data/lib/tacokit/collection.rb +49 -0
  24. data/lib/tacokit/configuration.rb +4 -6
  25. data/lib/tacokit/error.rb +0 -2
  26. data/lib/tacokit/middleware/boom.rb +6 -7
  27. data/lib/tacokit/middleware.rb +2 -10
  28. data/lib/tacokit/resource.rb +84 -57
  29. data/lib/tacokit/response.rb +3 -3
  30. data/lib/tacokit/transform.rb +35 -13
  31. data/lib/tacokit/utils.rb +40 -8
  32. data/lib/tacokit/version.rb +1 -1
  33. data/lib/tacokit.rb +0 -2
  34. data/spec/cassettes/Tacokit_Client_Actions/_action_board/returns_action_board.json +1 -0
  35. data/spec/cassettes/Tacokit_Client_Actions/_action_card/returns_action_card.json +1 -0
  36. data/spec/cassettes/Tacokit_Client_Actions/_action_entities/returns_action_entities.json +1 -0
  37. data/spec/cassettes/Tacokit_Client_Actions/_action_list/returns_action_list.json +1 -0
  38. data/spec/cassettes/Tacokit_Client_Boards/_add_board_member/adds_invites_member_to_board.json +1 -1
  39. data/spec/cassettes/Tacokit_Client_Boards/_board_actions/returns_board_actions.json +1 -0
  40. data/spec/cassettes/Tacokit_Client_Boards/_board_cards/returns_board_cards.json +1 -0
  41. data/spec/cassettes/Tacokit_Client_Boards/_board_checklists/returns_board_checklists.json +1 -0
  42. data/spec/cassettes/Tacokit_Client_Boards/_board_labels/returns_board_labels.json +1 -0
  43. data/spec/cassettes/Tacokit_Client_Boards/_board_lists/returns_board_lists.json +1 -0
  44. data/spec/cassettes/Tacokit_Client_Boards/_board_members/returns_board_members.json +1 -0
  45. data/spec/cassettes/Tacokit_Client_Boards/_board_organization/returns_board_organization.json +1 -0
  46. data/spec/cassettes/Tacokit_Client_Boards/_board_preferences/returns_preferences_for_a_board.json +1 -0
  47. data/spec/cassettes/Tacokit_Client_Boards/_board_stars/returns_board_stars.json +1 -0
  48. data/spec/cassettes/Tacokit_Client_Boards/_member_board_stars/returns_board_stars.json +1 -0
  49. data/spec/cassettes/Tacokit_Client_Boards/_update_board_member/updates_member.json +1 -0
  50. data/spec/cassettes/Tacokit_Client_Cards/_add_comment/creates_a_comment.json +1 -0
  51. data/spec/cassettes/Tacokit_Client_Cards/_add_label/adds_label_to_card.json +1 -0
  52. data/spec/cassettes/Tacokit_Client_Cards/_add_member_to_card/adds_member_to_card.json +1 -0
  53. data/spec/cassettes/Tacokit_Client_Cards/_archive_card/archives_card.json +1 -0
  54. data/spec/cassettes/Tacokit_Client_Cards/_archive_card/restore_card.json +1 -0
  55. data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_an_attachment.json +1 -0
  56. data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_attachment.json +1 -0
  57. data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_attachments.json +1 -0
  58. data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_card_resource.json +1 -0
  59. data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_id.json +1 -1
  60. data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_short_link.json +1 -1
  61. data/spec/cassettes/Tacokit_Client_Cards/_card_actions/returns_card_actions.json +1 -0
  62. data/spec/cassettes/Tacokit_Client_Cards/_card_board/returns_card_board.json +1 -0
  63. data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_a_hash.json +1 -1
  64. data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_a_value.json +1 -1
  65. data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_an_array.json +1 -1
  66. data/spec/cassettes/Tacokit_Client_Cards/_card_list/returns_a_list.json +1 -0
  67. data/spec/cassettes/Tacokit_Client_Cards/_card_members/returns_members.json +1 -0
  68. data/spec/cassettes/Tacokit_Client_Cards/_card_members/returns_members_voted.json +1 -0
  69. data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_actions.json +1 -1
  70. data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_board.json +1 -1
  71. data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_check_item_states.json +1 -1
  72. data/spec/cassettes/Tacokit_Client_Cards/_card_stickers/returns_.json +1 -0
  73. data/spec/cassettes/Tacokit_Client_Cards/_checklists/returns_check_item_states.json +1 -0
  74. data/spec/cassettes/Tacokit_Client_Cards/_checklists/returns_checklists.json +1 -0
  75. data/spec/cassettes/Tacokit_Client_Cards/_create_card/creates_a_card.json +1 -1
  76. data/spec/cassettes/Tacokit_Client_Cards/_create_card_attachment/attaches_external_url.json +1 -1
  77. data/spec/cassettes/Tacokit_Client_Cards/_create_card_attachment/uploads_local_file.json +1 -1
  78. data/spec/cassettes/Tacokit_Client_Cards/_delete_card/deletes_a_card.json +1 -1
  79. data/spec/cassettes/Tacokit_Client_Cards/_delete_card_resource/deletes_resource.json +1 -1
  80. data/spec/cassettes/Tacokit_Client_Cards/_delete_comment/deletes_comment.json +1 -0
  81. data/spec/cassettes/Tacokit_Client_Cards/_list/returns_list.json +1 -0
  82. data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_a_new_position.json +1 -0
  83. data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_another_board_list.json +1 -0
  84. data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_board.json +1 -0
  85. data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_list.json +1 -0
  86. data/spec/cassettes/Tacokit_Client_Cards/_move_card/raises_error_if_missing_options.json +1 -0
  87. data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/adds_a_checklist_item.json +1 -0
  88. data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/adds_new_checklist_by_name.json +1 -0
  89. data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/copies_a_checklist_by_id.json +1 -0
  90. data/spec/cassettes/Tacokit_Client_Cards/_stickers/returns_stickers.json +1 -0
  91. data/spec/cassettes/Tacokit_Client_Cards/_update_card/updates_a_card.json +1 -1
  92. data/spec/cassettes/Tacokit_Client_Cards/_update_checklist_item/updates_checklist_item.json +1 -0
  93. data/spec/cassettes/Tacokit_Client_Cards/_update_comment/updates_a_comment.json +1 -0
  94. data/spec/cassettes/Tacokit_Client_Cards/_vote/adds_a_member_s_vote_to_card.json +1 -0
  95. data/spec/cassettes/Tacokit_Client_Checklists/_check_items/adds_a_checklist_check_item.json +1 -0
  96. data/spec/cassettes/Tacokit_Client_Checklists/_check_items/retrieves_checklist_check_items.json +1 -0
  97. data/spec/cassettes/Tacokit_Client_Lists/_archive_list_cards/should_archive_cards_in_list.json +1 -0
  98. data/spec/cassettes/Tacokit_Client_Lists/_list_actions/returns_list_actions.json +1 -0
  99. data/spec/cassettes/Tacokit_Client_Lists/_list_board/returns_list_board.json +1 -0
  100. data/spec/cassettes/Tacokit_Client_Lists/_list_cards/returns_list_cards.json +1 -0
  101. data/spec/cassettes/Tacokit_Client_Lists/_move_list_cards/should_move_cards_in_list.json +1 -0
  102. data/spec/cassettes/Tacokit_Client_Members/_actions/returns_member_actions.json +1 -0
  103. data/spec/cassettes/Tacokit_Client_Members/_board_stars/returns_member_board_stars.json +1 -0
  104. data/spec/cassettes/Tacokit_Client_Members/_boards/returns_member_boards.json +1 -0
  105. data/spec/cassettes/Tacokit_Client_Members/_cards/returns_member_cards.json +1 -0
  106. data/spec/cassettes/Tacokit_Client_Members/_notifications/returns_member_notifications.json +1 -0
  107. data/spec/cassettes/Tacokit_Client_Members/_organizations/returns_member_organizations.json +1 -0
  108. data/spec/cassettes/Tacokit_Client_Members/_tokens/returns_member_organizations.json +1 -0
  109. data/spec/cassettes/Tacokit_Client_Members/_tokens/returns_member_tokens.json +1 -0
  110. data/spec/spec_helper.rb +39 -29
  111. data/spec/tacokit/authorization_spec.rb +11 -11
  112. data/spec/tacokit/client/actions_spec.rb +56 -19
  113. data/spec/tacokit/client/boards_spec.rb +81 -78
  114. data/spec/tacokit/client/cards_spec.rb +322 -68
  115. data/spec/tacokit/client/checklists_spec.rb +29 -27
  116. data/spec/tacokit/client/labels_spec.rb +8 -16
  117. data/spec/tacokit/client/lists_spec.rb +74 -27
  118. data/spec/tacokit/client/members_spec.rb +55 -41
  119. data/spec/tacokit/client/notifications_spec.rb +3 -31
  120. data/spec/tacokit/client/organizations_spec.rb +6 -27
  121. data/spec/tacokit/client/searches_spec.rb +1 -3
  122. data/spec/tacokit/client/tokens_spec.rb +2 -18
  123. data/spec/tacokit/client/types_spec.rb +2 -3
  124. data/spec/tacokit/client/webhooks_spec.rb +6 -14
  125. data/spec/tacokit/client_spec.rb +3 -3
  126. data/spec/tacokit/configuration_spec.rb +30 -31
  127. data/spec/tacokit/middleware/boom_spec.rb +6 -7
  128. data/spec/tacokit/resource_spec.rb +142 -17
  129. data/spec/tacokit/transform_spec.rb +37 -35
  130. data/spec/tacokit_spec.rb +3 -5
  131. data/tacokit.gemspec +6 -6
  132. metadata +132 -15
  133. data/config.ru +0 -7
  134. data/lib/tacokit/middleware/debug.rb +0 -22
  135. data/spec/cassettes/Tacokit_Client_Boards/_update_board_resource/updates_member.json +0 -1
  136. data/spec/cassettes/Tacokit_Client_Members/_member/raises_error_for_missing_token.json +0 -1
@@ -1,26 +1,151 @@
1
- require 'spec_helper'
2
- require 'ostruct'
1
+ require "spec_helper"
3
2
 
4
- describe Tacokit::Resource do
5
- let(:client) { OpenStruct.new }
3
+ module Tacokit
4
+ describe Resource do
5
+ describe "#initialize" do
6
+ it "handles given attributes" do
7
+ res = Resource.new one: "one", "two" => :two
6
8
 
7
- def build_resource(attrs = {})
8
- described_class.new(client, attrs)
9
- end
9
+ expect(res).to be_a(Resource)
10
+ expect(res.one).to eq "one"
11
+ expect(res.two).to eq :two
12
+ end
10
13
 
11
- describe "#initialize" do
12
- it "responds to given attributes" do
13
- resource = build_resource(one: 'one', 'two' => :two)
14
+ it "handles nested objects" do
15
+ res = Resource.new prefs: { user: { read: "ftw" } }
14
16
 
15
- expect(resource.one).to eq 'one'
16
- expect(resource.two).to eq :two
17
- end
17
+ expect(res.prefs.user.read).to eq "ftw"
18
+ expect(res.prefs).to be_a(Resource)
19
+ expect(res.prefs.user).to be_a(Resource)
20
+ end
18
21
 
19
- it "responds to deep attributes" do
20
- resource = build_resource(deep: { merge: { attribute: 'ftw' }})
22
+ it "has nested collections" do
23
+ res = Resource.new labels: [{ color: "blue" }]
21
24
 
22
- expect(resource.deep.merge.attribute).to eq 'ftw'
23
- end
25
+ expect(res.labels.size).to eq 1
26
+
27
+ label = res.labels.first
28
+ expect(label.color).to eq "blue"
29
+ expect(label).to be_a(Resource)
30
+ end
31
+
32
+ it "handles clashing keys" do
33
+ res = Resource.new client: 1, fields: 2
34
+
35
+ expect(res.fields).to eq 2
36
+
37
+ expect(res._fields).to include(:fields)
38
+ expect(res._fields.size).to eq(2)
39
+ end
40
+
41
+ it "has attribute predicates" do
42
+ res = Resource.new a: 1, b: true, c: nil, d: false
43
+
44
+ expect(res.a?).to be_truthy
45
+ expect(res.b?).to be_truthy
46
+ expect(res.c?).to be_falsey
47
+ expect(res.d?).to be_falsey
48
+ end
49
+
50
+ it "has attribute setters" do
51
+ res = Resource.new a: 1
52
+
53
+ expect(res.a).to eq 1
54
+ expect(res.key?(:a)).to be_truthy
55
+
56
+ res.b = 2
57
+ expect(res.b).to eq 2
58
+ expect(res.key?(:b)).to be_truthy
59
+ end
60
+
61
+ it "dynamically adds attr methods through getters" do
62
+ res = Resource.new
63
+
64
+ expect(res.respond_to?(:a)).to be_falsey
65
+ expect(res.respond_to?(:a=)).to be_falsey
66
+ expect(res.respond_to?(:a?)).to be_falsey
67
+
68
+ res = Resource.new a: 1
69
+ expect(res.respond_to?(:a)).to be_truthy
70
+ expect(res.respond_to?(:a=)).to be_truthy
71
+ expect(res.respond_to?(:a?)).to be_truthy
72
+ end
73
+
74
+ it "has nillable attribute getters" do
75
+ res = Resource.new a: 1
76
+
77
+ expect(res.key?(:b)).to be_falsey
78
+ expect(res.respond_to?(:b)).to be_falsey
79
+ expect(res.respond_to?(:b=)).to be_falsey
80
+ expect(res.respond_to?(:b?)).to be_falsey
81
+ expect(res.b).to be_nil
82
+ expect { res.b }.not_to raise_error
83
+ end
24
84
 
85
+ it "dynamically adds attr methods through setters" do
86
+ res = Resource.new a: 1
87
+
88
+ expect(res.key?(:b)).to be_falsey
89
+ expect(res.respond_to?(:b)).to be_falsey
90
+ expect(res.respond_to?(:b=)).to be_falsey
91
+ expect(res.respond_to?(:b?)).to be_falsey
92
+
93
+ res.b = 1
94
+
95
+ expect(res.key?(:b)).to be_truthy
96
+ expect(res.respond_to?(:b)).to be_truthy
97
+ expect(res.respond_to?(:b=)).to be_truthy
98
+ expect(res.respond_to?(:b?)).to be_truthy
99
+ end
100
+
101
+ it "is enumerable" do
102
+ res = Resource.new a: 1, b: 2
103
+
104
+ output = []
105
+ res.each { |k, v| output << [k, v] }
106
+ expect(output).to eq [[:a, 1], [:b, 2]]
107
+ end
108
+
109
+ it "casts date timestamps" do
110
+ res = Resource.new date: "2015-01-13T13:43:00.347Z"
111
+
112
+ expect(res.date).to be_a(DateTime)
113
+ end
114
+
115
+ describe "#attrs" do
116
+ it "returns hash of attributes" do
117
+ res = Resource.new a: 1
118
+
119
+ expect(res.to_attrs).to eq a: 1
120
+ end
121
+
122
+ it "returns nested attributes" do
123
+ res = Resource.new a: 1, b: [{ c: 2 }]
124
+
125
+ expect(res.b).to be_a(Array)
126
+ expect(res.b.first).to be_a(Resource)
127
+
128
+ expect(res.to_attrs).to eq(a: 1, b: [{ c: 2 }])
129
+ end
130
+
131
+ it "responds to [] and []=" do
132
+ res = Resource.new a: 1
133
+
134
+ expect(res.a).to eq 1
135
+ expect(res[:a]).to eq 1
136
+ expect(res["a"]).to eq 1
137
+
138
+ res[:a] = 2
139
+ expect(res.a).to eq 2
140
+ expect(res[:a]).to eq 2
141
+ expect(res["a"]).to eq 2
142
+
143
+ res["a"] = 3
144
+ expect(res.a).to eq 3
145
+ expect(res[:a]).to eq 3
146
+ expect(res["a"]).to eq 3
147
+ end
148
+ end
149
+ end
25
150
  end
26
151
  end
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
3
  module Tacokit
4
4
  describe Transform do
@@ -15,13 +15,13 @@ module Tacokit
15
15
  end
16
16
 
17
17
  it "does not change empty body" do
18
- result = process('')
19
- expect(result).to eq ''
18
+ result = process("")
19
+ expect(result).to eq ""
20
20
  end
21
21
 
22
22
  it "does not change string body" do
23
- result = process('{a: 1}')
24
- expect(result).to eq '{a: 1}'
23
+ result = process("{a: 1}")
24
+ expect(result).to eq "{a: 1}"
25
25
  end
26
26
 
27
27
  it "does not change empty hash body" do
@@ -31,47 +31,50 @@ module Tacokit
31
31
 
32
32
  context "hash body" do
33
33
  it "it stringifies keys" do
34
- result = process(hello: 'world')
34
+ result = process(hello: "world")
35
35
 
36
- expect(result).to eq 'hello' => 'world'
36
+ expect(result).to eq "hello" => "world"
37
37
  end
38
38
 
39
39
  it "lower camelizes keys" do
40
- result = process(hello_world: 'hello_world', biggie_smalls: 'biggie_smalls')
40
+ result = process(hello_world: "hello_world", biggie_smalls: "biggie_smalls")
41
41
 
42
- expect(result).to include('helloWorld' => 'hello_world')
43
- expect(result).to include('biggieSmalls' => 'biggie_smalls')
42
+ expect(result).to include("helloWorld" => "hello_world")
43
+ expect(result).to include("biggieSmalls" => "biggie_smalls")
44
44
  end
45
45
 
46
46
  it "flattens nested keys" do
47
- result = process(prefs: { 'showSidebar' => true })
47
+ result = process(prefs: { "showSidebar" => true })
48
48
 
49
- expect(result).to eq('prefs/showSidebar' => true)
49
+ expect(result).to eq("prefs/showSidebar" => true)
50
50
  end
51
51
 
52
52
  it "coverts id suffix to prefix" do
53
- result = process('card_id' => "a"*10)
53
+ result = process("card_id" => "a" * 10)
54
54
 
55
- expect(result).to eq('idCard' => "a"*10)
55
+ expect(result).to eq("idCard" => "a" * 10)
56
56
  end
57
57
 
58
58
  it "coverts ids suffix to prefix and pluralizes" do
59
- result = process('card_ids' => "a"*10)
59
+ result = process("card_ids" => "a" * 10)
60
60
 
61
- expect(result).to eq('idCards' => "a"*10)
61
+ expect(result).to eq("idCards" => "a" * 10)
62
62
  end
63
63
 
64
64
  describe "special cases" do
65
-
66
65
  it "callbackURL" do
67
- result = process(callback_url: 'http://example.com')
66
+ result = process(callback_url: "http://example.com")
68
67
 
69
- expect(result).to eq('callbackURL' => 'http://example.com')
68
+ expect(result).to eq("callbackURL" => "http://example.com")
70
69
  end
71
- end
72
70
 
73
- end
71
+ it "idChecklistSource" do
72
+ result = process("checklist_source_id" => "a" * 10)
74
73
 
74
+ expect(result).to eq("idChecklistSource" => "a" * 10)
75
+ end
76
+ end
77
+ end
75
78
  end
76
79
 
77
80
  describe "#deserialize" do
@@ -85,13 +88,13 @@ module Tacokit
85
88
  end
86
89
 
87
90
  it "does not change empty body" do
88
- result = process('')
89
- expect(result).to eq ''
91
+ result = process("")
92
+ expect(result).to eq ""
90
93
  end
91
94
 
92
95
  it "does not change string body" do
93
- result = process('{a: 1}')
94
- expect(result).to eq '{a: 1}'
96
+ result = process("{a: 1}")
97
+ expect(result).to eq "{a: 1}"
95
98
  end
96
99
 
97
100
  it "does not change empty hash body" do
@@ -101,31 +104,30 @@ module Tacokit
101
104
 
102
105
  context "hash body" do
103
106
  it "it stringifies keys" do
104
- result = process(hello: 'world')
107
+ result = process(hello: "world")
105
108
 
106
- expect(result).to eq 'hello' => 'world'
109
+ expect(result).to eq "hello" => "world"
107
110
  end
108
111
 
109
112
  it "underscores keys" do
110
- result = process(helloWorld: 'helloWorld', biggieSmalls: 'biggieSmalls')
113
+ result = process(helloWorld: "helloWorld", biggieSmalls: "biggieSmalls")
111
114
 
112
- expect(result).to include('hello_world' => 'helloWorld')
113
- expect(result).to include('biggie_smalls' => 'biggieSmalls')
115
+ expect(result).to include("hello_world" => "helloWorld")
116
+ expect(result).to include("biggie_smalls" => "biggieSmalls")
114
117
  end
115
118
 
116
119
  it "coverts id prefix to suffix" do
117
- result = process('idCard' => "a"*10, 'idBoardPinned' => '123')
120
+ result = process("idCard" => "a" * 10, "idBoardPinned" => "123")
118
121
 
119
- expect(result).to eq('card_id' => "a"*10, 'board_pinned_id' => '123')
122
+ expect(result).to eq("card_id" => "a" * 10, "board_pinned_id" => "123")
120
123
  end
121
124
 
122
125
  it "coverts ids suffix to prefix and pluralizes" do
123
- result = process('idCards' => "a"*10, 'idBoardsPinned' => ["123"])
126
+ result = process("idCards" => "a" * 10, "idBoardsPinned" => ["123"])
124
127
 
125
- expect(result).to eq('card_ids' => "a"*10, 'boards_pinned_ids' => ["123"])
128
+ expect(result).to eq("card_ids" => "a" * 10, "boards_pinned_ids" => ["123"])
126
129
  end
127
130
  end
128
-
129
131
  end
130
132
  end
131
133
  end
data/spec/tacokit_spec.rb CHANGED
@@ -1,16 +1,14 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
3
  describe Tacokit do
4
-
5
4
  describe "#method_missing" do
6
5
  it "forwards messages to client" do
7
- expect(Tacokit.client).to receive(:open_app_key)
8
- Tacokit.open_app_key
6
+ expect(Tacokit.client).to receive(:get_app_key)
7
+ Tacokit.get_app_key
9
8
  end
10
9
 
11
10
  it "raises otherwise" do
12
11
  expect { Tacokit.no_method }.to raise_error(NoMethodError)
13
12
  end
14
-
15
13
  end
16
14
  end
data/tacokit.gemspec CHANGED
@@ -1,15 +1,15 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+ lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'tacokit/version'
4
+ require "tacokit/version"
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "tacokit"
8
8
  spec.version = Tacokit::VERSION
9
9
  spec.authors = ["Ross Kaffenberger"]
10
10
  spec.email = ["rosskaff@gmail.com"]
11
- spec.summary = %q{A simple wrapper for the Trello API.}
12
- spec.description = %q{A ruby toolkit for the Trello API. Provides an alternative to the original Trello Ruby wrapper, ruby-trello.}
11
+ spec.summary = "A ruby toolkit for the Trello API."
12
+ spec.description = "A ruby toolkit for the Trello API."
13
13
  spec.homepage = "http://rossta.github.io/tacokit.rb"
14
14
  spec.license = "MIT"
15
15
 
@@ -23,6 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.add_dependency "simple_oauth"
24
24
 
25
25
  spec.add_development_dependency "bundler", "~> 1.7"
26
- spec.add_development_dependency "rake", "~> 10.0"
27
- spec.add_development_dependency "rspec", "~> 3.1"
26
+ spec.add_development_dependency "rake", "~> 10"
27
+ spec.add_development_dependency "rspec", "~> 3"
28
28
  end