ticketmaster-fogbugz 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,5 @@
1
+ lib/**/*.rb
2
+ bin/*
3
+ -
4
+ features/**/*.feature
5
+ LICENSE.txt
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm 1.8.7@ticketmaster-fogbugz --create
data/Gemfile ADDED
@@ -0,0 +1,17 @@
1
+ source "http://rubygems.org"
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
5
+
6
+ # Add dependencies to develop your gem here.
7
+ # Include everything needed to run rake, tests, features, etc.
8
+ gem 'ticketmaster'
9
+ gem "ruby-fogbugz"
10
+ group :development do
11
+ gem "shoulda", ">= 0"
12
+ gem "shoulda-context"
13
+ gem "bundler", "~> 1.0.0"
14
+ gem "jeweler", "~> 1.5.1"
15
+ gem "rcov", ">= 0"
16
+ gem "mocha"
17
+ end
@@ -0,0 +1,53 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ activemodel (3.0.8)
5
+ activesupport (= 3.0.8)
6
+ builder (~> 2.1.2)
7
+ i18n (~> 0.5.0)
8
+ activeresource (3.0.8)
9
+ activemodel (= 3.0.8)
10
+ activesupport (= 3.0.8)
11
+ activesupport (3.0.8)
12
+ builder (2.1.2)
13
+ crack (0.1.8)
14
+ git (1.2.5)
15
+ hashie (1.0.0)
16
+ i18n (0.5.0)
17
+ jeweler (1.5.2)
18
+ bundler (~> 1.0.0)
19
+ git (>= 1.2.5)
20
+ rake
21
+ mime-types (1.16)
22
+ mocha (0.9.12)
23
+ rake (0.9.2)
24
+ rcov (0.9.9)
25
+ ruby-fogbugz (0.0.3)
26
+ crack
27
+ typhoeus
28
+ shoulda (2.11.3)
29
+ shoulda-context (1.0.0.beta1)
30
+ ticketmaster (0.6.6)
31
+ activeresource
32
+ activeresource (>= 2.3.2)
33
+ activesupport (>= 2.3.2)
34
+ activesupport
35
+ hashie
36
+ hashie (= 1.0.0)
37
+ jeweler
38
+ typhoeus (0.2.4)
39
+ mime-types
40
+ mime-types
41
+
42
+ PLATFORMS
43
+ ruby
44
+
45
+ DEPENDENCIES
46
+ bundler (~> 1.0.0)
47
+ jeweler (~> 1.5.1)
48
+ mocha
49
+ rcov
50
+ ruby-fogbugz
51
+ shoulda
52
+ shoulda-context
53
+ ticketmaster
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2011 Rafael George
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,19 @@
1
+ = ticketmaster-fogbugz
2
+
3
+ Description goes here.
4
+
5
+ == Contributing to ticketmaster-fogbugz
6
+
7
+ * Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
8
+ * Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
9
+ * Fork the project
10
+ * Start a feature/bugfix branch
11
+ * Commit and push until you are happy with your contribution
12
+ * Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
13
+ * Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
14
+
15
+ == Copyright
16
+
17
+ Copyright (c) 2011 Rafael George. See LICENSE.txt for
18
+ further details.
19
+
@@ -0,0 +1,53 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'rake'
11
+
12
+ require 'jeweler'
13
+ Jeweler::Tasks.new do |gem|
14
+ # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
15
+ gem.name = "ticketmaster-fogbugz"
16
+ gem.homepage = "http://github.com/cored/ticketmaster-fogbugz"
17
+ gem.license = "MIT"
18
+ gem.summary = %Q{Ticketmaster provider for Fogbugz}
19
+ gem.description = %Q{Ticketmaster provider for Fogbugz}
20
+ gem.email = "rafael@hybridgroup.com"
21
+ gem.authors = ["Rafael George"]
22
+ # Include your dependencies below. Runtime dependencies are required when using your gem,
23
+ # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
24
+ # gem.add_runtime_dependency 'jabber4r', '> 0.1'
25
+ # gem.add_development_dependency 'rspec', '> 1.2.3'
26
+ end
27
+ Jeweler::RubygemsDotOrgTasks.new
28
+
29
+ require 'rake/testtask'
30
+ Rake::TestTask.new(:test) do |test|
31
+ test.libs << 'lib' << 'test'
32
+ test.pattern = 'test/**/test_*.rb'
33
+ test.verbose = true
34
+ end
35
+
36
+ require 'rcov/rcovtask'
37
+ Rcov::RcovTask.new do |test|
38
+ test.libs << 'test'
39
+ test.pattern = 'test/**/test_*.rb'
40
+ test.verbose = true
41
+ end
42
+
43
+ task :default => :test
44
+
45
+ require 'rake/rdoctask'
46
+ Rake::RDocTask.new do |rdoc|
47
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
+
49
+ rdoc.rdoc_dir = 'rdoc'
50
+ rdoc.title = "ticketmaster-fogbugz #{version}"
51
+ rdoc.rdoc_files.include('README*')
52
+ rdoc.rdoc_files.include('lib/**/*.rb')
53
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.1
@@ -0,0 +1,14 @@
1
+ module TicketMaster::Provider
2
+ module Fogbugz
3
+ # The comment class for ticketmaster-fogbugz
4
+ #
5
+ # Do any mapping between Ticketmaster and your system's comment model here
6
+ # versions of the ticket.
7
+ #
8
+ class Comment < TicketMaster::Provider::Base::Comment
9
+ #API = Fogbugz::Comment # The class to access the api's comments
10
+ # declare needed overloaded methods here
11
+
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,45 @@
1
+ module TicketMaster::Provider
2
+ # This is the Fogbugz Provider for ticketmaster
3
+ module Fogbugz
4
+ include TicketMaster::Provider::Base
5
+ class << self
6
+ attr_accessor :api
7
+ end
8
+
9
+ #TICKET_API = Fogbugz::Ticket # The class to access the api's tickets
10
+ #PROJECT_API = Fogbugz::Project # The class to access the api's projects
11
+
12
+ # This is for cases when you want to instantiate using TicketMaster::Provider::Fogbugz.new(auth)
13
+ def self.new(auth = {})
14
+ TicketMaster.new(:fogbugz, auth)
15
+ end
16
+
17
+ # Providers must define an authorize method. This is used to initialize and set authentication
18
+ # parameters to access the API
19
+ def authorize(auth = {})
20
+ @authentication ||= TicketMaster::Authenticator.new(auth)
21
+ if auth[:email].nil? || auth[:password].nil? || auth[:uri].nil?
22
+ raise "Please provide email, password and uri"
23
+ end
24
+ @fogbugz = ::Fogbugz::Interface.new(auth)
25
+ @fogbugz.authenticate
26
+ TicketMaster::Provider::Fogbugz.api = @fogbugz
27
+ end
28
+ # declare needed overloaded methods here
29
+
30
+ def projects(*options)
31
+ Project.find(options)
32
+ end
33
+
34
+ def project(*options)
35
+ unless options.first.is_a? Fixnum
36
+ raise "Search for a single project only works with a project id"
37
+ else
38
+ Project.find_by_id(options.first)
39
+ end
40
+ end
41
+
42
+ end
43
+ end
44
+
45
+
@@ -0,0 +1,93 @@
1
+ module TicketMaster::Provider
2
+ module Fogbugz
3
+ # Project class for ticketmaster-fogbugz
4
+ #
5
+ #
6
+ class Project < TicketMaster::Provider::Base::Project
7
+ #API = Fogbugz::Project # The class to access the api's projects
8
+ # declare needed overloaded methods here
9
+
10
+ def initialize(*object)
11
+ if object.first
12
+ object = object.first
13
+ unless object.is_a? Hash
14
+ @system_data = {:client => object}
15
+ hash = {:id => object['ixProject'].to_i,
16
+ :name => object['sProject'],
17
+ :description => object['sProject'],
18
+ :created_at => nil,
19
+ :updated_at => nil}
20
+ else
21
+ hash = object
22
+ end
23
+ super(hash)
24
+ end
25
+ end
26
+
27
+ def id
28
+ ixProject.to_i
29
+ end
30
+
31
+ def name
32
+ sProject
33
+ end
34
+
35
+ def description
36
+ sProject
37
+ end
38
+
39
+ # copy from this.copy(that) copies that into this
40
+ def copy(project)
41
+ project.tickets.each do |ticket|
42
+ copy_ticket = self.ticket!(:title => ticket.title, :description => ticket.description)
43
+ ticket.comments.each do |comment|
44
+ copy_ticket.comment!(:body => comment.body)
45
+ sleep 1
46
+ end
47
+ end
48
+ end
49
+
50
+ def tickets(*options)
51
+ Ticket.find(self.id, options)
52
+ end
53
+
54
+ def ticket(*options)
55
+ if options.first.is_a? Fixnum
56
+ Ticket.find_by_id(self.id, options.first)
57
+ else
58
+ raise "You can only search for a single ticket based on id"
59
+ end
60
+ end
61
+
62
+ def self.find(*options)
63
+ if options[0].first.is_a? Array
64
+ self.find_all.select do |project|
65
+ options[0].first.any? { |id| project.id == id }
66
+ end
67
+ elsif options[0].first.is_a? Hash
68
+ self.find_by_attributes(options[0].first)
69
+ else
70
+ self.find_all
71
+ end
72
+ end
73
+
74
+ def self.find_by_attributes(attributes = {})
75
+ search_by_attribute(self.find_all, attributes)
76
+ end
77
+
78
+ def self.find_by_id(id)
79
+ self.find_all.select { |project| project.id == id }.first
80
+ end
81
+
82
+ def self.find_all
83
+ projects = []
84
+ TicketMaster::Provider::Fogbugz.api.command(:listProjects).each do |project|
85
+ projects << project[1]['project'].map { |xpro| self.new xpro }
86
+ end
87
+ projects.flatten
88
+ end
89
+ end
90
+ end
91
+ end
92
+
93
+
@@ -0,0 +1,116 @@
1
+ module TicketMaster::Provider
2
+ module Fogbugz
3
+ # Ticket class for ticketmaster-fogbugz
4
+ #
5
+
6
+ class Ticket < TicketMaster::Provider::Base::Ticket
7
+ #API = Fogbugz::Ticket # The class to access the api's tickets
8
+ # declare needed overloaded methods here
9
+
10
+ def initialize(*object)
11
+ if object.first
12
+ object = object.first
13
+ unless object.is_a? Hash
14
+ @system_data = {:client => object}
15
+ hash = {:id => object['ixBug'],
16
+ :title => object['sTitle'],
17
+ :description => object['sLatestTextSummary'],
18
+ :status => object['sStatus'],
19
+ :project_id => object['ixProject'],
20
+ :resolution => nil,
21
+ :requestor => nil,
22
+ :priority => object['sPriority'],
23
+ :assignee => object['sPersonAssignedTo'],
24
+ :created_at => nil,
25
+ :updated_at => object['dtLastUpdated']}
26
+ else
27
+ hash = object
28
+ end
29
+ super(hash)
30
+ end
31
+ end
32
+
33
+ def id
34
+ self['ixBug'].to_i
35
+ end
36
+
37
+ def title
38
+ self['sTitle']
39
+ end
40
+
41
+ def description
42
+ self['LatestTextSummary']
43
+ end
44
+
45
+ def project_id
46
+ self['ixProject'].to_i
47
+ end
48
+
49
+ def resolution
50
+ nil
51
+ end
52
+
53
+ def status
54
+ self['sStatus']
55
+ end
56
+
57
+ def requestor
58
+ nil
59
+ end
60
+
61
+ def priority
62
+ self['sPriority']
63
+ end
64
+
65
+ def assignee
66
+ self['sPersonAssignedTo']
67
+ end
68
+
69
+ def created_at
70
+ nil
71
+ end
72
+
73
+ def updated_at
74
+ Time.parse(self['dtLastUpdated'])
75
+ end
76
+
77
+ def comments(*options)
78
+ []
79
+ warn "Fogbugz API doesn't support comments"
80
+ end
81
+
82
+ def comment(*options)
83
+ nil
84
+ warn "Fogbugz API doesn't support comments"
85
+ end
86
+
87
+ def self.find(project_id, options)
88
+ if options.first.is_a? Array
89
+ self.find_all(project_id).select do |ticket|
90
+ options.first.any? { |id| ticket.id == id }
91
+ end
92
+ elsif options.first.is_a? Hash
93
+ self.find_by_attributes(project_id, options.first)
94
+ else
95
+ self.find_all(project_id)
96
+ end
97
+ end
98
+
99
+ def self.find_by_id(project_id, id)
100
+ self.find_all(project_id).select { |ticket| ticket.id == id }.first
101
+ end
102
+
103
+ def self.find_by_attributes(project_id, attributes = {})
104
+ search_by_attribute(self.find_all(project_id), attributes)
105
+ end
106
+
107
+ def self.find_all(project_id)
108
+ tickets = []
109
+ TicketMaster::Provider::Fogbugz.api.command(:search, :q => "project:=#{project_id}", :cols =>"dtLastUpdated,ixBug,sStatus,sTitle,sLatestTextSummary,ixProject,sProject,sPersonAssignedTo,sPriority").each do |ticket|
110
+ tickets << ticket[1]["case"]
111
+ end
112
+ tickets.flatten.map { |xticket| self.new xticket }
113
+ end
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,7 @@
1
+ #require YOUR_PROVIDER_API
2
+ require 'ticketmaster'
3
+ require 'fogbugz'
4
+
5
+ %w{ fogbugz ticket project comment }.each do |f|
6
+ require File.dirname(__FILE__) + '/provider/' + f + '.rb';
7
+ end
@@ -0,0 +1,19 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'test/unit'
11
+ require 'shoulda'
12
+ require 'mocha'
13
+
14
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
15
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
16
+ require 'ticketmaster-fogbugz'
17
+
18
+ class Test::Unit::TestCase
19
+ end
@@ -0,0 +1,37 @@
1
+ require 'helper'
2
+
3
+ class TestProject < Test::Unit::TestCase
4
+ CREDENTIALS = {:email => 'rafael@hybridgroup.com', :password => '123456', :uri => 'https://clutchapp.fogbugz.com'}
5
+
6
+ def setup
7
+ @klass = TicketMaster::Provider::Fogbugz::Project
8
+ @tm = TicketMaster.new(:fogbugz, CREDENTIALS)
9
+ end
10
+
11
+ should "be able to load all projects" do
12
+ projects = @tm.projects
13
+ assert_equal true, projects.instance_of?(Array)
14
+ assert_equal true, projects.first.instance_of?(@klass)
15
+ end
16
+
17
+ should "be able to load a group of projects based on array of id's" do
18
+ projects = @tm.projects([1,2])
19
+ assert_equal true, projects.instance_of?(Array)
20
+ assert_equal true, projects.first.instance_of?(@klass)
21
+ assert_equal 2, projects.first.id
22
+ end
23
+
24
+ should "be able to load tickets based on attributes" do
25
+ projects = @tm.projects(:id => 1)
26
+ assert_equal true, projects.instance_of?(Array)
27
+ assert_equal true, projects.first.instance_of?(@klass)
28
+ assert_equal "Sample Project", projects.first.name
29
+ end
30
+
31
+ should "be able to load a single ticket based on id" do
32
+ project = @tm.project(1)
33
+ assert_equal true, project.instance_of?(@klass)
34
+ assert_equal 1, project.id
35
+ end
36
+
37
+ end
@@ -0,0 +1,11 @@
1
+ require 'helper'
2
+
3
+ class TestTicketmasterFogbugz < Test::Unit::TestCase
4
+ context "checking for ticketmaster initialization" do
5
+ should "be able to instatiate a new instance" do
6
+ @fogbugz = TicketMaster.new(:fogbugz, :email => 'rafael@hybridgroup.com', :password => '12345', :uri => 'https://clutchapp.fogbugz.com')
7
+ assert_equal true, @fogbugz.instance_of?(TicketMaster)
8
+ assert_equal true, @fogbugz.kind_of?(TicketMaster::Provider::Fogbugz)
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,82 @@
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 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{ticketmaster-fogbugz}
8
+ s.version = "0.0.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Rafael George"]
12
+ s.date = %q{2011-06-07}
13
+ s.description = %q{Ticketmaster provider for Fogbugz}
14
+ s.email = %q{rafael@hybridgroup.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".rvmrc",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "lib/provider/comment.rb",
29
+ "lib/provider/fogbugz.rb",
30
+ "lib/provider/project.rb",
31
+ "lib/provider/ticket.rb",
32
+ "lib/ticketmaster-fogbugz.rb",
33
+ "test/helper.rb",
34
+ "test/test_project.rb",
35
+ "test/test_ticketmaster-fogbugz.rb",
36
+ "ticketmaster-fogbugz.gemspec"
37
+ ]
38
+ s.homepage = %q{http://github.com/cored/ticketmaster-fogbugz}
39
+ s.licenses = ["MIT"]
40
+ s.require_paths = ["lib"]
41
+ s.rubygems_version = %q{1.6.1}
42
+ s.summary = %q{Ticketmaster provider for Fogbugz}
43
+ s.test_files = [
44
+ "test/helper.rb",
45
+ "test/test_project.rb",
46
+ "test/test_ticketmaster-fogbugz.rb"
47
+ ]
48
+
49
+ if s.respond_to? :specification_version then
50
+ s.specification_version = 3
51
+
52
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
+ s.add_runtime_dependency(%q<ticketmaster>, [">= 0"])
54
+ s.add_runtime_dependency(%q<ruby-fogbugz>, [">= 0"])
55
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
56
+ s.add_development_dependency(%q<shoulda-context>, [">= 0"])
57
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
58
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
59
+ s.add_development_dependency(%q<rcov>, [">= 0"])
60
+ s.add_development_dependency(%q<mocha>, [">= 0"])
61
+ else
62
+ s.add_dependency(%q<ticketmaster>, [">= 0"])
63
+ s.add_dependency(%q<ruby-fogbugz>, [">= 0"])
64
+ s.add_dependency(%q<shoulda>, [">= 0"])
65
+ s.add_dependency(%q<shoulda-context>, [">= 0"])
66
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
67
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
68
+ s.add_dependency(%q<rcov>, [">= 0"])
69
+ s.add_dependency(%q<mocha>, [">= 0"])
70
+ end
71
+ else
72
+ s.add_dependency(%q<ticketmaster>, [">= 0"])
73
+ s.add_dependency(%q<ruby-fogbugz>, [">= 0"])
74
+ s.add_dependency(%q<shoulda>, [">= 0"])
75
+ s.add_dependency(%q<shoulda-context>, [">= 0"])
76
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
77
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
78
+ s.add_dependency(%q<rcov>, [">= 0"])
79
+ s.add_dependency(%q<mocha>, [">= 0"])
80
+ end
81
+ end
82
+
metadata ADDED
@@ -0,0 +1,201 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ticketmaster-fogbugz
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Rafael George
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-06-07 00:00:00 -04:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ type: :runtime
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
32
+ version_requirements: *id001
33
+ name: ticketmaster
34
+ prerelease: false
35
+ - !ruby/object:Gem::Dependency
36
+ type: :runtime
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ version_requirements: *id002
47
+ name: ruby-fogbugz
48
+ prerelease: false
49
+ - !ruby/object:Gem::Dependency
50
+ type: :development
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ version_requirements: *id003
61
+ name: shoulda
62
+ prerelease: false
63
+ - !ruby/object:Gem::Dependency
64
+ type: :development
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 3
71
+ segments:
72
+ - 0
73
+ version: "0"
74
+ version_requirements: *id004
75
+ name: shoulda-context
76
+ prerelease: false
77
+ - !ruby/object:Gem::Dependency
78
+ type: :development
79
+ requirement: &id005 !ruby/object:Gem::Requirement
80
+ none: false
81
+ requirements:
82
+ - - ~>
83
+ - !ruby/object:Gem::Version
84
+ hash: 23
85
+ segments:
86
+ - 1
87
+ - 0
88
+ - 0
89
+ version: 1.0.0
90
+ version_requirements: *id005
91
+ name: bundler
92
+ prerelease: false
93
+ - !ruby/object:Gem::Dependency
94
+ type: :development
95
+ requirement: &id006 !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ~>
99
+ - !ruby/object:Gem::Version
100
+ hash: 1
101
+ segments:
102
+ - 1
103
+ - 5
104
+ - 1
105
+ version: 1.5.1
106
+ version_requirements: *id006
107
+ name: jeweler
108
+ prerelease: false
109
+ - !ruby/object:Gem::Dependency
110
+ type: :development
111
+ requirement: &id007 !ruby/object:Gem::Requirement
112
+ none: false
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ hash: 3
117
+ segments:
118
+ - 0
119
+ version: "0"
120
+ version_requirements: *id007
121
+ name: rcov
122
+ prerelease: false
123
+ - !ruby/object:Gem::Dependency
124
+ type: :development
125
+ requirement: &id008 !ruby/object:Gem::Requirement
126
+ none: false
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ hash: 3
131
+ segments:
132
+ - 0
133
+ version: "0"
134
+ version_requirements: *id008
135
+ name: mocha
136
+ prerelease: false
137
+ description: Ticketmaster provider for Fogbugz
138
+ email: rafael@hybridgroup.com
139
+ executables: []
140
+
141
+ extensions: []
142
+
143
+ extra_rdoc_files:
144
+ - LICENSE.txt
145
+ - README.rdoc
146
+ files:
147
+ - .document
148
+ - .rvmrc
149
+ - Gemfile
150
+ - Gemfile.lock
151
+ - LICENSE.txt
152
+ - README.rdoc
153
+ - Rakefile
154
+ - VERSION
155
+ - lib/provider/comment.rb
156
+ - lib/provider/fogbugz.rb
157
+ - lib/provider/project.rb
158
+ - lib/provider/ticket.rb
159
+ - lib/ticketmaster-fogbugz.rb
160
+ - test/helper.rb
161
+ - test/test_project.rb
162
+ - test/test_ticketmaster-fogbugz.rb
163
+ - ticketmaster-fogbugz.gemspec
164
+ has_rdoc: true
165
+ homepage: http://github.com/cored/ticketmaster-fogbugz
166
+ licenses:
167
+ - MIT
168
+ post_install_message:
169
+ rdoc_options: []
170
+
171
+ require_paths:
172
+ - lib
173
+ required_ruby_version: !ruby/object:Gem::Requirement
174
+ none: false
175
+ requirements:
176
+ - - ">="
177
+ - !ruby/object:Gem::Version
178
+ hash: 3
179
+ segments:
180
+ - 0
181
+ version: "0"
182
+ required_rubygems_version: !ruby/object:Gem::Requirement
183
+ none: false
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ hash: 3
188
+ segments:
189
+ - 0
190
+ version: "0"
191
+ requirements: []
192
+
193
+ rubyforge_project:
194
+ rubygems_version: 1.6.1
195
+ signing_key:
196
+ specification_version: 3
197
+ summary: Ticketmaster provider for Fogbugz
198
+ test_files:
199
+ - test/helper.rb
200
+ - test/test_project.rb
201
+ - test/test_ticketmaster-fogbugz.rb