caperoma 0.0.2 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +11 -9
- data/Gemfile.lock +19 -0
- data/README.rdoc +9 -2
- data/Rakefile +16 -16
- data/VERSION +1 -1
- data/bin/caperoma +15 -1
- data/caperoma.gemspec +16 -5
- data/lib/caperoma.rb +14 -2
- data/lib/caperoma/credentials.rb +13 -0
- data/lib/caperoma/jira_client.rb +57 -0
- data/spec/caperoma/credentials_spec.rb +25 -0
- data/spec/caperoma/jira_spec.rb +35 -0
- data/spec/caperoma_spec.rb +25 -0
- data/{test/helper.rb → spec/spec_helper.rb} +9 -13
- data/spec/support/stubs.rb +9 -0
- metadata +37 -4
- data/test/test_caperoma.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d72c64e6ffa869310d552b75afc267f0e3cdeb24
|
4
|
+
data.tar.gz: 1d4b90b821373516c202499febde36b2a10e44cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 64e94f6d47bcca0dbaa4ba54ae249455193377fa08f8f07e8935e930ba9425bb76d1b2a4c12f998c91a27ac3e087f1850e99c8a69b102427a9330f9a034c0db0
|
7
|
+
data.tar.gz: cac0ae435cc34c0fcefa5fa9477325b8021e8b84d698fd48111000ee970b937087ddc8e9c2c1990b17ca1c41e62961d50cd6b411fb4a248ac19846eb17f804f0
|
data/Gemfile
CHANGED
@@ -1,14 +1,16 @@
|
|
1
|
-
source
|
2
|
-
|
3
|
-
#
|
4
|
-
#
|
1
|
+
source 'http://rubygems.org'
|
2
|
+
|
3
|
+
# Runtime dependencies
|
4
|
+
# gem 'activesupport'
|
5
|
+
gem 'jira-ruby', :require => 'jira'
|
5
6
|
|
6
7
|
# Add dependencies to develop your gem here.
|
7
8
|
# Include everything needed to run rake, tests, features, etc.
|
8
9
|
group :development do
|
9
|
-
gem
|
10
|
-
gem
|
11
|
-
gem
|
12
|
-
gem
|
13
|
-
gem
|
10
|
+
gem 'shoulda', '>= 0'
|
11
|
+
gem 'rdoc', '~> 3.12'
|
12
|
+
gem 'bundler', '~> 1.0'
|
13
|
+
gem 'jeweler', '~> 2.0.1'
|
14
|
+
gem 'simplecov', '>= 0'
|
15
|
+
gem 'rspec'
|
14
16
|
end
|
data/Gemfile.lock
CHANGED
@@ -11,6 +11,7 @@ GEM
|
|
11
11
|
builder (3.2.2)
|
12
12
|
descendants_tracker (0.0.4)
|
13
13
|
thread_safe (~> 0.3, >= 0.3.1)
|
14
|
+
diff-lcs (1.2.5)
|
14
15
|
docile (1.1.5)
|
15
16
|
faraday (0.9.0)
|
16
17
|
multipart-post (>= 1.2, < 3)
|
@@ -35,6 +36,9 @@ GEM
|
|
35
36
|
nokogiri (>= 1.5.10)
|
36
37
|
rake
|
37
38
|
rdoc
|
39
|
+
jira-ruby (0.1.10)
|
40
|
+
activesupport
|
41
|
+
oauth
|
38
42
|
json (1.8.1)
|
39
43
|
jwt (1.0.0)
|
40
44
|
mini_portile (0.6.0)
|
@@ -44,6 +48,7 @@ GEM
|
|
44
48
|
multipart-post (2.0.0)
|
45
49
|
nokogiri (1.6.2.1)
|
46
50
|
mini_portile (= 0.6.0)
|
51
|
+
oauth (0.4.7)
|
47
52
|
oauth2 (1.0.0)
|
48
53
|
faraday (>= 0.8, < 0.10)
|
49
54
|
jwt (~> 1.0)
|
@@ -54,6 +59,18 @@ GEM
|
|
54
59
|
rake (10.3.2)
|
55
60
|
rdoc (3.12.2)
|
56
61
|
json (~> 1.4)
|
62
|
+
rspec (3.0.0)
|
63
|
+
rspec-core (~> 3.0.0)
|
64
|
+
rspec-expectations (~> 3.0.0)
|
65
|
+
rspec-mocks (~> 3.0.0)
|
66
|
+
rspec-core (3.0.2)
|
67
|
+
rspec-support (~> 3.0.0)
|
68
|
+
rspec-expectations (3.0.2)
|
69
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
70
|
+
rspec-support (~> 3.0.0)
|
71
|
+
rspec-mocks (3.0.2)
|
72
|
+
rspec-support (~> 3.0.0)
|
73
|
+
rspec-support (3.0.2)
|
57
74
|
shoulda (3.5.0)
|
58
75
|
shoulda-context (~> 1.0, >= 1.0.1)
|
59
76
|
shoulda-matchers (>= 1.4.1, < 3.0)
|
@@ -75,6 +92,8 @@ PLATFORMS
|
|
75
92
|
DEPENDENCIES
|
76
93
|
bundler (~> 1.0)
|
77
94
|
jeweler (~> 2.0.1)
|
95
|
+
jira-ruby
|
78
96
|
rdoc (~> 3.12)
|
97
|
+
rspec
|
79
98
|
shoulda
|
80
99
|
simplecov
|
data/README.rdoc
CHANGED
@@ -1,9 +1,16 @@
|
|
1
1
|
= caperoma
|
2
2
|
|
3
|
-
|
3
|
+
Install:
|
4
|
+
`sudo gem install caperoma`
|
5
|
+
|
6
|
+
Use:
|
7
|
+
````
|
8
|
+
caperoma config --jira email@example.com password123
|
9
|
+
caperoma chore "message" "3h 20m"
|
10
|
+
````
|
4
11
|
|
5
12
|
== Contributing to caperoma
|
6
|
-
|
13
|
+
|
7
14
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
8
15
|
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
|
9
16
|
* Fork the project.
|
data/Rakefile
CHANGED
@@ -6,7 +6,7 @@ begin
|
|
6
6
|
Bundler.setup(:default, :development)
|
7
7
|
rescue Bundler::BundlerError => e
|
8
8
|
$stderr.puts e.message
|
9
|
-
$stderr.puts
|
9
|
+
$stderr.puts 'Run `bundle install` to install missing gems'
|
10
10
|
exit e.status_code
|
11
11
|
end
|
12
12
|
require 'rake'
|
@@ -14,39 +14,39 @@ require 'rake'
|
|
14
14
|
require 'jeweler'
|
15
15
|
Jeweler::Tasks.new do |gem|
|
16
16
|
# gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
|
17
|
-
gem.name =
|
18
|
-
gem.homepage =
|
19
|
-
gem.license =
|
17
|
+
gem.name = 'caperoma'
|
18
|
+
gem.homepage = 'http://github.com/zoopyserg/caperoma'
|
19
|
+
gem.license = 'MIT'
|
20
20
|
gem.summary = %Q{Optimize Jira-Pivotal-Git workflow}
|
21
21
|
gem.description = %Q{Optimize trivial things I do a lot every day: log time to Jira, start/finish tasks in Pivotal etc.}
|
22
|
-
gem.email =
|
23
|
-
gem.authors = [
|
22
|
+
gem.email = 'serge@railsmuffin.com'
|
23
|
+
gem.authors = ['Serge Vinogradoff']
|
24
24
|
# dependencies defined in Gemfile
|
25
25
|
gem.executables = ['caperoma']
|
26
26
|
end
|
27
27
|
Jeweler::RubygemsDotOrgTasks.new
|
28
28
|
|
29
|
-
require '
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
test.verbose = true
|
29
|
+
require 'rspec/core'
|
30
|
+
require 'rspec/core/rake_task'
|
31
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
32
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
34
33
|
end
|
35
34
|
|
36
|
-
desc
|
35
|
+
desc 'Code coverage detail'
|
37
36
|
task :simplecov do
|
38
|
-
ENV['COVERAGE'] =
|
39
|
-
Rake::Task['
|
37
|
+
ENV['COVERAGE'] = 'true'
|
38
|
+
Rake::Task['spec'].execute
|
40
39
|
end
|
41
40
|
|
42
|
-
task :default => :
|
41
|
+
task :default => :spec
|
43
42
|
|
44
43
|
require 'rdoc/task'
|
45
44
|
Rake::RDocTask.new do |rdoc|
|
46
|
-
version = File.exist?('VERSION') ? File.read('VERSION') :
|
45
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ''
|
47
46
|
|
48
47
|
rdoc.rdoc_dir = 'rdoc'
|
49
48
|
rdoc.title = "caperoma #{version}"
|
50
49
|
rdoc.rdoc_files.include('README*')
|
51
50
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
52
51
|
end
|
52
|
+
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0
|
1
|
+
0.1.0
|
data/bin/caperoma
CHANGED
@@ -1,4 +1,18 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
require 'caperoma'
|
4
|
-
|
4
|
+
|
5
|
+
action = ARGV[0]
|
6
|
+
|
7
|
+
if action == 'chore'
|
8
|
+
# parameter is a message
|
9
|
+
# time_spent is like "3h 20m"
|
10
|
+
Caperoma.chore(ARGV)
|
11
|
+
elsif action == 'config'
|
12
|
+
Caperoma.config(ARGV)
|
13
|
+
elsif action == 'test'
|
14
|
+
Caperoma.test
|
15
|
+
else
|
16
|
+
puts 'unknown command'
|
17
|
+
end
|
18
|
+
|
data/caperoma.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: caperoma 0.0
|
5
|
+
# stub: caperoma 0.1.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "caperoma"
|
9
|
-
s.version = "0.0
|
9
|
+
s.version = "0.1.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["Serge Vinogradoff"]
|
14
|
-
s.date = "2014-07-
|
14
|
+
s.date = "2014-07-20"
|
15
15
|
s.description = "Optimize trivial things I do a lot every day: log time to Jira, start/finish tasks in Pivotal etc."
|
16
16
|
s.email = "serge@railsmuffin.com"
|
17
17
|
s.executables = ["caperoma"]
|
@@ -30,8 +30,13 @@ Gem::Specification.new do |s|
|
|
30
30
|
"bin/caperoma",
|
31
31
|
"caperoma.gemspec",
|
32
32
|
"lib/caperoma.rb",
|
33
|
-
"
|
34
|
-
"
|
33
|
+
"lib/caperoma/credentials.rb",
|
34
|
+
"lib/caperoma/jira_client.rb",
|
35
|
+
"spec/caperoma/credentials_spec.rb",
|
36
|
+
"spec/caperoma/jira_spec.rb",
|
37
|
+
"spec/caperoma_spec.rb",
|
38
|
+
"spec/spec_helper.rb",
|
39
|
+
"spec/support/stubs.rb"
|
35
40
|
]
|
36
41
|
s.homepage = "http://github.com/zoopyserg/caperoma"
|
37
42
|
s.licenses = ["MIT"]
|
@@ -42,24 +47,30 @@ Gem::Specification.new do |s|
|
|
42
47
|
s.specification_version = 4
|
43
48
|
|
44
49
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
50
|
+
s.add_runtime_dependency(%q<jira-ruby>, [">= 0"])
|
45
51
|
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
46
52
|
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
47
53
|
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
48
54
|
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
49
55
|
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
56
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
50
57
|
else
|
58
|
+
s.add_dependency(%q<jira-ruby>, [">= 0"])
|
51
59
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
52
60
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
53
61
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
54
62
|
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
55
63
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
64
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
56
65
|
end
|
57
66
|
else
|
67
|
+
s.add_dependency(%q<jira-ruby>, [">= 0"])
|
58
68
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
59
69
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
60
70
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
61
71
|
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
62
72
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
73
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
63
74
|
end
|
64
75
|
end
|
65
76
|
|
data/lib/caperoma.rb
CHANGED
@@ -1,6 +1,18 @@
|
|
1
|
+
require 'sdbm'
|
2
|
+
|
1
3
|
class Caperoma
|
2
|
-
def self.
|
4
|
+
def self.chore(args = [])
|
5
|
+
JiraClient.new.create_chore(args)
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.config(args = [])
|
9
|
+
Credentials.write(args)
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.test
|
3
13
|
puts 'works'
|
4
|
-
puts test
|
5
14
|
end
|
15
|
+
|
16
|
+
require 'caperoma/jira_client'
|
17
|
+
require 'caperoma/credentials'
|
6
18
|
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'jira'
|
2
|
+
|
3
|
+
class JiraClient
|
4
|
+
def initialize
|
5
|
+
@client ||= JIRA::Client.new(credentials)
|
6
|
+
end
|
7
|
+
|
8
|
+
def create_chore(args)
|
9
|
+
# issue = client.Issue.build
|
10
|
+
# params = chore_params(args[1], args[2])
|
11
|
+
# issue.save(params)
|
12
|
+
# issue.fetch
|
13
|
+
# issue.fields['key'] # =>"RUC-1037"
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
def client(email, password)
|
18
|
+
JIRA::Client.new(sign_in_params)
|
19
|
+
end
|
20
|
+
|
21
|
+
def project
|
22
|
+
@client.Project.all.find{|proj| proj.name =~ /Ruck.us/ }
|
23
|
+
end
|
24
|
+
|
25
|
+
def chore_params(message, time_spent)
|
26
|
+
{
|
27
|
+
"update" => {
|
28
|
+
"worklog" => [{
|
29
|
+
"add" => {
|
30
|
+
"started" => "2011-07-05T11:05:00.000+0000",
|
31
|
+
"timeSpent" => "62m"
|
32
|
+
}
|
33
|
+
}]
|
34
|
+
},
|
35
|
+
"fields" => {
|
36
|
+
"summary"=>"test message",
|
37
|
+
"description"=>"test description",
|
38
|
+
"project"=> { "id" => "#{project.id}" },
|
39
|
+
"issuetype" => { "id"=>"9" }
|
40
|
+
}
|
41
|
+
# and it should close the issue too
|
42
|
+
}
|
43
|
+
end
|
44
|
+
|
45
|
+
def credentials
|
46
|
+
credentials = Credentials.read
|
47
|
+
|
48
|
+
{
|
49
|
+
username: credentials[:email],
|
50
|
+
password: credentials[:password],
|
51
|
+
site: 'https://cubuss.atlassian.net/',
|
52
|
+
context_path: '',
|
53
|
+
auth_type: :basic,
|
54
|
+
use_ssl: true
|
55
|
+
}
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe 'Caperoma::Credentials', :expect_db_write do
|
4
|
+
specify '#write' do
|
5
|
+
expect_any_instance_of(SDBM).to receive(:store).with('email', 'email@example.com')
|
6
|
+
expect_any_instance_of(SDBM).to receive(:store).with('password', 'secret123')
|
7
|
+
|
8
|
+
Credentials.write(['config', '--jira', 'email@example.com', 'secret123'])
|
9
|
+
end
|
10
|
+
|
11
|
+
describe '#read' do
|
12
|
+
context 'data present' do
|
13
|
+
let(:expected_result) { { email: 'email@example.com', password: 'secret123' } }
|
14
|
+
|
15
|
+
it 'should output credentials hash' do
|
16
|
+
expect_any_instance_of(SDBM).to receive(:to_hash).and_return expected_result
|
17
|
+
|
18
|
+
expect(Credentials.read).to eq expected_result
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context 'data is not present', :pending do
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe 'JiraClient' do
|
4
|
+
describe 'initialize' do
|
5
|
+
let!(:credentials) do
|
6
|
+
{
|
7
|
+
username: 'test@example.com',
|
8
|
+
password: 'secret123',
|
9
|
+
site: 'https://cubuss.atlassian.net/',
|
10
|
+
context_path: '',
|
11
|
+
auth_type: :basic,
|
12
|
+
use_ssl: true
|
13
|
+
}
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should sign in' do
|
17
|
+
expected_credentials = { email: 'test@example.com', password: 'secret123' }
|
18
|
+
allow(Credentials).to receive(:read).and_return expected_credentials
|
19
|
+
expect(JIRA::Client).to receive(:new).with(credentials)
|
20
|
+
|
21
|
+
JiraClient.new
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
describe '#find_project' do
|
26
|
+
it 'should find project Ruck.us' do
|
27
|
+
# expect_any_instance_of(JIRA::Client).to receive_message_chain(:Project, :all).and_return JIRA::Project.build
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#chore' do
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
describe 'Caperoma' do
|
4
|
+
describe '#chore' do
|
5
|
+
it 'triggers chore creation' do
|
6
|
+
expect_any_instance_of(JiraClient).to receive(:create_chore).with([1, 2])
|
7
|
+
Caperoma.chore([1, 2])
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
describe '#config' do
|
12
|
+
it 'saves jira email/password' do
|
13
|
+
expect(Credentials).to receive(:write).with('args')
|
14
|
+
|
15
|
+
Caperoma.config('args')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe '#test' do
|
20
|
+
it 'outputs msg' do
|
21
|
+
expect(STDOUT).to receive(:puts).with('works')
|
22
|
+
Caperoma.test
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -14,21 +14,17 @@ end
|
|
14
14
|
ENV["COVERAGE"] && SimpleCov.start do
|
15
15
|
add_filter "/.rvm/"
|
16
16
|
end
|
17
|
-
require 'rubygems'
|
18
|
-
require 'bundler'
|
19
|
-
begin
|
20
|
-
Bundler.setup(:default, :development)
|
21
|
-
rescue Bundler::BundlerError => e
|
22
|
-
$stderr.puts e.message
|
23
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
24
|
-
exit e.status_code
|
25
|
-
end
|
26
|
-
require 'test/unit'
|
27
|
-
require 'shoulda'
|
28
|
-
|
29
17
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
30
18
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
19
|
+
|
20
|
+
require 'rspec'
|
31
21
|
require 'caperoma'
|
32
22
|
|
33
|
-
|
23
|
+
# Requires supporting files with custom matchers and macros, etc,
|
24
|
+
# in ./support/ and its subdirectories.
|
25
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
26
|
+
|
27
|
+
RSpec.configure do |config|
|
28
|
+
config.color = true
|
29
|
+
config.tty = true
|
34
30
|
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
RSpec.configure do |config|
|
2
|
+
config.before do |example|
|
3
|
+
if example.metadata[:expect_db_write].nil?
|
4
|
+
allow(SDBM).to receive(:open).with('jira_credentials').and_return SDBM.open 'test'
|
5
|
+
else
|
6
|
+
expect(SDBM).to receive(:open).with('jira_credentials').and_return SDBM.open 'test'
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caperoma
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Serge Vinogradoff
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-07-
|
11
|
+
date: 2014-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: jira-ruby
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: shoulda
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,6 +94,20 @@ dependencies:
|
|
80
94
|
- - ">="
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rspec
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
83
111
|
description: 'Optimize trivial things I do a lot every day: log time to Jira, start/finish
|
84
112
|
tasks in Pivotal etc.'
|
85
113
|
email: serge@railsmuffin.com
|
@@ -100,8 +128,13 @@ files:
|
|
100
128
|
- bin/caperoma
|
101
129
|
- caperoma.gemspec
|
102
130
|
- lib/caperoma.rb
|
103
|
-
-
|
104
|
-
-
|
131
|
+
- lib/caperoma/credentials.rb
|
132
|
+
- lib/caperoma/jira_client.rb
|
133
|
+
- spec/caperoma/credentials_spec.rb
|
134
|
+
- spec/caperoma/jira_spec.rb
|
135
|
+
- spec/caperoma_spec.rb
|
136
|
+
- spec/spec_helper.rb
|
137
|
+
- spec/support/stubs.rb
|
105
138
|
homepage: http://github.com/zoopyserg/caperoma
|
106
139
|
licenses:
|
107
140
|
- MIT
|