artisan 0.5.2 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011 patrickgombert
1
+ Copyright (c) 2011 8th Light, Inc.
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.2
1
+ 0.5.3
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{artisan}
8
- s.version = "0.5.2"
8
+ s.version = "0.5.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["patrickgombert"]
12
- s.date = %q{2012-10-12}
12
+ s.date = %q{2012-11-29}
13
13
  s.description = %q{Make calls to the Artisan API.}
14
14
  s.email = %q{patrick@8thlight.com}
15
15
  s.extra_rdoc_files = [
@@ -29,6 +29,7 @@ Gem::Specification.new do |s|
29
29
  "lib/artisan.rb",
30
30
  "lib/artisan/base.rb",
31
31
  "lib/artisan/iteration.rb",
32
+ "lib/artisan/iteration_total_billed_points_by_craftsman.rb",
32
33
  "lib/artisan/project.rb",
33
34
  "lib/artisan/query.rb",
34
35
  "lib/artisan/signoff_pdf.rb",
@@ -36,6 +37,7 @@ Gem::Specification.new do |s|
36
37
  "spec/artisan/artisan_spec.rb",
37
38
  "spec/artisan/base_spec.rb",
38
39
  "spec/artisan/iteration_spec.rb",
40
+ "spec/artisan/iteration_total_billed_points_by_craftsman_spec.rb",
39
41
  "spec/artisan/project_spec.rb",
40
42
  "spec/artisan/query_spec.rb",
41
43
  "spec/artisan/signoff_pdf_spec.rb",
@@ -1,5 +1,6 @@
1
1
  require 'artisan/project'
2
2
  require 'artisan/iteration'
3
+ require 'artisan/iteration_total_billed_points_by_craftsman'
3
4
  require 'artisan/story'
4
5
  require 'artisan/query'
5
6
  require 'artisan/signoff_pdf'
@@ -22,6 +23,12 @@ module Artisan
22
23
  return @iterations
23
24
  end
24
25
 
26
+ def self.get_iteration_total_billed_points_by_craftsman(key, iteration_number, address = 'artisan.8thlight.com')
27
+ response = Query.get_iteration_total_billed_points_by_craftsman(key, iteration_number, address)
28
+ json_chunk = JSON::parse(response)
29
+ return IterationTotalBilledPointsByCraftsman.new(json_chunk)
30
+ end
31
+
25
32
  def self.get_signoff_pdf(key, iteration_id, address = 'artisan.8thlight.com')
26
33
  response = Query.get_signoff_pdf(key, iteration_id, address)
27
34
 
@@ -0,0 +1,9 @@
1
+ require 'artisan/base'
2
+
3
+ module Artisan
4
+ class IterationTotalBilledPointsByCraftsman < Base
5
+
6
+ hash_attr_accessor :total_billed_points_by_craftsman
7
+
8
+ end
9
+ end
@@ -3,13 +3,19 @@ require 'httparty'
3
3
  module Artisan
4
4
  module Query
5
5
  def self.get_project(key, address)
6
- response = HTTParty.get 'http://' + address + '/api/projects', :headers => {'accept' => 'application/json'}, :query => {'key' => key}
6
+ response = HTTParty.get "http://#{address}/api/projects", :headers => {'accept' => 'application/json'}, :query => {'key' => key}
7
7
  Validation.validate_response response.code
8
8
  return response.body
9
9
  end
10
10
 
11
11
  def self.get_iterations(key, address)
12
- response = HTTParty.get 'http://' + address + '/api/projects/iterations', :headers => {'accept' => 'application/json'}, :query => {'key' => key}
12
+ response = HTTParty.get "http://#{address}/api/projects/iterations", :headers => {'accept' => 'application/json'}, :query => {'key' => key}
13
+ Validation.validate_response response.code
14
+ return response.body
15
+ end
16
+
17
+ def self.get_iteration_total_billed_points_by_craftsman(key, iteration_number, address)
18
+ response = HTTParty.get "http://#{address}/api/projects/iterations/#{iteration_number}/total_billed_points_by_craftsman", :headers => {'accept' => 'application/json'}, :query => {'key' => key}
13
19
  Validation.validate_response response.code
14
20
  return response.body
15
21
  end
@@ -40,7 +46,7 @@ module Artisan
40
46
 
41
47
  def self.get_stories_by_iteration(key, iteration_number, address)
42
48
  response = HTTParty.get(
43
- 'http://' + address + '/api/projects/iterations/stories',
49
+ "http://#{address}/api/projects/iterations/stories",
44
50
  :headers => {
45
51
  'accept' => 'application/json'
46
52
  },
@@ -54,25 +60,25 @@ module Artisan
54
60
  end
55
61
 
56
62
  def self.get_stories(key, address)
57
- response = HTTParty.get 'http://' + address + '/api/projects/stories', :headers => {'accept' => 'application/json'}, :query => {'key' => key}
63
+ response = HTTParty.get "http://#{address}/api/projects/stories", :headers => {'accept' => 'application/json'}, :query => {'key' => key}
58
64
  Validation.validate_response response.code
59
65
  return response.body
60
66
  end
61
67
 
62
68
  def self.get_backlog_stories(key, address)
63
- response = HTTParty.get 'http://' + address + '/api/projects/stories/backlog', :headers => {'accept' => 'application/json'}, :query => {'key' => key}
69
+ response = HTTParty.get "http://#{address}/api/projects/stories/backlog", :headers => {'accept' => 'application/json'}, :query => {'key' => key}
64
70
  Validation.validate_response response.code
65
71
  return response.body
66
72
  end
67
73
 
68
74
  def self.update_estimates(key, story, address)
69
- response = HTTParty.put 'http://' + address + '/api/projects/stories/' + story.number.to_s + '/estimates', :query => {:key => key}, :headers => {'accept' => 'application/json', 'content-type' => 'application/json'}, :body => {"optimistic" => story.optimistic, "realistic" => story.realistic, "pessimistic" => story.pessimistic}.to_json
75
+ response = HTTParty.put "http://#{address}/api/projects/stories/#{story.number.to_s}/estimates", :query => {:key => key}, :headers => {'accept' => 'application/json', 'content-type' => 'application/json'}, :body => {"optimistic" => story.optimistic, "realistic" => story.realistic, "pessimistic" => story.pessimistic}.to_json
70
76
  Validation.validate_response response.code
71
77
  return response.body
72
78
  end
73
79
 
74
80
  def self.authenticate(username, password, address)
75
- response = HTTParty.get 'http://' + address + '/api/auth/authenticate', :headers => {'accept' => 'application/json'}, :query => {'username' => username, 'password' => password}
81
+ response = HTTParty.get "http://#{address}/api/auth/authenticate", :headers => {'accept' => 'application/json'}, :query => {'username' => username, 'password' => password}
76
82
  Validation.validate_response response.code
77
83
  return response.body
78
84
  end
@@ -0,0 +1,17 @@
1
+ require 'spec_helper'
2
+
3
+ describe Artisan::IterationTotalBilledPointsByCraftsman do
4
+
5
+ it "initializes with an api call json chunk" do
6
+ hash = {
7
+ 'total_billed_points_by_craftsman' => {
8
+ 'Brian' => 10.5,
9
+ 'Joe' => 4
10
+ }
11
+ }
12
+ data = Artisan::IterationTotalBilledPointsByCraftsman.new(hash)
13
+ data.total_billed_points_by_craftsman["Brian"].should == 10.5
14
+ data.total_billed_points_by_craftsman["Joe"].should == 4
15
+ end
16
+
17
+ end
@@ -9,4 +9,5 @@ describe Artisan::Query do
9
9
  HTTParty.stub! :get => response
10
10
  Artisan::Query.get_signoff_pdf("api_key", 3, "address").should == pdf
11
11
  end
12
+
12
13
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: artisan
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  segments:
6
6
  - 0
7
7
  - 5
8
- - 2
8
+ - 3
9
9
  prerelease: false
10
10
  platform: ruby
11
11
  authors:
@@ -13,12 +13,12 @@ authors:
13
13
  autorequire: !!null
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2012-10-12 00:00:00.000000000 -05:00
16
+ date: 2012-11-29 00:00:00.000000000 -06:00
17
17
  default_executable: !!null
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: httparty
21
- requirement: &70191529260140 !ruby/object:Gem::Requirement
21
+ requirement: &70285296777480 !ruby/object:Gem::Requirement
22
22
  none: false
23
23
  requirements:
24
24
  - - ~>
@@ -30,10 +30,10 @@ dependencies:
30
30
  - 3
31
31
  type: :runtime
32
32
  prerelease: false
33
- version_requirements: *70191529260140
33
+ version_requirements: *70285296777480
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: shoulda
36
- requirement: &70191529259280 !ruby/object:Gem::Requirement
36
+ requirement: &70285296776600 !ruby/object:Gem::Requirement
37
37
  none: false
38
38
  requirements:
39
39
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  - 0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70191529259280
46
+ version_requirements: *70285296776600
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70191529258480 !ruby/object:Gem::Requirement
49
+ requirement: &70285296775680 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -58,10 +58,10 @@ dependencies:
58
58
  - 4
59
59
  type: :development
60
60
  prerelease: false
61
- version_requirements: *70191529258480
61
+ version_requirements: *70285296775680
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: rcov
64
- requirement: &70191529257580 !ruby/object:Gem::Requirement
64
+ requirement: &70285296774560 !ruby/object:Gem::Requirement
65
65
  none: false
66
66
  requirements:
67
67
  - - ! '>='
@@ -71,10 +71,10 @@ dependencies:
71
71
  - 0
72
72
  type: :development
73
73
  prerelease: false
74
- version_requirements: *70191529257580
74
+ version_requirements: *70285296774560
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rspec
77
- requirement: &70191529256780 !ruby/object:Gem::Requirement
77
+ requirement: &70285296773760 !ruby/object:Gem::Requirement
78
78
  none: false
79
79
  requirements:
80
80
  - - ~>
@@ -86,10 +86,10 @@ dependencies:
86
86
  - 0
87
87
  type: :development
88
88
  prerelease: false
89
- version_requirements: *70191529256780
89
+ version_requirements: *70285296773760
90
90
  - !ruby/object:Gem::Dependency
91
91
  name: cucumber
92
- requirement: &70191529255980 !ruby/object:Gem::Requirement
92
+ requirement: &70285296772720 !ruby/object:Gem::Requirement
93
93
  none: false
94
94
  requirements:
95
95
  - - ~>
@@ -101,7 +101,7 @@ dependencies:
101
101
  - 2
102
102
  type: :development
103
103
  prerelease: false
104
- version_requirements: *70191529255980
104
+ version_requirements: *70285296772720
105
105
  description: Make calls to the Artisan API.
106
106
  email: patrick@8thlight.com
107
107
  executables: []
@@ -122,6 +122,7 @@ files:
122
122
  - lib/artisan.rb
123
123
  - lib/artisan/base.rb
124
124
  - lib/artisan/iteration.rb
125
+ - lib/artisan/iteration_total_billed_points_by_craftsman.rb
125
126
  - lib/artisan/project.rb
126
127
  - lib/artisan/query.rb
127
128
  - lib/artisan/signoff_pdf.rb
@@ -129,6 +130,7 @@ files:
129
130
  - spec/artisan/artisan_spec.rb
130
131
  - spec/artisan/base_spec.rb
131
132
  - spec/artisan/iteration_spec.rb
133
+ - spec/artisan/iteration_total_billed_points_by_craftsman_spec.rb
132
134
  - spec/artisan/project_spec.rb
133
135
  - spec/artisan/query_spec.rb
134
136
  - spec/artisan/signoff_pdf_spec.rb
@@ -151,7 +153,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
153
  version: '0'
152
154
  segments:
153
155
  - 0
154
- hash: 2591799125537032861
156
+ hash: 4226835987318000970
155
157
  required_rubygems_version: !ruby/object:Gem::Requirement
156
158
  none: false
157
159
  requirements: