taskmapper 0.8.0
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/.document +5 -0
- data/.travis.yml +4 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +52 -0
- data/LICENSE +20 -0
- data/NOTES +18 -0
- data/README.md +296 -0
- data/Rakefile +40 -0
- data/TODO +1 -0
- data/VERSION +1 -0
- data/bin/tm +7 -0
- data/examples/tm_example.rb +11 -0
- data/examples/tm_example_2.rb +11 -0
- data/examples/tm_example_3.rb +21 -0
- data/examples/tm_example_4.rb +17 -0
- data/lib/taskmapper.rb +53 -0
- data/lib/taskmapper/authenticator.rb +2 -0
- data/lib/taskmapper/cli/commands/config.rb +100 -0
- data/lib/taskmapper/cli/commands/console.rb +35 -0
- data/lib/taskmapper/cli/commands/generate.rb +112 -0
- data/lib/taskmapper/cli/commands/generate/provider.rb +5 -0
- data/lib/taskmapper/cli/commands/generate/provider/comment.rb +14 -0
- data/lib/taskmapper/cli/commands/generate/provider/project.rb +26 -0
- data/lib/taskmapper/cli/commands/generate/provider/provider.rb +25 -0
- data/lib/taskmapper/cli/commands/generate/provider/ticket.rb +12 -0
- data/lib/taskmapper/cli/commands/help.rb +9 -0
- data/lib/taskmapper/cli/commands/help/config +27 -0
- data/lib/taskmapper/cli/commands/help/console +13 -0
- data/lib/taskmapper/cli/commands/help/generate +19 -0
- data/lib/taskmapper/cli/commands/help/help +7 -0
- data/lib/taskmapper/cli/commands/help/project +13 -0
- data/lib/taskmapper/cli/commands/help/ticket +14 -0
- data/lib/taskmapper/cli/commands/project.rb +140 -0
- data/lib/taskmapper/cli/commands/ticket.rb +145 -0
- data/lib/taskmapper/cli/common.rb +28 -0
- data/lib/taskmapper/cli/init.rb +77 -0
- data/lib/taskmapper/comment.rb +97 -0
- data/lib/taskmapper/common.rb +81 -0
- data/lib/taskmapper/dummy/comment.rb +27 -0
- data/lib/taskmapper/dummy/dummy.rb +28 -0
- data/lib/taskmapper/dummy/project.rb +42 -0
- data/lib/taskmapper/dummy/ticket.rb +43 -0
- data/lib/taskmapper/exception.rb +2 -0
- data/lib/taskmapper/helper.rb +72 -0
- data/lib/taskmapper/project.rb +145 -0
- data/lib/taskmapper/provider.rb +82 -0
- data/lib/taskmapper/tester/comment.rb +18 -0
- data/lib/taskmapper/tester/project.rb +19 -0
- data/lib/taskmapper/tester/tester.rb +28 -0
- data/lib/taskmapper/tester/ticket.rb +19 -0
- data/lib/taskmapper/ticket.rb +154 -0
- data/spec/project_spec.rb +84 -0
- data/spec/rcov.opts +1 -0
- data/spec/spec.opts +1 -0
- data/spec/spec_helper.rb +9 -0
- data/spec/taskmapper-cli_spec.rb +60 -0
- data/spec/taskmapper-exception_spec.rb +160 -0
- data/spec/taskmapper_spec.rb +13 -0
- data/spec/ticket_spec.rb +56 -0
- data/taskmapper.gemspec +118 -0
- metadata +189 -0
@@ -0,0 +1,160 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
4
|
+
require 'rubygems'
|
5
|
+
require 'taskmapper'
|
6
|
+
|
7
|
+
describe "TaskMapper Exception Messages" do
|
8
|
+
let(:exception) { TaskMapper::Exception }
|
9
|
+
let(:tm) { TaskMapper.new(:tester, {}) }
|
10
|
+
let(:validation_error) { "TaskMapper::Provider::Base::valid? method must be implemented by the provider" }
|
11
|
+
let(:easy_finder_error) { "TaskMapper::Provider::Helper::easy_finder method must be implemented by the provider" }
|
12
|
+
|
13
|
+
describe TaskMapper::Provider::Base do
|
14
|
+
context "when calling #valid? method" do
|
15
|
+
subject { lambda { tm.valid? } }
|
16
|
+
it { should raise_error(exception, validation_error) }
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
describe TaskMapper::Provider::Helper do
|
21
|
+
context "when calling #easy_finder" do
|
22
|
+
subject { lambda { tm.easy_finder(1, :test, {}) } }
|
23
|
+
it { should raise_error(exception, easy_finder_error) }
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
describe TaskMapper::Provider::Tester::Project do
|
28
|
+
let(:find_by_id_error) { "TaskMapper::Provider::Tester::Project::find_by_id method must be implemented by the provider" }
|
29
|
+
let(:find_by_attributes_error) { "TaskMapper::Provider::Tester::Project::find_by_attributes method must be implemented by the provider" }
|
30
|
+
let(:search_error) { "TaskMapper::Provider::Tester::Project::search method must be implemented by the provider"}
|
31
|
+
let(:create_error) { "TaskMapper::Provider::Tester::Project::create method must be implemented by the provider"}
|
32
|
+
let(:save_error) { "TaskMapper::Provider::Tester::Project::save method must be implemented by the provider"}
|
33
|
+
let(:destroy_error) { "TaskMapper::Provider::Tester::Project::destroy method must be implemented by the provider" }
|
34
|
+
|
35
|
+
context "when calling #find_by_id" do
|
36
|
+
subject { lambda { tm.project([1]) } }
|
37
|
+
it { should raise_error(exception, find_by_id_error) }
|
38
|
+
end
|
39
|
+
|
40
|
+
context "when calling #find_by_attributes" do
|
41
|
+
subject { lambda { tm.project.find :all, :name => 'Test Project' } }
|
42
|
+
it { should raise_error(exception, find_by_attributes_error) }
|
43
|
+
end
|
44
|
+
|
45
|
+
context "when calling #search" do
|
46
|
+
subject { lambda { tm.project.search :tag => 'testing' } }
|
47
|
+
it { should raise_error(exception, search_error) }
|
48
|
+
end
|
49
|
+
|
50
|
+
context "when calling #create" do
|
51
|
+
subject { lambda { tm.project.create :name => 'Foo Bar' } }
|
52
|
+
it { should raise_error(exception, create_error) }
|
53
|
+
end
|
54
|
+
|
55
|
+
context "when calling #save" do
|
56
|
+
subject { lambda { tm.project.save } }
|
57
|
+
pending { should raise_error(exception, save_error) }
|
58
|
+
end
|
59
|
+
|
60
|
+
context "when calling #destroy" do
|
61
|
+
let(:project) { TaskMapper::Provider::Tester::Project.new }
|
62
|
+
subject { lambda { project.destroy } }
|
63
|
+
it { should raise_error(exception, destroy_error) }
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
describe TaskMapper::Provider::Tester::Ticket do
|
68
|
+
let(:ticket) { TaskMapper::Provider::Tester::Ticket.new(1) }
|
69
|
+
let(:find_by_id_error) { "TaskMapper::Provider::Tester::Ticket::find_by_id method must be implemented by the provider" }
|
70
|
+
let(:find_by_attributes_error) { "TaskMapper::Provider::Tester::Ticket::find_by_attributes method must be implemented by the provider" }
|
71
|
+
let(:search_error) { "TaskMapper::Provider::Tester::Ticket::search method must be implemented by the provider" }
|
72
|
+
let(:create_error) { "TaskMapper::Provider::Tester::Ticket::create method must be implemented by the provider" }
|
73
|
+
let(:save_error) { "TaskMapper::Provider::Tester::Ticket::save method must be implemented by the provider" }
|
74
|
+
let(:destroy_error) { "TaskMapper::Provider::Tester::Ticket::destroy method must be implemented by the provider" }
|
75
|
+
let(:close_error) { "TaskMapper::Provider::Tester::Ticket::close method must be implemented by the provider" }
|
76
|
+
let(:reload_error) { "TaskMapper::Provider::Tester::Ticket::reload! method must be implemented by the provider" }
|
77
|
+
|
78
|
+
context "when #find_by_id" do
|
79
|
+
subject { lambda { tm.tickets(:id => 22) } }
|
80
|
+
it { should raise_error(exception, find_by_id_error) }
|
81
|
+
end
|
82
|
+
|
83
|
+
context "when #find_by_attributes" do
|
84
|
+
subject { lambda { tm.ticket.find(1, :all, :title => 'Test ticket') } }
|
85
|
+
it { should raise_error(exception, find_by_attributes_error) }
|
86
|
+
end
|
87
|
+
|
88
|
+
context "when #search" do
|
89
|
+
subject { lambda { tm.ticket.search :tag => 'testing' } }
|
90
|
+
it { should raise_error(exception, search_error) }
|
91
|
+
end
|
92
|
+
|
93
|
+
context "when #create" do
|
94
|
+
subject { lambda { tm.ticket.create :name => 'Foo Bar' } }
|
95
|
+
it { should raise_error(exception, create_error) }
|
96
|
+
end
|
97
|
+
|
98
|
+
context "when #save" do
|
99
|
+
subject { lambda { ticket.save } }
|
100
|
+
it { should raise_error(exception, save_error) }
|
101
|
+
end
|
102
|
+
|
103
|
+
context "when #destroy" do
|
104
|
+
subject { lambda { ticket.destroy } }
|
105
|
+
it { should raise_error(exception, destroy_error) }
|
106
|
+
end
|
107
|
+
|
108
|
+
context "when #close" do
|
109
|
+
subject { lambda { ticket.close } }
|
110
|
+
it { should raise_error(exception, close_error) }
|
111
|
+
end
|
112
|
+
|
113
|
+
context "when #reload!" do
|
114
|
+
subject { lambda { ticket.reload! } }
|
115
|
+
it { should raise_error(exception, reload_error) }
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
describe TaskMapper::Provider::Tester::Comment do
|
120
|
+
let(:ticket_with_comments) { TaskMapper::Provider::Tester::Ticket.new(1) }
|
121
|
+
let(:comment) { TaskMapper::Provider::Tester::Comment.new(1, 1) }
|
122
|
+
let(:find_by_id_error) { "TaskMapper::Provider::Tester::Comment::find_by_id method must be implemented by the provider" }
|
123
|
+
let(:find_by_attributes_error) { "TaskMapper::Provider::Tester::Comment::find_by_attributes method must be implemented by the provider" }
|
124
|
+
let(:search_error) { "TaskMapper::Provider::Tester::Comment::search method must be implemented by the provider" }
|
125
|
+
let(:create_error) { "TaskMapper::Provider::Tester::Comment::create method must be implemented by the provider" }
|
126
|
+
let(:save_error) { "TaskMapper::Provider::Tester::Comment::save method must be implemented by the provider" }
|
127
|
+
let(:destroy_error) { "TaskMapper::Provider::Tester::Comment::destroy method must be implemented by the provider" }
|
128
|
+
|
129
|
+
context "when #find_by_id" do
|
130
|
+
subject { lambda { ticket_with_comments.comment.find(1,1,[1,2]) } }
|
131
|
+
it { should raise_error(exception, find_by_id_error) }
|
132
|
+
end
|
133
|
+
|
134
|
+
context "when #find_by_attributes" do
|
135
|
+
subject { lambda { ticket_with_comments.comment.find(1, 1, :all, :tag => 'tag') } }
|
136
|
+
it { should raise_error(exception, find_by_attributes_error) }
|
137
|
+
end
|
138
|
+
|
139
|
+
context "when #search" do
|
140
|
+
subject { lambda { ticket_with_comments.comment.search(1, 1, :tag => 'testing') } }
|
141
|
+
it { should raise_error(exception, search_error) }
|
142
|
+
end
|
143
|
+
|
144
|
+
context "when #create" do
|
145
|
+
subject { lambda { ticket_with_comments.comment.create :name => 'Foo Bar' } }
|
146
|
+
it { should raise_error(exception, create_error) }
|
147
|
+
end
|
148
|
+
|
149
|
+
context "when #save" do
|
150
|
+
subject { lambda { comment.save } }
|
151
|
+
it { should raise_error(exception, save_error) }
|
152
|
+
end
|
153
|
+
|
154
|
+
context "when #destroy" do
|
155
|
+
subject { lambda { comment.destroy } }
|
156
|
+
it { should raise_error(exception, destroy_error) }
|
157
|
+
end
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
# This can also act as an example test or test skeleton for your provider.
|
4
|
+
# Just replace the Dummy in @project_class and @ticket_class
|
5
|
+
# Also, remember to mock or stub any API calls
|
6
|
+
describe TaskMapper do
|
7
|
+
context "when calling new it should always return a taskmapper instance" do
|
8
|
+
subject { TaskMapper.new(:dummy, {}) }
|
9
|
+
it { should be_an_instance_of TaskMapper }
|
10
|
+
it { should be_a_kind_of TaskMapper::Provider::Dummy }
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
data/spec/ticket_spec.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
# This can also act as an example test or test skeleton for your provider.
|
4
|
+
# Just replace the Dummy in @project_class and @ticket_class
|
5
|
+
# Also, remember to mock or stub any API calls
|
6
|
+
describe "Tickets" do
|
7
|
+
let(:tm) { TaskMapper.new(:dummy, {}) }
|
8
|
+
let(:project_class) { TaskMapper::Provider::Dummy::Project }
|
9
|
+
let(:ticket_class) { TaskMapper::Provider::Dummy::Ticket }
|
10
|
+
let(:project) { tm.projects.first }
|
11
|
+
|
12
|
+
describe "for a Project" do
|
13
|
+
context "when #tickets" do
|
14
|
+
subject { project.tickets }
|
15
|
+
it { should be_an_instance_of Array }
|
16
|
+
it { subject.first.should be_an_instance_of ticket_class }
|
17
|
+
end
|
18
|
+
|
19
|
+
context "when searching wanting back all tickets that match the query" do
|
20
|
+
subject { project.tickets([999]) }
|
21
|
+
it { should be_an_instance_of Array }
|
22
|
+
it { subject.first.should be_an_instance_of ticket_class }
|
23
|
+
it { subject.first.id.should be_eql(999) }
|
24
|
+
end
|
25
|
+
|
26
|
+
context "when passing an query hash" do
|
27
|
+
subject { project.tickets(:id => 999) }
|
28
|
+
it { should be_an_instance_of Array }
|
29
|
+
end
|
30
|
+
|
31
|
+
context "when searching wanting back the first ticket that matches the query" do
|
32
|
+
subject { project.ticket }
|
33
|
+
it { should be_eql TaskMapper::Provider::Dummy::Ticket }
|
34
|
+
end
|
35
|
+
|
36
|
+
context "when querying using default ID query" do
|
37
|
+
subject { project.ticket(888) }
|
38
|
+
it { should be_an_instance_of ticket_class }
|
39
|
+
end
|
40
|
+
|
41
|
+
context "when passing an id to #ticket" do
|
42
|
+
subject { project.ticket(888) }
|
43
|
+
it { subject.id.should be_eql(888) }
|
44
|
+
end
|
45
|
+
|
46
|
+
context "when passing a hash to #ticket" do
|
47
|
+
subject { project.ticket(:id => 888) }
|
48
|
+
it { should be_an_instance_of ticket_class }
|
49
|
+
end
|
50
|
+
|
51
|
+
context "when passing an id to #ticket" do
|
52
|
+
subject { project.ticket(888) }
|
53
|
+
it { subject.id.should be_eql(888) }
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
data/taskmapper.gemspec
ADDED
@@ -0,0 +1,118 @@
|
|
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 = "taskmapper"
|
8
|
+
s.version = "0.8.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["kiafaldorius", "Sirupsen", "deadprogrammer"]
|
12
|
+
s.date = "2012-05-09"
|
13
|
+
s.description = "TaskMapper provides a universal API to ticket tracking and project management systems."
|
14
|
+
s.email = "info@hybridgroup.com"
|
15
|
+
s.executables = ["tm"]
|
16
|
+
s.extra_rdoc_files = [
|
17
|
+
"LICENSE",
|
18
|
+
"README.md",
|
19
|
+
"TODO"
|
20
|
+
]
|
21
|
+
s.files = [
|
22
|
+
".document",
|
23
|
+
".travis.yml",
|
24
|
+
"Gemfile",
|
25
|
+
"Gemfile.lock",
|
26
|
+
"LICENSE",
|
27
|
+
"NOTES",
|
28
|
+
"README.md",
|
29
|
+
"Rakefile",
|
30
|
+
"TODO",
|
31
|
+
"VERSION",
|
32
|
+
"bin/tm",
|
33
|
+
"examples/tm_example.rb",
|
34
|
+
"examples/tm_example_2.rb",
|
35
|
+
"examples/tm_example_3.rb",
|
36
|
+
"examples/tm_example_4.rb",
|
37
|
+
"lib/taskmapper.rb",
|
38
|
+
"lib/taskmapper/authenticator.rb",
|
39
|
+
"lib/taskmapper/cli/commands/config.rb",
|
40
|
+
"lib/taskmapper/cli/commands/console.rb",
|
41
|
+
"lib/taskmapper/cli/commands/generate.rb",
|
42
|
+
"lib/taskmapper/cli/commands/generate/provider.rb",
|
43
|
+
"lib/taskmapper/cli/commands/generate/provider/comment.rb",
|
44
|
+
"lib/taskmapper/cli/commands/generate/provider/project.rb",
|
45
|
+
"lib/taskmapper/cli/commands/generate/provider/provider.rb",
|
46
|
+
"lib/taskmapper/cli/commands/generate/provider/ticket.rb",
|
47
|
+
"lib/taskmapper/cli/commands/help.rb",
|
48
|
+
"lib/taskmapper/cli/commands/help/config",
|
49
|
+
"lib/taskmapper/cli/commands/help/console",
|
50
|
+
"lib/taskmapper/cli/commands/help/generate",
|
51
|
+
"lib/taskmapper/cli/commands/help/help",
|
52
|
+
"lib/taskmapper/cli/commands/help/project",
|
53
|
+
"lib/taskmapper/cli/commands/help/ticket",
|
54
|
+
"lib/taskmapper/cli/commands/project.rb",
|
55
|
+
"lib/taskmapper/cli/commands/ticket.rb",
|
56
|
+
"lib/taskmapper/cli/common.rb",
|
57
|
+
"lib/taskmapper/cli/init.rb",
|
58
|
+
"lib/taskmapper/comment.rb",
|
59
|
+
"lib/taskmapper/common.rb",
|
60
|
+
"lib/taskmapper/dummy/comment.rb",
|
61
|
+
"lib/taskmapper/dummy/dummy.rb",
|
62
|
+
"lib/taskmapper/dummy/project.rb",
|
63
|
+
"lib/taskmapper/dummy/ticket.rb",
|
64
|
+
"lib/taskmapper/exception.rb",
|
65
|
+
"lib/taskmapper/helper.rb",
|
66
|
+
"lib/taskmapper/project.rb",
|
67
|
+
"lib/taskmapper/provider.rb",
|
68
|
+
"lib/taskmapper/tester/comment.rb",
|
69
|
+
"lib/taskmapper/tester/project.rb",
|
70
|
+
"lib/taskmapper/tester/tester.rb",
|
71
|
+
"lib/taskmapper/tester/ticket.rb",
|
72
|
+
"lib/taskmapper/ticket.rb",
|
73
|
+
"spec/project_spec.rb",
|
74
|
+
"spec/rcov.opts",
|
75
|
+
"spec/spec.opts",
|
76
|
+
"spec/spec_helper.rb",
|
77
|
+
"spec/taskmapper-cli_spec.rb",
|
78
|
+
"spec/taskmapper-exception_spec.rb",
|
79
|
+
"spec/taskmapper_spec.rb",
|
80
|
+
"spec/ticket_spec.rb",
|
81
|
+
"taskmapper.gemspec"
|
82
|
+
]
|
83
|
+
s.homepage = "http://ticketrb.com"
|
84
|
+
s.require_paths = ["lib"]
|
85
|
+
s.rubygems_version = "1.8.15"
|
86
|
+
s.summary = "TaskMapper provides a universal API to ticket tracking and project management systems."
|
87
|
+
|
88
|
+
if s.respond_to? :specification_version then
|
89
|
+
s.specification_version = 3
|
90
|
+
|
91
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
92
|
+
s.add_runtime_dependency(%q<activeresource>, ["~> 3.0"])
|
93
|
+
s.add_runtime_dependency(%q<activesupport>, ["~> 3.0"])
|
94
|
+
s.add_runtime_dependency(%q<hashie>, ["~> 1.2"])
|
95
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.0"])
|
96
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.8"])
|
97
|
+
s.add_development_dependency(%q<simplecov>, ["~> 0.5"])
|
98
|
+
s.add_development_dependency(%q<rcov>, ["~> 1.0"])
|
99
|
+
else
|
100
|
+
s.add_dependency(%q<activeresource>, ["~> 3.0"])
|
101
|
+
s.add_dependency(%q<activesupport>, ["~> 3.0"])
|
102
|
+
s.add_dependency(%q<hashie>, ["~> 1.2"])
|
103
|
+
s.add_dependency(%q<rspec>, ["~> 2.0"])
|
104
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8"])
|
105
|
+
s.add_dependency(%q<simplecov>, ["~> 0.5"])
|
106
|
+
s.add_dependency(%q<rcov>, ["~> 1.0"])
|
107
|
+
end
|
108
|
+
else
|
109
|
+
s.add_dependency(%q<activeresource>, ["~> 3.0"])
|
110
|
+
s.add_dependency(%q<activesupport>, ["~> 3.0"])
|
111
|
+
s.add_dependency(%q<hashie>, ["~> 1.2"])
|
112
|
+
s.add_dependency(%q<rspec>, ["~> 2.0"])
|
113
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8"])
|
114
|
+
s.add_dependency(%q<simplecov>, ["~> 0.5"])
|
115
|
+
s.add_dependency(%q<rcov>, ["~> 1.0"])
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
metadata
ADDED
@@ -0,0 +1,189 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: taskmapper
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.8.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- kiafaldorius
|
9
|
+
- Sirupsen
|
10
|
+
- deadprogrammer
|
11
|
+
autorequire:
|
12
|
+
bindir: bin
|
13
|
+
cert_chain: []
|
14
|
+
date: 2012-05-09 00:00:00.000000000Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: activeresource
|
18
|
+
requirement: &88047140 !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - ~>
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: '3.0'
|
24
|
+
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: *88047140
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: activesupport
|
29
|
+
requirement: &88046840 !ruby/object:Gem::Requirement
|
30
|
+
none: false
|
31
|
+
requirements:
|
32
|
+
- - ~>
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '3.0'
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: *88046840
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: hashie
|
40
|
+
requirement: &88046560 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '1.2'
|
46
|
+
type: :runtime
|
47
|
+
prerelease: false
|
48
|
+
version_requirements: *88046560
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: rspec
|
51
|
+
requirement: &88046230 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ~>
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '2.0'
|
57
|
+
type: :development
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: *88046230
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: jeweler
|
62
|
+
requirement: &88045960 !ruby/object:Gem::Requirement
|
63
|
+
none: false
|
64
|
+
requirements:
|
65
|
+
- - ~>
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '1.8'
|
68
|
+
type: :development
|
69
|
+
prerelease: false
|
70
|
+
version_requirements: *88045960
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: simplecov
|
73
|
+
requirement: &88045650 !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ~>
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '0.5'
|
79
|
+
type: :development
|
80
|
+
prerelease: false
|
81
|
+
version_requirements: *88045650
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: rcov
|
84
|
+
requirement: &88045310 !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '1.0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: *88045310
|
93
|
+
description: TaskMapper provides a universal API to ticket tracking and project management
|
94
|
+
systems.
|
95
|
+
email: info@hybridgroup.com
|
96
|
+
executables:
|
97
|
+
- tm
|
98
|
+
extensions: []
|
99
|
+
extra_rdoc_files:
|
100
|
+
- LICENSE
|
101
|
+
- README.md
|
102
|
+
- TODO
|
103
|
+
files:
|
104
|
+
- .document
|
105
|
+
- .travis.yml
|
106
|
+
- Gemfile
|
107
|
+
- Gemfile.lock
|
108
|
+
- LICENSE
|
109
|
+
- NOTES
|
110
|
+
- README.md
|
111
|
+
- Rakefile
|
112
|
+
- TODO
|
113
|
+
- VERSION
|
114
|
+
- bin/tm
|
115
|
+
- examples/tm_example.rb
|
116
|
+
- examples/tm_example_2.rb
|
117
|
+
- examples/tm_example_3.rb
|
118
|
+
- examples/tm_example_4.rb
|
119
|
+
- lib/taskmapper.rb
|
120
|
+
- lib/taskmapper/authenticator.rb
|
121
|
+
- lib/taskmapper/cli/commands/config.rb
|
122
|
+
- lib/taskmapper/cli/commands/console.rb
|
123
|
+
- lib/taskmapper/cli/commands/generate.rb
|
124
|
+
- lib/taskmapper/cli/commands/generate/provider.rb
|
125
|
+
- lib/taskmapper/cli/commands/generate/provider/comment.rb
|
126
|
+
- lib/taskmapper/cli/commands/generate/provider/project.rb
|
127
|
+
- lib/taskmapper/cli/commands/generate/provider/provider.rb
|
128
|
+
- lib/taskmapper/cli/commands/generate/provider/ticket.rb
|
129
|
+
- lib/taskmapper/cli/commands/help.rb
|
130
|
+
- lib/taskmapper/cli/commands/help/config
|
131
|
+
- lib/taskmapper/cli/commands/help/console
|
132
|
+
- lib/taskmapper/cli/commands/help/generate
|
133
|
+
- lib/taskmapper/cli/commands/help/help
|
134
|
+
- lib/taskmapper/cli/commands/help/project
|
135
|
+
- lib/taskmapper/cli/commands/help/ticket
|
136
|
+
- lib/taskmapper/cli/commands/project.rb
|
137
|
+
- lib/taskmapper/cli/commands/ticket.rb
|
138
|
+
- lib/taskmapper/cli/common.rb
|
139
|
+
- lib/taskmapper/cli/init.rb
|
140
|
+
- lib/taskmapper/comment.rb
|
141
|
+
- lib/taskmapper/common.rb
|
142
|
+
- lib/taskmapper/dummy/comment.rb
|
143
|
+
- lib/taskmapper/dummy/dummy.rb
|
144
|
+
- lib/taskmapper/dummy/project.rb
|
145
|
+
- lib/taskmapper/dummy/ticket.rb
|
146
|
+
- lib/taskmapper/exception.rb
|
147
|
+
- lib/taskmapper/helper.rb
|
148
|
+
- lib/taskmapper/project.rb
|
149
|
+
- lib/taskmapper/provider.rb
|
150
|
+
- lib/taskmapper/tester/comment.rb
|
151
|
+
- lib/taskmapper/tester/project.rb
|
152
|
+
- lib/taskmapper/tester/tester.rb
|
153
|
+
- lib/taskmapper/tester/ticket.rb
|
154
|
+
- lib/taskmapper/ticket.rb
|
155
|
+
- spec/project_spec.rb
|
156
|
+
- spec/rcov.opts
|
157
|
+
- spec/spec.opts
|
158
|
+
- spec/spec_helper.rb
|
159
|
+
- spec/taskmapper-cli_spec.rb
|
160
|
+
- spec/taskmapper-exception_spec.rb
|
161
|
+
- spec/taskmapper_spec.rb
|
162
|
+
- spec/ticket_spec.rb
|
163
|
+
- taskmapper.gemspec
|
164
|
+
homepage: http://ticketrb.com
|
165
|
+
licenses: []
|
166
|
+
post_install_message:
|
167
|
+
rdoc_options: []
|
168
|
+
require_paths:
|
169
|
+
- lib
|
170
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
171
|
+
none: false
|
172
|
+
requirements:
|
173
|
+
- - ! '>='
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
178
|
+
requirements:
|
179
|
+
- - ! '>='
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0'
|
182
|
+
requirements: []
|
183
|
+
rubyforge_project:
|
184
|
+
rubygems_version: 1.8.15
|
185
|
+
signing_key:
|
186
|
+
specification_version: 3
|
187
|
+
summary: TaskMapper provides a universal API to ticket tracking and project management
|
188
|
+
systems.
|
189
|
+
test_files: []
|