pivotal-tracker 0.5.12 → 0.5.13

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.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZTAzM2M0NWNhYTg5Njg4MjBiZDE5NWY0MmEyZDY1YWZkZTAyMDg4OQ==
5
- data.tar.gz: !binary |-
6
- YWQyNjc2NTcxNTk3NmNhYjE0ZjNhYTJmOGIwMDM2OGFhMmYwMzhiMg==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ZTI1MzRkNzdiNDE4YjQ1NmVlZWYwM2UwMWIyY2EyOWFlNDVlYmM4MmMzOTgw
10
- N2I4NGI5ZDUxYjcxYjA5MmI5ZGU4YjRiZGI0ZTA2NDRmZjc0MDFhZjA5MDcz
11
- OGJkNWE3YThjYWY5YjMzMmI2MGU5MzUyNzdmN2EwOTM5YWY0NmY=
12
- data.tar.gz: !binary |-
13
- NDdkMDM1YzkzMmMxOGQyZmRjMzI3MzQyNDc3MDY1NzM3MWFkMzJiZmY4NTYx
14
- NDQ0OTBkZjQ2NDhiNGE3MTIxZDEzMzc5OTQ5YTg3YWU4NTM1NzIzYWNhMTQ0
15
- MWVmMDY5NWM3ZjlkNDU5N2QzNmFjNDg4N2VhNDJkODQyNWZhYjE=
2
+ SHA1:
3
+ metadata.gz: b28597501c63d1f51fa6b06d6fc1f2a067390ab1
4
+ data.tar.gz: 8081ed8e70b6622e4ae12d88d3c5d6da25ddc7d8
5
+ SHA512:
6
+ metadata.gz: b00f2a7a7b34c4018c4eca79e8184e3df36fbe89881085a7455f29c6f12d717522eb0fdee2256040cc3247cbd8d8bffef34ff6800312d0d0a96292169a64fab0
7
+ data.tar.gz: bb16c60cfab935986a42d27f7204aec2a098a750bb2785843f73aac38f1a97c0b4e94bf4cdf4c505f5bfb608303eae9424c700b59904f4bfa11ff2eb954fd437
@@ -0,0 +1,17 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+ *.bundle
11
+ *.so
12
+ *.o
13
+ *.a
14
+ mkmf.log
15
+
16
+ request_test.rb
17
+ stale_fish-tmp.yml
data/Gemfile CHANGED
@@ -1,17 +1,3 @@
1
- source 'http://rubygems.org'
1
+ source 'https://rubygems.org'
2
2
 
3
- group :runtime do
4
- gem 'rest-client', '~> 1.6.0'
5
- gem 'nokogiri-happymapper', '>= 0.5.4', :require => 'happymapper'
6
- gem 'builder'
7
- gem 'nokogiri', '>= 1.5.5'
8
- gem 'crack'
9
- end
10
-
11
- group :test do
12
- gem 'rspec'
13
- gem 'rake'
14
- gem 'jeweler'
15
- gem 'stale_fish', '~> 1.3.2'
16
- gem 'autotest'
17
- end
3
+ gemspec
@@ -0,0 +1,10 @@
1
+
2
+ Unreleased
3
+ ==================
4
+
5
+ * Support for API version 5
6
+ * Drop support for API version 3
7
+ * Move to Faraday backend
8
+ * Remove StaleFish in favor of simpler webmock
9
+ * Thread-safe design
10
+
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2009 Justin Smestad
1
+ Copyright (c) 2009 - 2015 Justin Smestad
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
@@ -1,21 +1,33 @@
1
- = pivotal-tracker.rb
2
-
3
- Ruby wrapper for Pivotal Tracker API, no frameworks required. Simply Ruby.
1
+ ## pivotal-tracker.rb - the original ruby gem
4
2
 
