take_care 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YTY1ZjQyYjYxYmJkN2NiOGM0YzZmOGNjYWIzOGRmZDRhZjY2ZTFiYQ==
4
+ NTcxMWY1MzU3NDZhMGVhNTZiNGFhZWVlMmU0NGUwMWEyMDU1NTE4NQ==
5
5
  data.tar.gz: !binary |-
6
- OGVkMWJhNTY5YTM5YTE0MTkzNjBlZTQ3YjY4YjMxYjliN2I2ZWJlNw==
6
+ N2E4NTIyYzU0MTY1MjEyY2Y3ZWQyZWFmMmE2NTE2ZGZlZmU1MTJmNQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZjQ3Y2Q2ODM0MmU1MDM0MTMzYzU4NzRiNjRjNWZlZTYzMWUyNjU5N2ZiZDdl
10
- MGI2ZjgzOWNjNTBmOTkwZGQ5YzdlMGUxODRjZWVlMGYxYjUwMjJkZWVkMjA5
11
- ZDhjMzRjNDY5ZjFlMjE1NWMyNGI0OTMyZDY1NWQ4YmNkZDE4NDA=
9
+ YjU3ZWNlMGQ2MWYzMjcwOTNkYjk4Njk0ZTVkYjZlZTZjMzA1N2M0MDJiMDFh
10
+ N2UwMjczY2YyZDc1OWU4NWExMmJlZDBjMzZlMWNmMDYyYTlhOTY4NWU3YTUy
11
+ YmJiMDMyZTM3NGE3MzY3ZmU5Mzc5YzEwNzg0MzBjY2ZjZDBlYjQ=
12
12
  data.tar.gz: !binary |-
