ticketmaster-basecamp 0.3.9 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ source "http://rubygems.org"
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
5
 
6
- gem "ticketmaster", "0.6.10"
6
+ gem "ticketmaster", "~> 0.7.0"
7
7
  gem "xml-simple", "~> 1.1"
8
8
  # Add dependencies to develop your gem here.
9
9
  # Include everything needed to run rake, tests, features, etc.
@@ -1,13 +1,13 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- activemodel (3.2.2)
5
- activesupport (= 3.2.2)
4
+ activemodel (3.2.3)
5
+ activesupport (= 3.2.3)
6
6
  builder (~> 3.0.0)
7
- activeresource (3.2.2)
8
- activemodel (= 3.2.2)
9
- activesupport (= 3.2.2)
10
- activesupport (3.2.2)
7
+ activeresource (3.2.3)
8
+ activemodel (= 3.2.3)
9
+ activesupport (= 3.2.3)
10
+ activesupport (3.2.3)
11
11
  i18n (~> 0.6)
12
12
  multi_json (~> 1.0)
13
13
  builder (3.0.0)
@@ -34,7 +34,7 @@ GEM
34
34
  multi_json (~> 1.0.3)
35
35
  simplecov-html (~> 0.5.3)
36
36
  simplecov-html (0.5.3)
37
- ticketmaster (0.6.10)
37
+ ticketmaster (0.7.0)
38
38
  activeresource (~> 3.0)
39
39
  activesupport (~> 3.0)
40
40
  hashie (~> 1.2)
@@ -48,5 +48,5 @@ DEPENDENCIES
48
48
  rcov (~> 1.0)
49
49
  rspec (~> 2.3)
50
50
  simplecov (~> 0.5)
51
- ticketmaster (= 0.6.10)
51
+ ticketmaster (~> 0.7.0)
52
52
  xml-simple (~> 1.1)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.9
1
+ 0.4.0
@@ -191,10 +191,11 @@ class BasecampAPI
191
191
  end
192
192
  end
193
193
  end
194
-
195
- def prefix_options
196
- id ? {} : super
197
- end
194
+
195
+ # Commented because it was causing a Missing prefix error when updating a TodoItem
196
+ #def prefix_options
197
+ # id ? {} : super
198
+ #end
198
199
  end
199
200
 
200
201
  class Account < Resource
@@ -59,11 +59,10 @@ module TicketMaster::Provider
59
59
  last_changed_on = updated
60
60
  end
61
61
 
62
- def ticket!(*options)
63
- options[0].merge!(:project_id => id) if options.first.is_a?(Hash)
64
- self.class.parent::Ticket.create(*options)
62
+ def ticket!(attributes_hash)
63
+ provider_parent(self.class)::Ticket.create attributes_hash.merge :project_id => id
65
64
  end
66
-
65
+
67
66
  def self.find_by_id(id)
68
67
  self.new API.find(id)
69
68
  end
@@ -13,78 +13,115 @@ module TicketMaster::Provider
13
13
  # * requestor => creator_name (read-only)
14
14
  # * project_id
15
15
  class Ticket < TicketMaster::Provider::Base::Ticket
16
- attr_accessor :list
17
-
18
- def self.find_by_id(project_id, id)
19
- self.search(project_id, {'id' => id}).first
20
- end
21
-
22
- def self.find_by_attributes(project_id, attributes = {})
23
- self.search(project_id, attributes)
16
+ def initialize(*options)
17
+ @system_data ||= {}
18
+ @cache ||= {}
19
+ first = options.first
20
+ case first
21
+ when Hash
22
+ super(first.to_hash)
23
+ else
24
+ @system_data[:client] = first
25
+ super(first.attributes)
26
+ end
24
27
  end
25
28
 
