artisan 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/VERSION +1 -1
- data/artisan.gemspec +2 -2
- data/lib/artisan.rb +6 -0
- data/lib/artisan/project.rb +3 -3
- data/lib/artisan/query.rb +7 -1
- data/spec/artisan/project_spec.rb +11 -2
- metadata +21 -21
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.3
|
data/artisan.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{artisan}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = [%q{patrickgombert}]
|
12
|
-
s.date = %q{2011-08-
|
12
|
+
s.date = %q{2011-08-10}
|
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 = [
|
data/lib/artisan.rb
CHANGED
@@ -9,6 +9,12 @@ module Artisan
|
|
9
9
|
return Project.new(json_chunk)
|
10
10
|
end
|
11
11
|
|
12
|
+
def self.get_stories(key, address = 'artisan.8thlight.com')
|
13
|
+
response = Query.get_stories(key, address)
|
14
|
+
json_chunk = JSON::parse(response)
|
15
|
+
return json_chunk
|
16
|
+
end
|
17
|
+
|
12
18
|
def self.update_estimates(key, story, address = 'artisan.8thlight.com')
|
13
19
|
response = Query.update_estimates(key, story, address)
|
14
20
|
end
|
data/lib/artisan/project.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
module Artisan
|
2
2
|
class Project
|
3
3
|
|
4
|
-
attr_reader :stories
|
4
|
+
attr_reader :stories, :name, :description
|
5
5
|
|
6
6
|
def initialize json_chunk
|
7
|
-
story_json_chunks = json_chunk.collect{|story| story["story"]}
|
8
7
|
@stories = []
|
9
|
-
|
8
|
+
@name = json_chunk["project"]["name"]
|
9
|
+
@description = json_chunk["project"]["description"]
|
10
10
|
end
|
11
11
|
|
12
12
|
def generate_stories story_chunks
|
data/lib/artisan/query.rb
CHANGED
@@ -8,10 +8,16 @@ module Artisan
|
|
8
8
|
return response.body
|
9
9
|
end
|
10
10
|
|
11
|
+
def self.get_stories(key, address = 'artisan.8thlight.com')
|
12
|
+
response = HTTParty.get 'http://' + address + '/api/projects/stories', :headers => {'accept' => 'application/json'}, :query => {'key' => key}
|
13
|
+
Validation.validate_response response.code
|
14
|
+
return response.body
|
15
|
+
end
|
16
|
+
|
11
17
|
def self.update_estimates(key, story, address = 'artisan.8thlight.com')
|
12
18
|
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
|
13
19
|
Validation.validate_response response.code
|
14
|
-
return response
|
20
|
+
return response.body
|
15
21
|
end
|
16
22
|
|
17
23
|
module Validation
|
@@ -3,9 +3,18 @@ require 'json'
|
|
3
3
|
|
4
4
|
describe 'Project' do
|
5
5
|
it "intializes with an api call json chunk" do
|
6
|
+
chunk = '{"project":{"description":"This is a project.", "name":"A"}}'
|
7
|
+
|
8
|
+
@project = Artisan::Project.new(JSON.parse(chunk))
|
9
|
+
@project.name.should == "A"
|
10
|
+
@project.description.should == "This is a project."
|
11
|
+
end
|
12
|
+
|
13
|
+
it "contains stories" do
|
14
|
+
@project = Artisan::Project.new({'project' => {'name' => 'name', 'description' => 'description'}})
|
6
15
|
chunk = '[{"story":{"name":"T1","number":1,"optimistic":null,"pessimistic":null,"realistic":null}},{"story":{"name":"T2","number":2,"optimistic":null,"pessimistic":null,"realistic":null}},{"story":{"name":"T3","number":3,"optimistic":null,"pessimistic":null,"realistic":null}}]'
|
7
16
|
|
8
|
-
project
|
9
|
-
project.stories.size.should == 3
|
17
|
+
@project.generate_stories JSON.parse(chunk)
|
18
|
+
@project.stories.size.should == 3
|
10
19
|
end
|
11
20
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: artisan
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
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: 2011-08-
|
12
|
+
date: 2011-08-10 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
16
|
-
requirement: &
|
16
|
+
requirement: &22153300 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.7.3
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *22153300
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: shoulda
|
27
|
-
requirement: &
|
27
|
+
requirement: &22152700 !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: *22152700
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: bundler
|
38
|
-
requirement: &
|
38
|
+
requirement: &22152040 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.0.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *22152040
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: jeweler
|
49
|
-
requirement: &
|
49
|
+
requirement: &22148960 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.6.4
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *22148960
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rcov
|
60
|
-
requirement: &
|
60
|
+
requirement: &22148360 !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: *22148360
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rspec
|
71
|
-
requirement: &
|
71
|
+
requirement: &22147840 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 2.6.0
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *22147840
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: cucumber
|
82
|
-
requirement: &
|
82
|
+
requirement: &22147320 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: 1.0.2
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *22147320
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: httparty
|
93
|
-
requirement: &
|
93
|
+
requirement: &22146720 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ~>
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: 0.7.8
|
99
99
|
type: :runtime
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *22146720
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: thoughtbot-shoulda
|
104
|
-
requirement: &
|
104
|
+
requirement: &22146120 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
@@ -109,7 +109,7 @@ dependencies:
|
|
109
109
|
version: '0'
|
110
110
|
type: :development
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *22146120
|
113
113
|
description: Make calls to the Artisan API.
|
114
114
|
email: patrick@8thlight.com
|
115
115
|
executables: []
|
@@ -150,7 +150,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
150
150
|
version: '0'
|
151
151
|
segments:
|
152
152
|
- 0
|
153
|
-
hash:
|
153
|
+
hash: 4442351116012488415
|
154
154
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
155
155
|
none: false
|
156
156
|
requirements:
|