take_care 0.0.4 → 0.0.5

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,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