5
3
  {<img src="https://secure.travis-ci.org/jsmestad/pivotal-tracker.png" />}[http://travis-ci.org/jsmestad/pivotal-tracker]
6
4
  {<img src="https://badge.fury.io/rb/pivotal-tracker.png" alt="Gem Version" />}[http://rubygems.org/gems/pivotal-tracker]
7
5
 
8
- == Features
6
+ #### NOTICE
7
+
8
+ I am currently re-writing this gem to address the biggest feature requests that are long overdue:
9
+
10
+ * Gem is thread-safe
11
+ * Support Pivotal Tracker APIv5 and dropping V3 support
12
+ * Overhauled spec suite
13
+
14
+ This will become the `v1.x` release.
15
+
16
+ ### Original README (for `v0.x` releases)
17
+
18
+ ## Features
9
19
 
10
20
  * Compatible with Pivotal Tracker API version 3
11
21
  * ActiveRecord-style Wrapper API
12
22
  * Support for SSL protected repositories
13
23
 
14
- == Overview
24
+ ## Overview
15
25
 
16
26
  PivotalTracker::Client.token('myusername@email.com', 'secretpassword') # Automatically fetch API Token
17
27
  PivotalTracker::Client.token = 'jkfduisj97823974j2kl24899234' # Manually set API Token
18
28
 
29
+ PivotalTracker::Client.timeout = 50 # Set timeout on the connection with pivotal. Default is 60 seconds
30
+
19
31
  @projects = PivotalTracker::Project.all # return all projects
20
32
  @a_project = PivotalTracker::Project.find(84739) # find project with a given ID
21
33
 
@@ -36,6 +48,9 @@ Ruby wrapper for Pivotal Tracker API, no frameworks required. Simply Ruby.
36
48
  @story.notes.all # return all notes (comments) for a story
37
49
  @story.notes.create(:text => 'A new comment', :noted_at => '06/29/2010 05:00 EST') # add a new note
38
50
 
51
+ @story.tasks.all # return all tasks for a story
52
+ @story.tasks.create(:description => 'Task Description') # add a new task
53
+
39
54
 
40
55
  @story.attachments # return an array of all attachment items (data only, not the files)
41
56
  @story.upload_attachment(file_path) # add a file attachment to @story that can be found at file_path
@@ -54,29 +69,15 @@ Ruby wrapper for Pivotal Tracker API, no frameworks required. Simply Ruby.
54
69
 
55
70
  The API is based on the following this gist: http://gist.github.com/283120
56
71
 
57
- == Getting Started
58
-
59
- * Installing:
60
-
61
- $ gem install pivotal-tracker
62
-
63
- * Contributing (requires Bundler >= 0.9.7):
72
+ ## Additional Information
64
73
 
65
- $ git clone git://github.com/jsmestad/pivotal-tracker
66
- $ cd pivotal-tracker
67
- $ bundle install
68
- $ bundle exec rake
69
-
70
- == Additional Information
71
-
72
- * Wiki: http://wiki.github.com/jsmestad/pivotal-tracker
74
+ * Wiki: https://wiki.github.com/jsmestad/pivotal-tracker
73
75
  * Documentation: http://rdoc.info/projects/jsmestad/pivotal-tracker
74
76
  * Pivotal API v3 Docs: http://www.pivotaltracker.com/help/api?version=v3
75
77
 
76
- == Contributors along the way
78
+ ## Contributors along the way
79
+
80
+ * Justin Smestad (https://github.com/jsmestad)
81
+ * Jon Mischo (https://github.com/supertaz)
82
+ * Gabor Ratky (https://github.com/rgabo)
77
83
 
78
- * Justin Smestad (http://github.com/jsmestad)
79
- * Josh Nichols (http://github.com/technicalpickles)
80
- * Terence Lee (http://github.com/hone)
81
- * Jon Mischo (http://github.com/supertaz)
82
- * Gabor Ratky (http://github.com/rgabo)
data/Rakefile CHANGED
@@ -1,40 +1,15 @@
1
- #!/usr/bin/env rake
2
- begin
3
- require 'bundler/setup'
4
- rescue LoadError
5
- puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
- end
1
+ require "bundler/gem_tasks"
7
2
 
8
3
  begin
9
- require 'jeweler'
10
- Jeweler::Tasks.new do |gem|
11
- gem.name = "pivotal-tracker"
12
- gem.summary = %Q{Ruby wrapper for the Pivotal Tracker API}
13
- gem.email = "justin.smestad@gmail.com"
14
- gem.homepage = "http://github.com/jsmestad/pivotal-tracker"
15
- gem.authors = ["Justin Smestad", "Josh Nichols", "Terence Lee"]
4
+ require 'rspec/core/rake_task'
16
5
 
17
- gem.add_dependency 'rest-client', '~> 1.6.0'
18
- gem.add_dependency 'happymapper', '>= 0.3.2'
19
- gem.add_dependency 'builder'
20
- gem.add_dependency 'nokogiri', '>= 1.4.3'
6
+ RSpec::Core::RakeTask.new(:spec)
21
7
 
22
- gem.add_development_dependency 'rspec'
23
- gem.add_development_dependency 'bundler', '~> 1.0.12'
24
- gem.add_development_dependency 'jeweler'
25
- gem.add_development_dependency 'stale_fish', '~> 1.3.0'
26
- end
27
- Jeweler::GemcutterTasks.new
8
+ task default: :spec
28
9
  rescue LoadError
29
- puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
10
+ # no rspec available
30
11
  end
31
12
 
32
- require 'rspec/core'
33
- require 'rspec/core/rake_task'
34
- RSpec::Core::RakeTask.new(:spec)
35
-
36
- task :default => :spec
37
-
38
13
  begin
39
14
  require 'yard'
40
15
  YARD::Rake::YardocTask.new
@@ -1,8 +1,8 @@
1
1
  require 'cgi'
2
2
  require 'rest_client'
3
- require 'happymapper'
3
+ require 'happymapper' # nokogiri-happymapper
4
4
  require 'nokogiri'
5
-
5
+ require 'crack'
6
6
 
7
7
  require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'validation')
8
8
  require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'extensions')
@@ -16,6 +16,7 @@ require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'membership')
16
16
  require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'activity')
17
17
  require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'iteration')
18
18
  require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'note')
19
+ require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'version')
19
20
 
20
21
  module PivotalTracker
21
22
 
@@ -13,13 +13,21 @@ module PivotalTracker
13
13
 
14
14
  def token(username, password, method='post')
15
15
  response = if method == 'post'
16
- RestClient.post api_ssl_url + '/tokens/active', :username => username, :password => password
16
+ RestClient.post api_ssl_url + '/tokens/active', :username => username, :password => password, :timeout => timeout
17
17
  else
18
- RestClient.get "#{api_ssl_url(username, password)}/tokens/active"
18
+ RestClient.get "#{api_ssl_url(username, password)}/tokens/active", :timeout => timeout
19
19
  end
20
20
  @token= Nokogiri::XML(response.body).search('guid').inner_html
21
21
  end
22
22
 
23
+ def timeout=(timeout)
24
+ @timeout = timeout
25
+ end
26
+
27
+ def timeout
28
+ @timeout ||= 60
29
+ end
30
+
23
31
  # this is your connection for the entire module
24
32
  def connection(options={})
25
33
  raise NoToken if @token.to_s.empty?
@@ -61,7 +69,7 @@ module PivotalTracker
61
69
  end
62
70
 
63
71
  def new_connection
64
- @connections[@token] = RestClient::Resource.new("#{use_ssl ? api_ssl_url : api_url}", :headers => {'X-TrackerToken' => @token, 'Content-Type' => 'application/xml'})
72
+ @connections[@token] = RestClient::Resource.new("#{use_ssl ? api_ssl_url : api_url}", :headers => {'X-TrackerToken' => @token, 'Content-Type' => 'application/xml'}, :timeout => timeout)
65
73
  end
66
74
 
67
75
  def protocol_changed?
@@ -0,0 +1,3 @@
1
+ module PivotalTracker
2
+ VERSION = '0.5.13'
3
+ end
@@ -1,130 +1,33 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'pivotal-tracker/version'
5
5
 
6
- Gem::Specification.new do |s|
7
- s.name = "pivotal-tracker"
8
- s.version = "0.5.12"
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "pivotal-tracker"
8
+ spec.version = PivotalTracker::VERSION
9
+ spec.authors = ["Justin Smestad"]
10
+ spec.email = ["justin.smestad@gmail.com"]
11
+ spec.summary = %q{Ruby wrapper for the Pivotal Tracker API}
12
+ spec.description = %q{Ruby wrapper for the Pivotal Tracker API}
13
+ spec.homepage = "https://github.com/jsmestad/pivotal-tracker"
14
+ spec.license = "MIT"
9
15
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Justin Smestad", "Josh Nichols", "Terence Lee"]
12
- s.date = "2013-09-04"
13
- s.email = "justin.smestad@gmail.com"
14
- s.extra_rdoc_files = [
15
- "LICENSE",
16
- "README.rdoc"
17
- ]
18
- s.files = [
19
- ".rspec",
20
- ".travis.yml",
21
- "Gemfile",
22
- "Gemfile.lock",
23
- "LICENSE",
24
- "README.rdoc",
25
- "Rakefile",
26
- "VERSION",
27
- "lib/pivotal-tracker.rb",
28
- "lib/pivotal-tracker/activity.rb",
29
- "lib/pivotal-tracker/attachment.rb",
30
- "lib/pivotal-tracker/client.rb",
31
- "lib/pivotal-tracker/extensions.rb",
32
- "lib/pivotal-tracker/iteration.rb",
33
- "lib/pivotal-tracker/membership.rb",
34
- "lib/pivotal-tracker/note.rb",
35
- "lib/pivotal-tracker/project.rb",
36
- "lib/pivotal-tracker/proxy.rb",
37
- "lib/pivotal-tracker/story.rb",
38
- "lib/pivotal-tracker/task.rb",
39
- "lib/pivotal-tracker/validation.rb",
40
- "lib/pivotal_tracker.rb",
41
- "pivotal-tracker.gemspec",
42
- "spec/fixtures/activity.xml",
43
- "spec/fixtures/bugs.xml",
44
- "spec/fixtures/created_note.xml",
45
- "spec/fixtures/created_story.xml",
46
- "spec/fixtures/features.xml",
47
- "spec/fixtures/iterations_all.xml",
48
- "spec/fixtures/iterations_backlog.xml",
49
- "spec/fixtures/iterations_current.xml",
50
- "spec/fixtures/iterations_current_backlog.xml",
51
- "spec/fixtures/iterations_done.xml",
52
- "spec/fixtures/memberships.xml",
53
- "spec/fixtures/notes.xml",
54
- "spec/fixtures/project.xml",
55
- "spec/fixtures/project_activity.xml",
56
- "spec/fixtures/projects.xml",
57
- "spec/fixtures/stale_fish.yml",
58
- "spec/fixtures/stories.xml",
59
- "spec/fixtures/story-4459994.xml",
60
- "spec/fixtures/story-4460038.xml",
61
- "spec/fixtures/story-4460598.xml",
62
- "spec/fixtures/story-4473735.xml",
63
- "spec/fixtures/tasks.xml",
64
- "spec/fixtures/update_tasks.xml",
65
- "spec/pivotal-tracker/activity_spec.rb",
66
- "spec/pivotal-tracker/attachment_spec.rb",
67
- "spec/pivotal-tracker/client_spec.rb",
68
- "spec/pivotal-tracker/iteration_spec.rb",
69
- "spec/pivotal-tracker/membership_spec.rb",
70
- "spec/pivotal-tracker/note_spec.rb",
71
- "spec/pivotal-tracker/project_spec.rb",
72
- "spec/pivotal-tracker/story_spec.rb",
73
- "spec/pivotal-tracker/task_spec.rb",
74
- "spec/spec_helper.rb",
75
- "spec/support/stale_fish_fixtures.rb"
76
- ]
77
- s.homepage = "http://github.com/jsmestad/pivotal-tracker"
78
- s.require_paths = ["lib"]
79
- s.rubygems_version = "2.0.7"
80
- s.summary = "Ruby wrapper for the Pivotal Tracker API"
16
+ spec.files = `git ls-files -z`.split("\x0") - ['Guardfile', '.travis.yml']
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
81
20
 
82
- if s.respond_to? :specification_version then
83
- s.specification_version = 4
21
+ spec.add_runtime_dependency "nokogiri-happymapper", ">= 0.5.4"
22
+ spec.add_runtime_dependency "builder", ">= 0"
23
+ spec.add_runtime_dependency "nokogiri", ">= 1.5.5"
24
+ spec.add_runtime_dependency "crack", ">= 0"
25
+ spec.add_runtime_dependency "rest-client", ">= 1.8.0"
84
26
 
85
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
86
- s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.0"])
87
- s.add_runtime_dependency(%q<nokogiri-happymapper>, [">= 0.5.4"])
88
- s.add_runtime_dependency(%q<builder>, [">= 0"])
89
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.5.5"])
90
- s.add_runtime_dependency(%q<crack>, [">= 0"])
91
- s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.0"])
92
- s.add_runtime_dependency(%q<happymapper>, [">= 0.3.2"])
93
- s.add_runtime_dependency(%q<builder>, [">= 0"])
94
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.4.3"])
95
- s.add_development_dependency(%q<rspec>, [">= 0"])
96
- s.add_development_dependency(%q<bundler>, ["~> 1.0.12"])
97
- s.add_development_dependency(%q<jeweler>, [">= 0"])
98
- s.add_development_dependency(%q<stale_fish>, ["~> 1.3.0"])
99
- else
100
- s.add_dependency(%q<rest-client>, ["~> 1.6.0"])
101
- s.add_dependency(%q<nokogiri-happymapper>, [">= 0.5.4"])
102
- s.add_dependency(%q<builder>, [">= 0"])
103
- s.add_dependency(%q<nokogiri>, [">= 1.5.5"])
104
- s.add_dependency(%q<crack>, [">= 0"])
105
- s.add_dependency(%q<rest-client>, ["~> 1.6.0"])
106
- s.add_dependency(%q<happymapper>, [">= 0.3.2"])
107
- s.add_dependency(%q<builder>, [">= 0"])
108
- s.add_dependency(%q<nokogiri>, [">= 1.4.3"])
109
- s.add_dependency(%q<rspec>, [">= 0"])
110
- s.add_dependency(%q<bundler>, ["~> 1.0.12"])
111
- s.add_dependency(%q<jeweler>, [">= 0"])
112
- s.add_dependency(%q<stale_fish>, ["~> 1.3.0"])
113
- end
114
- else
115
- s.add_dependency(%q<rest-client>, ["~> 1.6.0"])
116
- s.add_dependency(%q<nokogiri-happymapper>, [">= 0.5.4"])
117
- s.add_dependency(%q<builder>, [">= 0"])
118
- s.add_dependency(%q<nokogiri>, [">= 1.5.5"])
119
- s.add_dependency(%q<crack>, [">= 0"])
120
- s.add_dependency(%q<rest-client>, ["~> 1.6.0"])
121
- s.add_dependency(%q<happymapper>, [">= 0.3.2"])
122
- s.add_dependency(%q<builder>, [">= 0"])
123
- s.add_dependency(%q<nokogiri>, [">= 1.4.3"])
124
- s.add_dependency(%q<rspec>, [">= 0"])
125
- s.add_dependency(%q<bundler>, ["~> 1.0.12"])
126
- s.add_dependency(%q<jeweler>, [">= 0"])
127
- s.add_dependency(%q<stale_fish>, ["~> 1.3.0"])
128
- end
27
+ spec.add_development_dependency "activesupport", "<= 4.1"
28
+ spec.add_development_dependency "rspec", ">= 3.0.0"
29
+ spec.add_development_dependency "bundler", ">= 1.0.12"
30
+ spec.add_development_dependency "jeweler", ">= 2.0.1"
31
+ spec.add_development_dependency "stale_fish", "~> 1.3.0"
129
32
  end
130
33
 
@@ -22,7 +22,8 @@ describe PivotalTracker::Activity do
22
22
 
23
23
  context "with a specified occurred since date filter" do
24
24
  it "should correctly url encode the occurred since date filter in the API call" do
25
- PivotalTracker::Client.stub!(:connection).and_return connection = double("Client Connection")
25
+ expect(PivotalTracker::Client).to receive(:connection).and_return(connection = double("Client Connection"))
26
+
26
27
  url = "/activities?limit=100&occurred_since_date=2010/07/29%2019:13:00%20+00:00"
27
28
  connection.should_receive(:[]).with(url).and_return double("Connection", :get => '<blah></blah>')
28
29
  PivotalTracker::Activity.all nil, :limit => 100, :occurred_since_date => DateTime.parse("2010/7/29 19:13:00 UTC")
@@ -1,46 +1,47 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe PivotalTracker::Attachment do
4
+ before { pending 'not working; will get it resolved in PT v1.x' }
5
+ let(:project) { PivotalTracker::Project.find(102622) }
6
+ let(:story) { project.stories.find(4460598) }
4
7
 
5
8
  before do
6
9
  PivotalTracker::Client.token = TOKEN
7
- @project = PivotalTracker::Project.find(102622)
8
- @story = @project.stories.find(4460598)
9
10
  end
10
11
 
11
12
  context "always" do
12
13
  it "should return an integer id" do
13
- @story.attachments.first.id.should be_a(Integer)
14
+ story.attachments.first.id.should be_a(Integer)
14
15
  end
15
16
 
16
17
  it "should return a string for url" do
17
- @story.attachments.first.url.should be_a(String)
18
+ story.attachments.first.url.should be_a(String)
18
19
  end
19
20
 
20
21
  it "should return a string for filename" do
21
- @story.attachments.first.filename.should be_a(String)
22
+ story.attachments.first.filename.should be_a(String)
22
23
  end
23
24
 
24
25
  it "should return a string for uploaded_by" do
25
- @story.attachments.first.uploaded_by.should be_a(String)
26
+ story.attachments.first.uploaded_by.should be_a(String)
26
27
  end
27
28
 
28
29
  it "should return a datetime for uploaded_at" do
29
- @story.attachments.first.uploaded_at.should be_a(DateTime)
30
+ story.attachments.first.uploaded_at.should be_a(DateTime)
30
31
  end
31
32
  end
32
33
 
33
34
  context "without description" do
34
35
  it "should have a blank string for the description" do
35
- @story.attachments.first.description.should be_a(String)
36
- @story.attachments.first.description.should be_blank
36
+ story.attachments.first.description.should be_a(String)
37
+ story.attachments.first.description.should be_blank
37
38
  end
38
39
  end
39
40
 
40
41
  context "with description" do
41
42
  it "should have a non-blank string for the description" do
42
- @story.attachments.first.description.should be_a(String)
43
- @story.attachments.last.description.should_not be_blank
43
+ story.attachments.first.description.should be_a(String)
44
+ story.attachments.last.description.should_not be_blank
44
45
  end
45
46
  end
46
47
 
@@ -22,7 +22,7 @@ describe PivotalTracker::Client do
22
22
 
23
23
  it "called to RestClient::Resource using the new token" do
24
24
  RestClient::Resource.should_receive(:new).
25
- with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' })
25
+ with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }, :timeout => 60)
26
26
 
27
27
  PivotalTracker::Client.connection
28
28
  end
@@ -31,7 +31,7 @@ describe PivotalTracker::Client do
31
31
  @resource = Object.new
32
32
 
33
33
  RestClient::Resource.should_receive(:new).
34
- with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }).
34
+ with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }, :timeout => 60).
35
35
  and_return(@resource)
