hone-pivotal-tracker 0.0.5 → 0.0.6

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 CHANGED
@@ -1 +1 @@
1
- 0.0.5
1
+ 0.0.6
@@ -8,12 +8,14 @@ require 'cgi'
8
8
  class Story; end
9
9
  class Iteration; end
10
10
  class Project; end
11
+ class Note; end
11
12
 
12
13
  require 'pivotal-tracker/extensions'
13
14
  require 'pivotal-tracker/project'
14
15
  require 'pivotal-tracker/story'
15
16
  require 'pivotal-tracker/iteration'
16
17
  require 'pivotal-tracker/note'
18
+ require 'pivotal-tracker/task'
17
19
 
18
20
  class PivotalTracker
19
21
  def initialize(project_id, token, options = {})
@@ -38,10 +40,29 @@ class PivotalTracker
38
40
  Note.parse(response)
39
41
  end
40
42
 
43
+ def tasks(id)
44
+ response = story_resource(id)["/tasks"].get
45
+ Task.parse(response)
46
+ end
47
+
41
48
  def create_note(id, note)
42
49
  story_resource(id)["/notes"].post note.to_xml
43
50
  end
44
51
 
52
+ def create_task(id, task)
53
+ story_resource(id)["/tasks"].post task.to_xml
54
+ end
55
+
56
+ def find_task(story_id, task_id)
57
+ response = story_resource(story_id)["/tasks/#{task_id}"].get
58
+ Task.parse(response)
59
+ end
60
+
61
+ def update_task(story_id, task)
62
+ task_id = task.id
63
+ story_resource(id)["/tasks/#{task_id}"].put task.to_xml
64
+ end
65
+
45
66
  def current_iteration
46
67
  response = iterations_resource("/current").get
47
68
  Iteration.parse(response).first
@@ -14,10 +14,10 @@ class Note
14
14
 
15
15
  def to_xml(options = {})
16
16
  builder = Builder::XmlMarkup.new(options)
17
- builder.note do |story|
17
+ builder.note do |note|
18
18
  Note.elements.each do |element_type|
19
19
  element = send(element_type.name)
20
- eval("story.#{element_type.name}(\"#{element.to_s.gsub("\"", "\\\"")}\")") if element
20
+ eval("note.#{element_type.name}(\"#{element.to_s.gsub("\"", "\\\"")}\")") if element
21
21
  end
22
22
  end
23
23
  end
@@ -0,0 +1,38 @@
1
+ =begin
2
+ <?xml version="1.0" encoding="UTF-8"?>
3
+ <task>
4
+ <id type="integer">TASK_ID</id>
5
+ <description>find shields</description>
6
+ <position>1</position>
7
+ <complete>false</complete>
8
+ <created_at type="datetime">2008/12/10 00:00:00 UTC</created_at>
9
+ </task>
10
+ =end
11
+ class Task
12
+ include HappyMapper
13
+ element :id, Integer
14
+ element :description, String
15
+ element :position, Integer
16
+ element :complete, Boolean
17
+ element :created_at, DateTime
18
+
19
+ def initialize(attributes = {})
20
+ attributes.each do |key, value|
21
+ send("#{key}=", value)
22
+ end
23
+ end
24
+
25
+ def to_xml(options = {})
26
+ builder = Builder::XmlMarkup.new(options)
27
+ builder.task do |task|
28
+ Task.elements.each do |element_type|
29
+ element = send(element_type.name)
30
+ eval("task.#{element_type.name}(\"#{element.to_s.gsub("\"", "\\\"")}\")") if element
31
+ end
32
+ end
33
+ end
34
+
35
+ def to_param
36
+ id.to_s
37
+ end
38
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{pivotal-tracker}
8
- s.version = "0.0.5"
8
+ s.version = "0.0.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Justin Smestad", "Josh Nichols", "Terence Lee"]
12
- s.date = %q{2009-08-30}
12
+ s.date = %q{2009-09-09}
13
13
  s.email = %q{justin.smestad@gmail.com}
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE",
@@ -28,6 +28,7 @@ Gem::Specification.new do |s|
28
28
  "lib/pivotal-tracker/note.rb",
29
29
  "lib/pivotal-tracker/project.rb",
30
30
  "lib/pivotal-tracker/story.rb",
31
+ "lib/pivotal-tracker/task.rb",
31
32
  "pivotal-tracker.gemspec",
32
33
  "test/extensions_test.rb",
33
34
  "test/pivotal_tracker_test.rb",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hone-pivotal-tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Smestad
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2009-08-30 00:00:00 -07:00
14
+ date: 2009-09-09 00:00:00 -07:00
15
15
  default_executable:
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
@@ -56,13 +56,13 @@ files:
56
56
  - lib/pivotal-tracker/note.rb
57
57
  - lib/pivotal-tracker/project.rb
58
58
  - lib/pivotal-tracker/story.rb
59
+ - lib/pivotal-tracker/task.rb
59
60
  - pivotal-tracker.gemspec
60
61
  - test/extensions_test.rb
61
62
  - test/pivotal_tracker_test.rb
62
63
  - test/test_helper.rb
63
64
  has_rdoc: true
64
65
  homepage: http://github.com/jsmestad/pivotal-tracker
65
- licenses:
66
66
  post_install_message:
67
67
  rdoc_options:
68
68
  - --charset=UTF-8
@@ -83,7 +83,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
83
83
  requirements: []
84
84
 
85
85
  rubyforge_project:
86
- rubygems_version: 1.3.5
86
+ rubygems_version: 1.2.0
87
87
  signing_key:
88
88
  specification_version: 2
89
89
  summary: Ruby wrapper for the Pivotal Tracker API