13
- NGQ1MDM3M2VhZmFmMjJiOWJjMWI5YTNkOTU0MjgzMzAzMmE3ZjdlZDU3ZWI0
14
- Yzg1ZjIyZGVkY2IzMWI0MzBkY2FmMGIxODVlZGUyMDhhYmViMjBlYjg2NWY4
15
- ZDJlYWYwYmY5MjM1OTdlNTI2ZWJkZTU0NmE0NGQ1YmY4Y2Q3MTQ=
13
+ ZmI0ODE0MjI1Y2UwNTM2Yzc1ZTIzYTc4NGE5NDRjZjJkYjI4ZWJiZGI0ZmRi
14
+ MGYzZGE2Y2ZiNjcxMDM0YzBhMWY1ODQ3M2I3NmE4NjM3MTJkMGRlOWU0Mzc0
15
+ MTgxZjM5OTQ4MThhOWU0MjE4ZDY0OGRhOTgwOWZkMjE1NDA2YmM=
data/.coveralls.yml ADDED
@@ -0,0 +1,2 @@
1
+ service_name: travis-pro
2
+ repo_token: y7yI8vCWax6UNZECHB88T0geHfaIj7z4k
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 2.0.0
data/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # TakeCare
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/take_care.png)](http://badge.fury.io/rb/take_care)
4
+ [![Build Status](https://travis-ci.org/shhavel/take_care.png?branch=master)](https://travis-ci.org/shhavel/take_care)
5
+ [![Dependency Status](https://gemnasium.com/shhavel/take_care.png)](https://gemnasium.com/shhavel/take_care)
6
+ [![Code Climate](https://codeclimate.com/github/shhavel/take_care.png)](https://codeclimate.com/github/shhavel/take_care)
7
+ [![Coverage Status](https://coveralls.io/repos/shhavel/take_care/badge.png)](https://coveralls.io/r/shhavel/take_care)
8
+
3
9
  Sidekiq wrapper for activerecord model (or any class which instances are fetched by #id)
4
10
 
5
11
  Method #take_care(method, *args) that delegates actual performing of own method to sidekiq
data/Rakefile CHANGED
@@ -1 +1,8 @@
1
1
  require "bundler/gem_tasks"
2
+
3
+ require "rspec/core/rake_task"
4
+ RSpec::Core::RakeTask.new do |t|
5
+ t.rspec_opts = ["-c", "-f documentation", "-r ./spec/spec_helper.rb"]
6
+ t.pattern = 'spec/**/*_spec.rb'
7
+ end
8
+ task default: :spec
@@ -0,0 +1,10 @@
1
+ module TakeCare
2
+ module Reliable
3
+ module RespondTo
4
+ def respond_to?(method_name, include_private = false)
5
+ return include_private if self.private_methods.include?(method_name)
6
+ /\Atake_care_(?:of_)?(.+)\Z/ =~ method_name && self.respond_to?($1) || super
7
+ end
8
+ end
9
+ end
10
+ end
@@ -1,19 +1,17 @@
1
+ require "take_care/reliable/respond_to"
2
+
1
3
  module TakeCare
2
4
  module Reliable
3
5
  extend ActiveSupport::Concern
6
+ include TakeCare::Reliable::RespondTo
4
7
 
5
8
  def take_care(method_name, *args)
6
9
  TakeCare::Worker.perform_async(self.class.to_s, self.id, method_name, *args)
7
10
  end
8
11
  alias_method :take_care_of, :take_care
9
12
 
10
- def respond_to?(method_name, include_private = false)
11
- return include_private if self.class.private_method_defined?(method_name)
12
- /\Atake_care_(?:of_)?(.+)\Z/ =~ method_name && self.respond_to?($1) || super
13
- end
14
-
15
13
  def method_missing(method_name, *args, &block)
16
- if self.class.private_method_defined?(method_name)
14
+ if self.private_methods.include?(method_name)
17
15
  raise NoMethodError, "private method `#{method_name}' called for #{self}"
18
16
  end
19
17
  return super unless /\Atake_care_(?:of_)?(.+)\Z/ =~ method_name && self.respond_to?($1)
@@ -24,18 +22,15 @@ module TakeCare
24
22
  end
25
23
 
26
24
  module ClassMethods
25
+ include TakeCare::Reliable::RespondTo
26
+
27
27
  def take_care(method_name, *args)
28
28
  TakeCare::WorkerC.perform_async(self.to_s, method_name, *args)
29
29
  end
30
30
  alias_method :take_care_of, :take_care
31
31
 
32
- def respond_to?(method_name, include_private = false)
33
- return include_private if self.class.private_method_defined?(method_name)
34
- /\Atake_care_(?:of_)?(.+)\Z/ =~ method_name && self.respond_to?($1) || super
35
- end
36
-
37
32
  def method_missing(method_name, *args, &block)
38
- if self.class.private_method_defined?(method_name)
33
+ if self.private_methods.include?(method_name)
39
34
  raise NoMethodError, "private method `#{method_name}' called for #{self}"
40
35
  end
41
36
  return super unless /\Atake_care_(?:of_)?(.+)\Z/ =~ method_name && self.respond_to?($1)
@@ -1,3 +1,3 @@
1
1
  module TakeCare
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
data/lib/take_care.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "take_care/version"
2
2
  require "take_care/worker"
3
3
  require "take_care/worker_c"
4
+ require "take_care/reliable/respond_to"
4
5
  require "take_care/reliable"
5
6
 
6
7
  module TakeCare
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,16 @@
1
+ require "simplecov"
2
+ require "coveralls"
3
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
4
+ SimpleCov::Formatter::HTMLFormatter,
5
+ Coveralls::SimpleCov::Formatter
6
+ ]
7
+ SimpleCov.start do
8
+ add_filter "/spec/"
9
+ add_group "Modules", "../lib/take_care/reliable"
10
+ add_group "Workers", "../lib/take_care/worker"
11
+ end
12
+ Coveralls.wear!
13
+
1
14
  require "take_care"
2
15
 
3
16
  Dir["./spec/support/**/*.rb"].sort.each {|f| require f}
@@ -11,6 +11,9 @@ module HumanMacros
11
11
  def hard_work(box1, box2)
12
12
  end
13
13
 
14
+ def hard_work_in_guts(box1, box2)
15
+ end
16
+
14
17
  private
15
18
  def take_care_hard_work_in_guts(box1, box2)
16
19
  end
@@ -19,6 +22,9 @@ module HumanMacros
19
22
  def do_stuff(garbage1, garbage2)
20
23
  end
21
24
 
25
+ def do_stuff_in_guts(garbage1, garbage2)
26
+ end
27
+
22
28
  private
23
29
  def take_care_do_stuff_in_guts(garbage1, garbage2)
24
30
  end
data/take_care.gemspec CHANGED
@@ -23,4 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency "bundler", "~> 1.3"
24
24
  spec.add_development_dependency "rake"
25
25
  spec.add_development_dependency "rspec"
26
+ spec.add_development_dependency "simplecov", ">= 0.8.2"
27
+ spec.add_development_dependency "coveralls", '>= 0.7.0'
26
28
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: take_care
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Avoyants
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-07 00:00:00.000000000 Z
11
+ date: 2014-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sidekiq
@@ -80,6 +80,34 @@ dependencies:
80
80
  - - ! '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: simplecov
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: 0.8.2
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: 0.8.2
97
+ - !ruby/object:Gem::Dependency
98
+ name: coveralls
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ! '>='
102
+ - !ruby/object:Gem::Version
103
+ version: 0.7.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.7.0
83
111
  description: Sidekiq wrapper for activerecord model
84
112
  email:
85
113
  - shhavel@gmail.com
@@ -87,13 +115,16 @@ executables: []
87
115
  extensions: []
88
116
  extra_rdoc_files: []
89
117
  files:
118
+ - .coveralls.yml
90
119
  - .gitignore
120
+ - .travis.yml
91
121
  - Gemfile
92
122
  - LICENSE.txt
93
123
  - README.md
94
124
  - Rakefile
95
125
  - lib/take_care.rb
96
126
  - lib/take_care/reliable.rb
127
+ - lib/take_care/reliable/respond_to.rb
97
128
  - lib/take_care/version.rb
98
129
  - lib/take_care/worker.rb
99
130
  - lib/take_care/worker_c.rb
@@ -123,7 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
154
  version: '0'
124
155
  requirements: []
125
156
  rubyforge_project:
126
- rubygems_version: 2.2.0
157
+ rubygems_version: 2.2.1
127
158
  signing_key:
128
159
  specification_version: 4
129
160
  summary: Sidekiq wrapper for activerecord model (any class which instances fetched