26
- def self.search(project_id, options = {}, limit = 1000)
27
- tickets = BasecampAPI::TodoList.find(:all, :params => {:project_id => project_id}).collect do |list|
28
- list.todo_items.collect { |item|
29
- item.attributes['list'] = list
30
- item
29
+ class << self
30
+
31
+ def find_by_id(project_id, id)
32
+ find_by_attributes(project_id, {:id => id}).first
33
+ end
34
+
35
+ def find_by_attributes(project_id, attributes = {})
36
+ search(project_id, attributes)
37
+ end
38
+
39
+ def search(project_id, options = {}, limit = 1000)
40
+ tickets = BasecampAPI::TodoList.find(:all, :params => {:project_id => project_id}).collect do |list|
41
+ list.todo_items.collect { |item|
42
+ item.attributes['list'] = list
43
+ item
31
44
  }
32
45
  end.flatten.collect { |ticket| self.new(ticket.attributes.merge!(:project_id => project_id)) }
33
- search_by_attribute(tickets, options, limit)
34
- end
35
-
36
- # It expects a single hash
37
- def self.create(*options)
38
- if options.first.is_a?(Hash)
39
- list_id = options[0].delete(:todo_list_id) || options[0].delete('todo_list_id')
40
- project_id = options[0].delete(:project_id) || options[0].delete('project_id')
41
- if list_id.nil? and project_id
42
- list_id = BasecampAPI::TodoList.create(:project_id => project_id, :name => 'New List').id
43
- end
44
- options[0][:todo_list_id] = list_id
46
+ search_by_attribute(tickets, options, limit)
47
+ end
48
+
49
+ # It expects a single hash
50
+ def create(attributes_hash)
51
+ todo_item_hash = create_todo_item_hash attributes_hash
52
+ todo_item = create_todo_item todo_item_hash
53
+
54
+ return nil unless todo_item.save
55
+
56
+ todo_item.project_id = attributes_hash[:project_id]
57
+ todo_item.todo_list_id = todo_item_hash[:todo_list_id]
58
+ self.new(todo_item)
45
59
  end
46
- something = BasecampAPI::TodoItem.new(options.first)
47
- something.save
48
- self.new something
60
+
61
+ private
62
+
63
+ def create_todo_item_hash(ticket_hash)
64
+ a = ticket_hash
65
+ validate_ticket_hash a
66
+ todo_item_hash = {
67
+ :content => a[:title],
68
+ :position => a[:priority] || 1,
69
+ :todo_list_id => a[:todo_list_id] || create_todo_list({
70
+ :project_id => a[:project_id],
71
+ :name => "#{a[:title]} list"}).id
72
+ }
73
+ end
74
+
75
+ def create_todo_item(attributes_hash)
76
+ BasecampAPI::TodoItem.new(attributes_hash)
77
+ end
78
+
79
+ def validate_ticket_hash(attributes_hash)
80
+ title = attributes_hash[:title]
81
+ raise ArgumentError.new "Title is required" if title.nil? or title.empty?
82
+ end
83
+
84
+ def create_todo_list(attributes)
85
+ BasecampAPI::TodoList.create(attributes)
86
+ end
87
+ end
88
+
89
+ def copy_to(todo_item)
90
+ todo_item.completed = status
91
+ todo_item.position = priority
92
+ todo_item.name = title
93
+ todo_item.content = title
94
+ todo_item.completed = resolution
95
+ todo_item.responsible_party_name = assignee
96
+ todo_item.creator_name = requestor
97
+ todo_item
98
+ end
99
+
100
+ def save
101
+ todo_item = BasecampAPI::TodoItem.find id, :params => { :todo_list_id => todo_list_id }
102
+ copy_to(todo_item).save
49
103
  end
50
104
 
51
- def initialize(*object)
52
- if object.first
53
- object = object.first
54
- unless object.is_a? Hash
55
- hash = {:id => object.id,
56
- :completed => object.completed,
57
- :title => object.content,
58
- :content => object.content,
59
- :project_id => object.project_id,
60
- :priority => object.position,
61
- :position => object.position,
62
- :description => object.description,
63
- :assignee => object.creator_name,
64
- :requestor => object.requestor}
65
- else
66
- hash = object
67
- end
68
- super hash
69
- end
105
+ def todo_list_id
106
+ self['todo_list_id'].to_i
70
107
  end
71
108
 
72
109
  def status
73
110
  self.completed ? 'completed' : 'incomplete'
74
111
  end
75
-
112
+
76
113
  def priority
77
114
  self.position
78
115
  end
79
-
116
+
80
117
  def priority=(pri)
81
118
  self.position = pri
82
119
  end
83
-
120
+
84
121
  def title
85
122
  self.content
86
123
  end
87
-
124
+
88
125
  def title=(titl)
89
126
  self.content = titl
90
127
  end
@@ -92,28 +129,38 @@ module TicketMaster::Provider
92
129
  def updated_at=(comp)
93
130
  self.completed_on = comp
94
131
  end
95
-
132
+
96
133
  def description
97
134
  self.content
98
135
  end
99
-
136
+
100
137
  def description=(desc)
101
138
  self.content = desc
102
139
  end
103
-
140
+
104
141
  def assignee
105
142
  self.responsible_party_name
106
143
  end
107
-
144
+
108
145
  def requestor
109
146
  self.creator_name
110
147
  end
111
-
148
+
112
149
  def comment!(*options)
113
150
  options[0].merge!(:todo_item_id => id) if options.first.is_a?(Hash)
114
151
  self.class.parent::Comment.create(*options)
115
152
  end
116
153
 
154
+ # FIXME: Remove this debug code
155
+ class Net::HTTP
156
+ def send(*args)
157
+ p "<<< Net::HTTP#send(#{args.inspect}) >>>"
158
+ resp = super
159
+ p "<<< Response = #{resp.inspect} >>>"
160
+ resp
161
+ end
162
+ end
163
+
117
164
  end
118
165
  end
119
166
  end
@@ -0,0 +1,15 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <todo-item>
3
+ <comments-count type="integer">0</comments-count>
4
+ <completed type="boolean">false</completed>
5
+ <content>hudnthdau</content>
6
+ <created-at type="datetime">2010-07-21T01:14:34Z</created-at>
7
+ <updated-at type="datetime">2010-07-20T23:36:49Z</updated-at>
8
+ <creator-id type="integer">5654019</creator-id>
9
+ <due-at type="datetime" nil="true"></due-at>
10
+ <id type="integer">62509330</id>
11
+ <position type="integer">1</position>
12
+ <todo-list-id type="integer">9973518</todo-list-id>
13
+ <created-on type="datetime" deprecated="true">2010-07-21T01:14:34Z</created-on>
14
+ <creator-name>Kia Kroas</creator-name>
15
+ </todo-item>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <todo-list>
3
+ <completed-count type="integer">0</completed-count>
4
+ <description>etauhnotehunoteh tnheontu honetuh osneh noe hosneuh toneuh</description>
5
+ <id type="integer">9972756</id>
6
+ <milestone-id type="integer" nil="true"></milestone-id>
7
+ <name>Cheese</name>
8
+ <position type="integer">2</position>
9
+ <private type="boolean">false</private>
10
+ <project-id type="integer">5220065</project-id>
11
+ <tracked type="boolean">false</tracked>
12
+ <uncompleted-count type="integer">6</uncompleted-count>
13
+ <complete>false</complete>
14
+ </todo-list>
@@ -0,0 +1 @@
1
+ {"response":{"id":62509330}
@@ -0,0 +1,14 @@
1
+ <todo-item>
2
+ <comments-count type="integer">0</comments-count>
3
+ <completed type="boolean">false</completed>
4
+ <content>oeoeuoeuoeuou</content>
5
+ <created-at type="datetime">2010-07-20T23:36:49Z</created-at>
6
+ <updated-at type="datetime">2010-07-20T23:36:49Z</updated-at>
7
+ <creator-id type="integer">5654019</creator-id>
8
+ <due-at type="datetime" nil="true"></due-at>
9
+ <id type="integer">62504112</id>
10
+ <position type="integer">1</position>
11
+ <todo-list-id type="integer">9972756</todo-list-id>
12
+ <created-on type="datetime" deprecated="true">2010-07-20T23:36:49Z</created-on>
13
+ <creator-name>Kia Kroas</creator-name>
14
+ </todo-item>
@@ -9,66 +9,76 @@ describe "Ticketmaster::Provider::Basecamp::Ticket" do
9
9
  mock.get '/projects/5220065/todo_lists.xml', headers, fixture_for('todo_lists'), 200
10
10
  mock.get '/todo_lists/9973518/todo_items.xml', headers, fixture_for('todo_lists/9973518_items'), 200
11
11
  mock.get '/todo_lists/9972756/todo_items.xml', headers, fixture_for('todo_lists/9972756_items'), 200
12
+ mock.get '/todo_lists/9973518/todo_items/62509330.xml', headers, fixture_for('todo_items/62509330_todo_item'), 200
13
+ mock.get '/todo_lists/0/todo_items/62509330.xml', headers, fixture_for('todo_items/62509330_todo_item'), 200
12
14
  mock.put '/todo_items/62509330.xml', wheaders, '', 200
13
- mock.post '/todo_lists/9972756/todo_items.xml', wheaders, '', 200
15
+ mock.post '/projects/5220065/todo_lists.xml', wheaders, fixture_for('todo_list_9972756'), 201
16
+ mock.put '/todo_lists/9973518/todo_items/62509330.xml', wheaders, '', 200
17
+ mock.put '/todo_lists/0/todo_items/62509330.xml', wheaders, '', 200
18
+ mock.post '/todo_lists/9972756/todo_items.xml', wheaders, fixture_for('todo_lists/create'), 201
14
19
  end
15
20
  @project_id = 5220065
16
21
  @ticket_id = 62509330
17
22
  end
18
-
23
+
19
24
  before(:each) do
20
25
  @ticketmaster = TicketMaster.new(:basecamp, :domain => 'ticketmaster.basecamphq.com', :token => '000000')
21
26
  @project = @ticketmaster.project(@project_id)
22
27
  @klass = TicketMaster::Provider::Basecamp::Ticket
23
28
  end
24
-
29
+
25
30
  it "should be able to load all tickets" do
26
31
  @project.tickets.should be_an_instance_of(Array)
27
32
  @project.tickets.first.should be_an_instance_of(@klass)
28
33
  end
29
-
34
+
30
35
  it "should be able to load all tickets based on an array of ids" do
31
36
  @tickets = @project.tickets([@ticket_id])
32
37
  @tickets.should be_an_instance_of(Array)
33
38
  @tickets.first.should be_an_instance_of(@klass)
34
39
  @tickets.first.id.should == @ticket_id
35
40
  end
36
-
41
+
37
42
  it "should be able to load all tickets based on attributes" do
38
43
  @tickets = @project.tickets(:id => @ticket_id)
39
44
  @tickets.should be_an_instance_of(Array)
40
45
  @tickets.first.should be_an_instance_of(@klass)
41
46
  @tickets.first.id.should == @ticket_id
42
47
  end
43
-
48
+
44
49
  it "should return the ticket class" do
45
50
  @project.ticket.should == @klass
46
51
  end
47
-
52
+
48
53
  it "should be able to load a single ticket" do
49
54
  @ticket = @project.ticket(@ticket_id)
50
55
  @ticket.should be_an_instance_of(@klass)
51
56
  @ticket.id.should == @ticket_id
52
57
  end
53
-
58
+
54
59
  it "should be able to load a single ticket based on attributes" do
55
60
  @ticket = @project.ticket(:id => @ticket_id)
56
61
  @ticket.should be_an_instance_of(@klass)
57
62
  @ticket.id.should == @ticket_id
58
63
  end
59
-
64
+
60
65
  it "should be able to update and save a ticket" do
61
- pending
62
66
  @ticket = @project.ticket(@ticket_id)
63
- @ticket.save.should == nil
64
- @ticket.description = 'hello'
65
- @ticket.save.should == true
67
+ @ticket.save.should be_true
66
68
  end
67
69
 
68
70
  it "should be able to create a ticket" do
69
- pending
70
71
  @ticket = @project.ticket!(:todo_list_id => 9972756, :title => 'Ticket #12', :description => 'Body')
71
72
  @ticket.should be_an_instance_of(@klass)
73
+ @ticket.project_id.should_not be_nil
74
+ @ticket.todo_list_id.should_not be_nil
75
+ end
76
+
77
+ it "should be able to create a ticket without passing a todo list id" do
78
+ @ticket = @project.ticket!(:title => 'Ticket #13', :description => 'Body')
79
+ @ticket.should be_an_instance_of(@klass)
80
+ @ticket.project_id.should_not be_nil
81
+ @ticket.todo_list_id.should_not be_nil
72
82
  end
73
-
83
+
74
84
  end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "ticketmaster-basecamp"
8
- s.version = "0.3.9"
8
+ s.version = "0.4.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["HybridGroup"]
12
- s.date = "2012-03-16"
12
+ s.date = "2012-04-20"
13
13
  s.description = "This gem provides an interface to basecamp through the ticketmaster gem"
14
14
  s.email = "hong.quach@abigfisch.com"
15
15
  s.extra_rdoc_files = [
@@ -46,12 +46,16 @@ Gem::Specification.new do |s|
46
46
  "spec/fixtures/projects/5220065.xml",
47
47
  "spec/fixtures/projects/create.json",
48
48
  "spec/fixtures/projects/create.xml",
49
+ "spec/fixtures/todo_items/62509330_todo_item.xml",
50
+ "spec/fixtures/todo_list_9972756.xml",
49
51
  "spec/fixtures/todo_lists.json",
50
52
  "spec/fixtures/todo_lists.xml",
51
53
  "spec/fixtures/todo_lists/9972756_items.json",
52
54
  "spec/fixtures/todo_lists/9972756_items.xml",
53
55
  "spec/fixtures/todo_lists/9973518_items.json",
54
56
  "spec/fixtures/todo_lists/9973518_items.xml",
57
+ "spec/fixtures/todo_lists/create.json",
58
+ "spec/fixtures/todo_lists/create.xml",
55
59
  "spec/projects_spec.rb",
56
60
  "spec/spec.opts",
57
61
  "spec/spec_helper.rb",
@@ -68,14 +72,14 @@ Gem::Specification.new do |s|
68
72
  s.specification_version = 3
69
73
 
70
74
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
71
- s.add_runtime_dependency(%q<ticketmaster>, ["= 0.6.10"])
75
+ s.add_runtime_dependency(%q<ticketmaster>, ["~> 0.7.0"])
72
76
  s.add_runtime_dependency(%q<xml-simple>, ["~> 1.1"])
73
77
  s.add_development_dependency(%q<rspec>, ["~> 2.3"])
74
78
  s.add_development_dependency(%q<jeweler>, ["~> 1.6"])
75
79
  s.add_development_dependency(%q<simplecov>, ["~> 0.5"])
76
80
  s.add_development_dependency(%q<rcov>, ["~> 1.0"])
77
81
  else
78
- s.add_dependency(%q<ticketmaster>, ["= 0.6.10"])
82
+ s.add_dependency(%q<ticketmaster>, ["~> 0.7.0"])
79
83
  s.add_dependency(%q<xml-simple>, ["~> 1.1"])
80
84
  s.add_dependency(%q<rspec>, ["~> 2.3"])
81
85
  s.add_dependency(%q<jeweler>, ["~> 1.6"])
@@ -83,7 +87,7 @@ Gem::Specification.new do |s|
83
87
  s.add_dependency(%q<rcov>, ["~> 1.0"])
84
88
  end
85
89
  else
86
- s.add_dependency(%q<ticketmaster>, ["= 0.6.10"])
90
+ s.add_dependency(%q<ticketmaster>, ["~> 0.7.0"])
87
91
  s.add_dependency(%q<xml-simple>, ["~> 1.1"])
88
92
  s.add_dependency(%q<rspec>, ["~> 2.3"])
89
93
  s.add_dependency(%q<jeweler>, ["~> 1.6"])
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ticketmaster-basecamp
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 15
4
5
  prerelease:
5
- version: 0.3.9
6
+ segments:
7
+ - 0
8
+ - 4
9
+ - 0
10
+ version: 0.4.0
6
11
  platform: ruby
7
12
  authors:
8
13
  - HybridGroup
@@ -10,73 +15,98 @@ autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
17
 
13
- date: 2012-03-16 00:00:00 Z
18
+ date: 2012-04-20 00:00:00 Z
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: ticketmaster
22
+ prerelease: false
23
+ type: :runtime
17
24
  requirement: &id001 !ruby/object:Gem::Requirement
18
25
  none: false
19
26
  requirements:
20
- - - "="
27
+ - - ~>
21
28
  - !ruby/object:Gem::Version
22
- version: 0.6.10
23
- type: :runtime
24
- prerelease: false
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ - 7
33
+ - 0
34
+ version: 0.7.0
25
35
  version_requirements: *id001
26
36
  - !ruby/object:Gem::Dependency
27
37
  name: xml-simple
38
+ prerelease: false
39
+ type: :runtime
28
40
  requirement: &id002 !ruby/object:Gem::Requirement
29
41
  none: false
30
42
  requirements:
31
43
  - - ~>
32
44
  - !ruby/object:Gem::Version
45
+ hash: 13
46
+ segments:
47
+ - 1
48
+ - 1
33
49
  version: "1.1"
34
- type: :runtime
35
- prerelease: false
36
50
  version_requirements: *id002
37
51
  - !ruby/object:Gem::Dependency
38
52
  name: rspec
53
+ prerelease: false
54
+ type: :development
39
55
  requirement: &id003 !ruby/object:Gem::Requirement
40
56
  none: false
41
57
  requirements:
42
58
  - - ~>
43
59
  - !ruby/object:Gem::Version
60
+ hash: 5
61
+ segments:
62
+ - 2
63
+ - 3
44
64
  version: "2.3"
45
- type: :development
46
- prerelease: false
47
65
  version_requirements: *id003
48
66
  - !ruby/object:Gem::Dependency
49
67
  name: jeweler
68
+ prerelease: false
69
+ type: :development
50
70
  requirement: &id004 !ruby/object:Gem::Requirement
51
71
  none: false
52
72
  requirements:
53
73
  - - ~>
54
74
  - !ruby/object:Gem::Version
75
+ hash: 3
76
+ segments:
77
+ - 1
78
+ - 6
55
79
  version: "1.6"
56
- type: :development
57
- prerelease: false
58
80
  version_requirements: *id004
59
81
  - !ruby/object:Gem::Dependency
60
82
  name: simplecov
83
+ prerelease: false
84
+ type: :development
61
85
  requirement: &id005 !ruby/object:Gem::Requirement
62
86
  none: false
63
87
  requirements:
64
88
  - - ~>
65
89
  - !ruby/object:Gem::Version
90
+ hash: 1
91
+ segments:
92
+ - 0
93
+ - 5
66
94
  version: "0.5"
67
- type: :development
68
- prerelease: false
69
95
  version_requirements: *id005
70
96
  - !ruby/object:Gem::Dependency
71
97
  name: rcov
98
+ prerelease: false
99
+ type: :development
72
100
  requirement: &id006 !ruby/object:Gem::Requirement
73
101
  none: false
74
102
  requirements:
75
103
  - - ~>
76
104
  - !ruby/object:Gem::Version
105
+ hash: 15
106
+ segments:
107
+ - 1
108
+ - 0
77
109
  version: "1.0"
78
- type: :development
79
- prerelease: false
80
110
  version_requirements: *id006
81
111
  description: This gem provides an interface to basecamp through the ticketmaster gem
82
112
  email: hong.quach@abigfisch.com
@@ -117,12 +147,16 @@ files:
117
147
  - spec/fixtures/projects/5220065.xml
118
148
  - spec/fixtures/projects/create.json
119
149
  - spec/fixtures/projects/create.xml
150
+ - spec/fixtures/todo_items/62509330_todo_item.xml
151
+ - spec/fixtures/todo_list_9972756.xml
120
152
  - spec/fixtures/todo_lists.json
121
153
  - spec/fixtures/todo_lists.xml
122
154
  - spec/fixtures/todo_lists/9972756_items.json
123
155
  - spec/fixtures/todo_lists/9972756_items.xml
124
156
  - spec/fixtures/todo_lists/9973518_items.json
125
157
  - spec/fixtures/todo_lists/9973518_items.xml
158
+ - spec/fixtures/todo_lists/create.json
159
+ - spec/fixtures/todo_lists/create.xml
126
160
  - spec/projects_spec.rb
127
161
  - spec/spec.opts
128
162
  - spec/spec_helper.rb
@@ -142,12 +176,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
142
176
  requirements:
143
177
  - - ">="
144
178
  - !ruby/object:Gem::Version
179
+ hash: 3
180
+ segments:
181
+ - 0
145
182
  version: "0"
146
183
  required_rubygems_version: !ruby/object:Gem::Requirement
147
184
  none: false
148
185
  requirements:
149
186
  - - ">="
150
187
  - !ruby/object:Gem::Version
188
+ hash: 3
189
+ segments:
190
+ - 0
151
191
  version: "0"
152
192
  requirements: []
153
193