leankitkanban 0.0.2 → 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.
- data/README.md +6 -2
- data/Rakefile +1 -1
- data/leankitkanban.gemspec +1 -1
- data/lib/leankitkanban/board.rb +14 -13
- data/lib/leankitkanban/config.rb +2 -1
- data/spec/leankitkanban/board_spec.rb +9 -81
- metadata +1 -1
data/README.md
CHANGED
@@ -12,8 +12,12 @@ Usage
|
|
12
12
|
LeanKitKanban::Config.password = "mypassword"
|
13
13
|
LeanKitKanban::Config.account = "myaccount"
|
14
14
|
|
15
|
-
|
16
|
-
@
|
15
|
+
# get all boards and returns an array of hashes
|
16
|
+
@boards = LeanKitKanban::Board.all
|
17
|
+
# get the board with specified id as a hash
|
18
|
+
@board = LeanKitKanban::Board.find(board_id)
|
19
|
+
# get all the identifiers for a board
|
20
|
+
@identifiers = LeanKitKanban::Board.get_identifiers(board_id)
|
17
21
|
|
18
22
|
Board ID
|
19
23
|
--------
|
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
2
2
|
require 'rake'
|
3
3
|
require 'echoe'
|
4
4
|
|
5
|
-
Echoe.new('leankitkanban', '0.0.
|
5
|
+
Echoe.new('leankitkanban', '0.0.3') do |p|
|
6
6
|
p.description = "Ruby Wrapper around LeanKitKanban Api"
|
7
7
|
p.url = "http://github.com/mlainez/leankitkanban"
|
8
8
|
p.author = "Marc Lainez"
|
data/leankitkanban.gemspec
CHANGED
data/lib/leankitkanban/board.rb
CHANGED
@@ -2,34 +2,35 @@ module LeanKitKanban
|
|
2
2
|
module Board
|
3
3
|
include HTTParty
|
4
4
|
|
5
|
-
ALL_BOARDS
|
6
|
-
ONE_BOARD
|
7
|
-
IDENTIFIERS
|
5
|
+
ALL_BOARDS = "/Boards"
|
6
|
+
ONE_BOARD = "/Boards/{boardID}"
|
7
|
+
IDENTIFIERS = "/Board/{boardID}/GetBoardIdentifiers"
|
8
|
+
REPLY_DATA_KEY = "ReplyData"
|
8
9
|
|
9
10
|
def self.all
|
10
|
-
|
11
|
-
response = get(url, LeanKitKanban::Config.basic_auth_hash)
|
12
|
-
parse_body(response.body)
|
11
|
+
get(ALL_BOARDS)
|
13
12
|
end
|
14
13
|
|
15
14
|
def self.find(board_id)
|
16
15
|
api_call = ONE_BOARD.gsub("{boardID}", board_id.to_s)
|
17
|
-
|
18
|
-
response = get(url, LeanKitKanban::Config.basic_auth_hash)
|
19
|
-
parse_body(response.body)
|
16
|
+
get(api_call)
|
20
17
|
end
|
21
18
|
|
22
19
|
def self.get_identifiers(board_id)
|
23
20
|
api_call = IDENTIFIERS.gsub("{boardID}", board_id.to_s)
|
21
|
+
get(api_call)
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
def self.get(api_call)
|
24
26
|
url = "#{LeanKitKanban::Config.uri}#{api_call}"
|
25
|
-
response =
|
27
|
+
response = super(url, LeanKitKanban::Config.basic_auth_hash)
|
26
28
|
parse_body(response.body)
|
27
29
|
end
|
28
30
|
|
29
|
-
private
|
30
31
|
def self.parse_body(body)
|
31
|
-
json_data
|
32
|
-
json_data[
|
32
|
+
json_data = JSON.parse body
|
33
|
+
json_data[REPLY_DATA_KEY]
|
33
34
|
end
|
34
35
|
end
|
35
36
|
end
|
data/lib/leankitkanban/config.rb
CHANGED
@@ -7,6 +7,7 @@ module LeanKitKanban
|
|
7
7
|
attr_accessor :email, :password, :account
|
8
8
|
|
9
9
|
LKK_DOMAIN = "leankitkanban.com"
|
10
|
+
API_SUFFIX = "/Kanban/API"
|
10
11
|
|
11
12
|
def validate
|
12
13
|
raise NoCredentials if email.nil? || password.nil?
|
@@ -15,7 +16,7 @@ module LeanKitKanban
|
|
15
16
|
|
16
17
|
def uri
|
17
18
|
validate
|
18
|
-
"http://#{account}.#{LKK_DOMAIN}
|
19
|
+
"http://#{account}.#{LKK_DOMAIN}#{API_SUFFIX}"
|
19
20
|
end
|
20
21
|
|
21
22
|
def basic_auth_hash
|
@@ -6,105 +6,33 @@ describe LeanKitKanban::Board do
|
|
6
6
|
end
|
7
7
|
|
8
8
|
describe :all do
|
9
|
-
before :each do
|
10
|
-
@response = mock("Response")
|
11
|
-
@body = mock("Body")
|
12
|
-
@auth_hash = mock("Auth hash")
|
13
|
-
LeanKitKanban::Config.stub(:uri)
|
14
|
-
LeanKitKanban::Config.stub(:basic_auth_hash => @auth_hash)
|
15
|
-
LeanKitKanban::Board.stub(:get => @response)
|
16
|
-
@response.stub(:body => @body)
|
17
|
-
LeanKitKanban::Board.stub(:parse_body)
|
18
|
-
end
|
19
|
-
|
20
|
-
it "gets the base uri" do
|
21
|
-
LeanKitKanban::Config.should_receive(:uri)
|
22
|
-
LeanKitKanban::Board.all
|
23
|
-
end
|
24
|
-
|
25
|
-
it "gets the basic authentication hash" do
|
26
|
-
LeanKitKanban::Config.should_receive(:basic_auth_hash)
|
27
|
-
LeanKitKanban::Board.all
|
28
|
-
end
|
29
|
-
|
30
9
|
it "gets all boards for that account" do
|
31
|
-
|
32
|
-
LeanKitKanban::Board.should_receive(:get).with(
|
33
|
-
LeanKitKanban::Board.all
|
34
|
-
end
|
35
|
-
|
36
|
-
it "gets the body from the response" do
|
37
|
-
@response.should_receive(:body).and_return(@body)
|
10
|
+
api_call = "/Boards"
|
11
|
+
LeanKitKanban::Board.should_receive(:get).with(api_call)
|
38
12
|
LeanKitKanban::Board.all
|
39
13
|
end
|
40
14
|
end
|
41
15
|
|
42
16
|
describe :find do
|
43
17
|
before :each do
|
44
|
-
@board_id =
|
45
|
-
@response = mock("Response")
|
46
|
-
@body = mock("Body")
|
47
|
-
@auth_hash = mock("Auth hash")
|
48
|
-
LeanKitKanban::Config.stub(:uri)
|
49
|
-
LeanKitKanban::Config.stub(:basic_auth_hash => @auth_hash)
|
50
|
-
LeanKitKanban::Board.stub(:get => @response)
|
51
|
-
@response.stub(:body => @body)
|
52
|
-
LeanKitKanban::Board.stub(:parse_body)
|
53
|
-
end
|
54
|
-
|
55
|
-
it "gets the base uri" do
|
56
|
-
LeanKitKanban::Config.should_receive(:uri)
|
57
|
-
LeanKitKanban::Board.find(@board_id)
|
58
|
-
end
|
59
|
-
|
60
|
-
it "gets the basic authentication hash" do
|
61
|
-
LeanKitKanban::Config.should_receive(:basic_auth_hash)
|
62
|
-
LeanKitKanban::Board.find(@board_id)
|
18
|
+
@board_id = mock("boardID")
|
63
19
|
end
|
64
20
|
|
65
21
|
it "gets the board whose id is passed as parameter" do
|
66
|
-
|
67
|
-
LeanKitKanban::Board.should_receive(:get).with(
|
68
|
-
LeanKitKanban::Board.find(@board_id)
|
69
|
-
end
|
70
|
-
|
71
|
-
it "gets the body from the response" do
|
72
|
-
@response.should_receive(:body).and_return(@body)
|
22
|
+
api_call = "/Boards/#{@board_id}"
|
23
|
+
LeanKitKanban::Board.should_receive(:get).with(api_call)
|
73
24
|
LeanKitKanban::Board.find(@board_id)
|
74
25
|
end
|
75
26
|
end
|
76
27
|
|
77
28
|
describe :get_identifiers do
|
78
29
|
before :each do
|
79
|
-
@board_id =
|
80
|
-
@response = mock("Response")
|
81
|
-
@body = mock("Body")
|
82
|
-
@auth_hash = mock("Auth hash")
|
83
|
-
LeanKitKanban::Config.stub(:uri)
|
84
|
-
LeanKitKanban::Config.stub(:basic_auth_hash => @auth_hash)
|
85
|
-
LeanKitKanban::Board.stub(:get => @response)
|
86
|
-
@response.stub(:body => @body)
|
87
|
-
LeanKitKanban::Board.stub(:parse_body)
|
88
|
-
end
|
89
|
-
|
90
|
-
it "gets the base uri" do
|
91
|
-
LeanKitKanban::Config.should_receive(:uri)
|
92
|
-
LeanKitKanban::Board.get_identifiers(@board_id)
|
93
|
-
end
|
94
|
-
|
95
|
-
it "gets the basic authentication hash" do
|
96
|
-
LeanKitKanban::Config.should_receive(:basic_auth_hash)
|
97
|
-
LeanKitKanban::Board.get_identifiers(@board_id)
|
98
|
-
end
|
99
|
-
|
100
|
-
it "gets the board whose id is passed as parameter" do
|
101
|
-
url = "/Board/#{@board_id}/GetBoardIdentifiers"
|
102
|
-
LeanKitKanban::Board.should_receive(:get).with(url, @auth_hash).and_return(@response)
|
103
|
-
LeanKitKanban::Board.get_identifiers(@board_id)
|
30
|
+
@board_id = mock("boardID")
|
104
31
|
end
|
105
32
|
|
106
|
-
it "gets the
|
107
|
-
@
|
33
|
+
it "gets the identifiers of the board whose id is passed as parameter" do
|
34
|
+
api_call = "/Board/#{@board_id}/GetBoardIdentifiers"
|
35
|
+
LeanKitKanban::Board.should_receive(:get).with(api_call)
|
108
36
|
LeanKitKanban::Board.get_identifiers(@board_id)
|
109
37
|
end
|
110
38
|
end
|