36
36
 
37
37
  PivotalTracker::Client.connection.should == @resource
@@ -54,7 +54,7 @@ describe PivotalTracker::Client do
54
54
  @resource = Object.new
55
55
 
56
56
  RestClient::Resource.should_receive(:new).
57
- with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "abc123", 'Content-Type' => 'application/xml' }).
57
+ with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "abc123", 'Content-Type' => 'application/xml' }, :timeout => 60).
58
58
  and_return(@resource)
59
59
 
60
60
  PivotalTracker::Client.connection.should == @resource
@@ -68,7 +68,7 @@ describe PivotalTracker::Client do
68
68
 
69
69
  it "called to RestClient::Resource using the new token" do
70
70
  RestClient::Resource.should_receive(:new).
71
- with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' })
71
+ with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }, :timeout => 60)
72
72
 
73
73
  PivotalTracker::Client.connection
74
74
  end
@@ -77,15 +77,28 @@ describe PivotalTracker::Client do
77
77
  @resource = Object.new
78
78
 
79
79
  RestClient::Resource.should_receive(:new).
80
- with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }).
80
+ with(PivotalTracker::Client.api_url, :headers => { 'X-TrackerToken' => "anewtoken", 'Content-Type' => 'application/xml' }, :timeout => 60).
81
81
  and_return(@resource)
82
82
 
83
- PivotalTracker::Client.connection.should == @resource
83
+ expect(PivotalTracker::Client.connection).to eq @resource
84
84
  end
85
85
 
86
86
  end
87
87
 
88
88
  end
89
+
90
+ context 'timeout' do
91
+ it "should set the timeout appropriately" do
92
+ PivotalTracker::Client.timeout = 50
93
+ expect(PivotalTracker::Client.connection.timeout).to eq 50
94
+ end
95
+
96
+ it "should raise timeout error" do
97
+ FakeWeb.allow_net_connect = true
98
+ FakeWeb.register_uri(:get, "www.pivotaltracker.com/services/v3", :exception => ::Timeout::Error)
99
+ expect{PivotalTracker::Client.connection.get}.to raise_error(RestClient::RequestTimeout)
100
+ end
101
+ end
89
102
  end
90
103
 
91
104
  describe ".tracker_host" do
@@ -13,7 +13,7 @@ describe PivotalTracker::Project do
13
13
 
14
14
  it "should be a project instance" do
15
15
  @projects.first.should be_a(PivotalTracker::Project)
16
- end
16
+ end
17
17
  end
18
18
 
19
19
  context ".find" do
@@ -26,19 +26,19 @@ describe PivotalTracker::Project do
26
26
  end
27
27
 
28
28
  it "should have a use_https attribute" do
29
- @project.respond_to?(:use_https).should be_true
29
+ @project.respond_to?(:use_https).should eq true
30
30
  end
31
31
 
32
32
  it "should have false for use_https" do
33
- @project.use_https.should be_false
33
+ @project.use_https.should eq false
34
34
  end
35
-
35
+
36
36
  it "should have first_iteration_start_time attribute" do
37
- @project.respond_to?(:first_iteration_start_time).should be_true
37
+ @project.respond_to?(:first_iteration_start_time).should eq true
38
38
  end
39
-
40
- it "should have current_iteration_number attribute" do
41
- @project.respond_to?(:current_iteration_number).should be_true
39
+
40
+ it "should have current_iteration_number attribute" do
41
+ @project.respond_to?(:current_iteration_number).should eq true
42
42
  end
43
43
  end
44
44
 
@@ -48,7 +48,7 @@ describe PivotalTracker::Project do
48
48
  end
49
49
 
50
50
  it "should have a stories association" do
51
- @project.respond_to?(:stories).should be_true
51
+ @project.respond_to?(:stories).should eq true
52
52
  end
53
53
  end
54
54
 
@@ -58,7 +58,7 @@ describe PivotalTracker::Project do
58
58
  end
59
59
 
60
60
  it "should have a memberships association" do
61
- @project.respond_to?(:memberships).should be_true
61
+ @project.respond_to?(:memberships).should eq true
62
62
  end
63
63
  end
64
64
 
@@ -60,28 +60,29 @@ describe PivotalTracker::Story do
60
60
  end
61
61
 
62
62
  context ".attachments" do
63
+ before { pending 'attachments are broke; will fix for v1.x' }
63
64
  it "should return an array of attachments" do
64
65
  @story = @project.stories.find(4460598)
65
66
  @story.attachments.should be_a(Array)
66
67
  @story.attachments.first.should be_a(PivotalTracker::Attachment)
67
68
  end
68
69
  end
69
-
70
+
70
71
  context ".move" do
71
72
  let(:project_id) { @project.id }
72
73
  let(:top_story_id) {4460598}
73
74
  let(:bottom_story_id) {4459994}
74
75
  let(:top_story) { @project.stories.find(top_story_id) }
75
76
  let(:bottom_story) { @project.stories.find(bottom_story_id) }
76
-
77
- it "should return the moved story when moved before" do
77
+
78
+ it "should return the moved story when moved before" do
78
79
  expected_uri = "#{PivotalTracker::Client.api_url}/projects/#{project_id}/stories/#{top_story_id}/moves?move\[move\]=before&move\[target\]=#{bottom_story_id}"
79
80
  FakeWeb.register_uri(:post, expected_uri, :body => %{<story><id type="integer">#{top_story_id}</id></story>})
80
81
  @moved_story = top_story.move(:before, bottom_story)
81
82
  @moved_story.should be_a(PivotalTracker::Story)
82
83
  @moved_story.id.should be(top_story_id)
83
84
  end
84
-
85
+
85
86
  it "should return the moved story when moved after" do
86
87
  expected_uri = "#{PivotalTracker::Client.api_url}/projects/#{project_id}/stories/#{bottom_story_id}/moves?move\[move\]=after&move\[target\]=#{top_story_id}"
87
88
  FakeWeb.register_uri(:post, expected_uri, :body => %{<story><id type="integer">#{bottom_story_id}</id></story>})
@@ -89,7 +90,7 @@ describe PivotalTracker::Story do
89
90
  @moved_story.should be_a(PivotalTracker::Story)
90
91
  @moved_story.id.should be(bottom_story_id)
91
92
  end
92
-
93
+
93
94
  it "should raise an error when trying to move in an invalid position" do
94
95
  expect { top_story.move(:next_to, bottom_story) }.to raise_error(ArgumentError)
95
96
  end
@@ -1,13 +1,8 @@
1
- require 'bundler'
2
- require 'fileutils'
3
-
4
- Bundler.require(:default, :runtime, :test)
5
- $LOAD_PATH.unshift(File.dirname(__FILE__))
6
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
-
8
1
  require 'pivotal-tracker'
9
2
  require 'rspec'
10
- require 'rspec/autorun'
3
+
4
+ # Load support files
5
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
11
6
 
12
7
  PROJECT_ID = ENV['PROJECT_ID'] || 102622
13
8
  TOKEN = '8358666c5a593a3c82cda728c8a62b63'
@@ -24,23 +19,18 @@ module StaleFish
24
19
  end
25
20
  end
26
21
 
27
- # Requires supporting files with custom matchers and macros, etc,
28
- # in ./support/ and its subdirectories.
29
- Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].each {|f| require f}
30
-
31
-
32
22
  RSpec.configure do |config|
33
23
  # Allow focus on a specific test if specified
34
- config.filter_run :focus => true
24
+ config.filter_run focus: true
35
25
  config.run_all_when_everything_filtered = true
36
26
 
37
- # Give StaleFish temporary file which is ignored by git
38
- org_stale_fish_config = File.join(File.dirname(__FILE__), 'fixtures', 'stale_fish.yml')
39
- tmp_stale_fish_config = File.join(File.dirname(__FILE__), 'fixtures', 'stale_fish-tmp.yml')
40
- FileUtils.copy_file org_stale_fish_config, tmp_stale_fish_config, :remove_destination => true
41
- StaleFish.setup(tmp_stale_fish_config)
42
-
43
27
  config.before :suite do
28
+ # Give StaleFish temporary file which is ignored by git
29
+ org_stale_fish_config = File.join(File.dirname(__FILE__), 'fixtures', 'stale_fish.yml')
30
+ tmp_stale_fish_config = File.join(File.dirname(__FILE__), 'fixtures', 'stale_fish-tmp.yml')
31
+ FileUtils.copy_file org_stale_fish_config, tmp_stale_fish_config, remove_destination: true
32
+ StaleFish.setup(tmp_stale_fish_config)
33
+
44
34
  StaleFish.update_stale
45
35
  end
46
36
 
@@ -1,3 +1,5 @@
1
+ require 'stale_fish'
2
+
1
3
  module StaleFishFixtures
2
4
  class << self
3
5
 
metadata CHANGED
@@ -1,215 +1,169 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pivotal-tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.12
4
+ version: 0.5.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Smestad
8
- - Josh Nichols
9
- - Terence Lee
10
8
  autorequire:
11
9
  bindir: bin
12
10
  cert_chain: []
13
- date: 2013-09-04 00:00:00.000000000 Z
11
+ date: 2015-03-26 00:00:00.000000000 Z
14
12
  dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: rest-client
17
- requirement: !ruby/object:Gem::Requirement
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 1.6.0
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- requirements:
26
- - - ~>
27
- - !ruby/object:Gem::Version
28
- version: 1.6.0
29
13
  - !ruby/object:Gem::Dependency
30
14
  name: nokogiri-happymapper
31
15
  requirement: !ruby/object:Gem::Requirement
32
16
  requirements:
33
- - - ! '>='
17
+ - - ">="
34
18
  - !ruby/object:Gem::Version
35
19
  version: 0.5.4
36
20
  type: :runtime
37
21
  prerelease: false
38
22
  version_requirements: !ruby/object:Gem::Requirement
39
23
  requirements:
40
- - - ! '>='
24
+ - - ">="
41
25
  - !ruby/object:Gem::Version
42
26
  version: 0.5.4
43
27
  - !ruby/object:Gem::Dependency
44
28
  name: builder
45
29
  requirement: !ruby/object:Gem::Requirement
46
30
  requirements:
47
- - - ! '>='
31
+ - - ">="
48
32
  - !ruby/object:Gem::Version
49
33
  version: '0'
50
34
  type: :runtime
51
35
  prerelease: false
52
36
  version_requirements: !ruby/object:Gem::Requirement
53
37
  requirements:
54
- - - ! '>='
38
+ - - ">="
55
39
  - !ruby/object:Gem::Version
56
40
  version: '0'
57
41
  - !ruby/object:Gem::Dependency
58
42
  name: nokogiri
59
43
  requirement: !ruby/object:Gem::Requirement
60
44
  requirements:
61
- - - ! '>='
45
+ - - ">="
62
46
  - !ruby/object:Gem::Version
63
47
  version: 1.5.5
64
48
  type: :runtime
65
49
  prerelease: false
66
50
  version_requirements: !ruby/object:Gem::Requirement
67
51
  requirements:
68
- - - ! '>='
52
+ - - ">="
69
53
  - !ruby/object:Gem::Version
70
54
  version: 1.5.5
71
55
  - !ruby/object:Gem::Dependency
72
56
  name: crack
73
57
  requirement: !ruby/object:Gem::Requirement
74
58
  requirements:
75
- - - ! '>='
59
+ - - ">="
76
60
  - !ruby/object:Gem::Version
77
61
  version: '0'
78
62
  type: :runtime
79
63
  prerelease: false
80
64
  version_requirements: !ruby/object:Gem::Requirement
81
65
  requirements:
82
- - - ! '>='
66
+ - - ">="
83
67
  - !ruby/object:Gem::Version
84
68
  version: '0'
85
69
  - !ruby/object:Gem::Dependency
86
70
  name: rest-client
87
71
  requirement: !ruby/object:Gem::Requirement
88
72
  requirements:
89
- - - ~>
73
+ - - ">="
90
74
  - !ruby/object:Gem::Version
91
- version: 1.6.0
75
+ version: 1.8.0
92
76
  type: :runtime
93
77
  prerelease: false
94
78
  version_requirements: !ruby/object:Gem::Requirement
95
79
  requirements:
96
- - - ~>
80
+ - - ">="
97
81
  - !ruby/object:Gem::Version
98
- version: 1.6.0
82
+ version: 1.8.0
99
83
  - !ruby/object:Gem::Dependency
100
- name: happymapper
84
+ name: activesupport
101
85
  requirement: !ruby/object:Gem::Requirement
102
86
  requirements:
103
- - - ! '>='
87
+ - - "<="
104
88
  - !ruby/object:Gem::Version
105
- version: 0.3.2
106
- type: :runtime
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- requirements:
110
- - - ! '>='
111
- - !ruby/object:Gem::Version
112
- version: 0.3.2
113
- - !ruby/object:Gem::Dependency
114
- name: builder
115
- requirement: !ruby/object:Gem::Requirement
116
- requirements:
117
- - - ! '>='
118
- - !ruby/object:Gem::Version
119
- version: '0'
120
- type: :runtime
121
- prerelease: false
122
- version_requirements: !ruby/object:Gem::Requirement
123
- requirements:
124
- - - ! '>='
125
- - !ruby/object:Gem::Version
126
- version: '0'
127
- - !ruby/object:Gem::Dependency
128
- name: nokogiri
129
- requirement: !ruby/object:Gem::Requirement
130
- requirements:
131
- - - ! '>='
132
- - !ruby/object:Gem::Version
133
- version: 1.4.3
134
- type: :runtime
89
+ version: '4.1'
90
+ type: :development
135
91
  prerelease: false
136
92
  version_requirements: !ruby/object:Gem::Requirement
137
93
  requirements:
138
- - - ! '>='
94
+ - - "<="
139
95
  - !ruby/object:Gem::Version
140
- version: 1.4.3
96
+ version: '4.1'
141
97
  - !ruby/object:Gem::Dependency
142
98
  name: rspec
143
99
  requirement: !ruby/object:Gem::Requirement
144
100
  requirements:
145
- - - ! '>='
101
+ - - ">="
146
102
  - !ruby/object:Gem::Version
147
- version: '0'
103
+ version: 3.0.0
148
104
  type: :development
149
105
  prerelease: false
150
106
  version_requirements: !ruby/object:Gem::Requirement
151
107
  requirements:
152
- - - ! '>='
108
+ - - ">="
153
109
  - !ruby/object:Gem::Version
154
- version: '0'
110
+ version: 3.0.0
155
111
  - !ruby/object:Gem::Dependency
156
112
  name: bundler
157
113
  requirement: !ruby/object:Gem::Requirement
158
114
  requirements:
159
- - - ~>
115
+ - - ">="
160
116
  - !ruby/object:Gem::Version
161
117
  version: 1.0.12
162
118
  type: :development
163
119
  prerelease: false
164
120
  version_requirements: !ruby/object:Gem::Requirement
165
121
  requirements:
166
- - - ~>
122
+ - - ">="
167
123
  - !ruby/object:Gem::Version
168
124
  version: 1.0.12
169
125
  - !ruby/object:Gem::Dependency
170
126
  name: jeweler
171
127
  requirement: !ruby/object:Gem::Requirement
172
128
  requirements:
173
- - - ! '>='
129
+ - - ">="
174
130
  - !ruby/object:Gem::Version
175
- version: '0'
131
+ version: 2.0.1
176
132
  type: :development
177
133
  prerelease: false
178
134
  version_requirements: !ruby/object:Gem::Requirement
179
135
  requirements:
180
- - - ! '>='
136
+ - - ">="
181
137
  - !ruby/object:Gem::Version
182
- version: '0'
138
+ version: 2.0.1
183
139
  - !ruby/object:Gem::Dependency
184
140
  name: stale_fish
185
141
  requirement: !ruby/object:Gem::Requirement
186
142
  requirements:
187
- - - ~>
143
+ - - "~>"
188
144
  - !ruby/object:Gem::Version
189
145
  version: 1.3.0
190
146
  type: :development
191
147
  prerelease: false
192
148
  version_requirements: !ruby/object:Gem::Requirement
193
149
  requirements:
194
- - - ~>
150
+ - - "~>"
195
151
  - !ruby/object:Gem::Version
196
152
  version: 1.3.0
197
- description:
198
- email: justin.smestad@gmail.com
153
+ description: Ruby wrapper for the Pivotal Tracker API
154
+ email:
155
+ - justin.smestad@gmail.com
199
156
  executables: []
200
157
  extensions: []
201
- extra_rdoc_files:
202
- - LICENSE
203
- - README.rdoc
158
+ extra_rdoc_files: []
204
159
  files:
205
- - .rspec
206
- - .travis.yml
160
+ - ".gitignore"
161
+ - ".rspec"
207
162
  - Gemfile
208
- - Gemfile.lock
163
+ - History.md
209
164
  - LICENSE
210
- - README.rdoc
165
+ - README.md
211
166
  - Rakefile
212
- - VERSION
213
167
  - lib/pivotal-tracker.rb
214
168
  - lib/pivotal-tracker/activity.rb
215
169
  - lib/pivotal-tracker/attachment.rb
@@ -223,6 +177,7 @@ files:
223
177
  - lib/pivotal-tracker/story.rb
224
178
  - lib/pivotal-tracker/task.rb
225
179
  - lib/pivotal-tracker/validation.rb
180
+ - lib/pivotal-tracker/version.rb
226
181
  - lib/pivotal_tracker.rb
227
182
  - pivotal-tracker.gemspec
228
183
  - spec/fixtures/activity.xml
@@ -259,8 +214,9 @@ files:
259
214
  - spec/pivotal-tracker/task_spec.rb
260
215
  - spec/spec_helper.rb
261
216
  - spec/support/stale_fish_fixtures.rb
262
- homepage: http://github.com/jsmestad/pivotal-tracker
263
- licenses: []
217
+ homepage: https://github.com/jsmestad/pivotal-tracker
218
+ licenses:
219
+ - MIT
264
220
  metadata: {}
265
221
  post_install_message:
266
222
  rdoc_options: []
@@ -268,18 +224,52 @@ require_paths:
268
224
  - lib
269
225
  required_ruby_version: !ruby/object:Gem::Requirement
270
226
  requirements:
271
- - - ! '>='
227
+ - - ">="
272
228
  - !ruby/object:Gem::Version
273
229
  version: '0'
274
230
  required_rubygems_version: !ruby/object:Gem::Requirement
275
231
  requirements:
276
- - - ! '>='
232
+ - - ">="
277
233
  - !ruby/object:Gem::Version
278
234
  version: '0'
279
235
  requirements: []
280
236
  rubyforge_project:
281
- rubygems_version: 2.0.7
237
+ rubygems_version: 2.2.2
282
238
  signing_key:
283
239
  specification_version: 4
284
240
  summary: Ruby wrapper for the Pivotal Tracker API
285
- test_files: []
241
+ test_files:
242
+ - spec/fixtures/activity.xml
243
+ - spec/fixtures/bugs.xml
244
+ - spec/fixtures/created_note.xml
245
+ - spec/fixtures/created_story.xml
246
+ - spec/fixtures/features.xml
247
+ - spec/fixtures/iterations_all.xml
248
+ - spec/fixtures/iterations_backlog.xml
249
+ - spec/fixtures/iterations_current.xml
250
+ - spec/fixtures/iterations_current_backlog.xml
251
+ - spec/fixtures/iterations_done.xml
252
+ - spec/fixtures/memberships.xml
253
+ - spec/fixtures/notes.xml
254
+ - spec/fixtures/project.xml
255
+ - spec/fixtures/project_activity.xml
256
+ - spec/fixtures/projects.xml
257
+ - spec/fixtures/stale_fish.yml
258
+ - spec/fixtures/stories.xml
259
+ - spec/fixtures/story-4459994.xml
260
+ - spec/fixtures/story-4460038.xml
261
+ - spec/fixtures/story-4460598.xml
262
+ - spec/fixtures/story-4473735.xml
263
+ - spec/fixtures/tasks.xml
264
+ - spec/fixtures/update_tasks.xml
265
+ - spec/pivotal-tracker/activity_spec.rb
266
+ - spec/pivotal-tracker/attachment_spec.rb
267
+ - spec/pivotal-tracker/client_spec.rb
268
+ - spec/pivotal-tracker/iteration_spec.rb
269
+ - spec/pivotal-tracker/membership_spec.rb
270
+ - spec/pivotal-tracker/note_spec.rb
271
+ - spec/pivotal-tracker/project_spec.rb
272
+ - spec/pivotal-tracker/story_spec.rb
273
+ - spec/pivotal-tracker/task_spec.rb
274
+ - spec/spec_helper.rb
275
+ - spec/support/stale_fish_fixtures.rb
@@ -1,6 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 1.8.7
4
- - 1.9.2
5
- - 1.9.3
6
- - 2.0.0
@@ -1,57 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- ZenTest (4.9.3)
5
- activesupport (3.2.9)
6
- i18n (~> 0.6)
7
- multi_json (~> 1.0)
8
- autotest (4.4.6)
9
- ZenTest (>= 4.4.1)
10
- builder (3.1.4)
11
- crack (0.3.1)
12
- diff-lcs (1.1.3)
13
- fakeweb (1.3.0)
14
- git (1.2.5)
15
- i18n (0.6.1)
16
- jeweler (1.8.4)
17
- bundler (~> 1.0)
18
- git (>= 1.2.5)
19
- rake
20
- rdoc
21
- json (1.7.5)
22
- mime-types (1.19)
23
- multi_json (1.3.7)
24
- nokogiri (1.5.5)
25
- nokogiri-happymapper (0.5.6)
26
- nokogiri (~> 1.5)
27
- rake (10.0.2)
28
- rdoc (3.12)
29
- json (~> 1.4)
30
- rest-client (1.6.7)
31
- mime-types (>= 1.16)
32
- rspec (2.12.0)
33
- rspec-core (~> 2.12.0)
34
- rspec-expectations (~> 2.12.0)
35
- rspec-mocks (~> 2.12.0)
36
- rspec-core (2.12.0)
37
- rspec-expectations (2.12.0)
38
- diff-lcs (~> 1.1.3)
39
- rspec-mocks (2.12.0)
40
- stale_fish (1.3.2)
41
- activesupport
42
- fakeweb
43
-
44
- PLATFORMS
45
- ruby
46
-
47
- DEPENDENCIES
48
- autotest
49
- builder
50
- crack
51
- jeweler
52
- nokogiri (>= 1.5.5)
53
- nokogiri-happymapper (>= 0.5.4)
54
- rake
55
- rest-client (~> 1.6.0)
56
- rspec
57
- stale_fish (~> 1.3.2)
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.5.12