instance_tracker 0.1.2 → 0.1.3

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
- N2ZkNjc1YzUwMGE1MGRhMGUxMmFkZDExYzk3NDY2MGU3YjU0ODVhYw==
4
+ YjBjNjAwNTcyOTdjMTQ4ODE0MTQ5ZTU3YzEwN2M3ZWNjYWQ4YWQwYQ==
5
5
  data.tar.gz: !binary |-
6
- ZDUzNmI5ODZhNzZkZTk5YTUxZDBhYTdiYmE5ZjJmMDA2ZDYwZGExOA==
6
+ YjUyNWVlOWI1ZThlMzE2MTQ5OTNjMWVhMDkzYzNmMWY4M2ViM2RhZQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NzVhNmNlYjY3ZmI1ZjMxYWI1ZWVkMTgxMzQzNjE5ZDNjMTJiMTZjZmU4MGJm
10
- MzliNTM3ZTFlZTZhZjRjNjIwZTJlY2VkZGNjNDRhMjg1MzRmMjNjMjcxZjgw
11
- NWVhNjViODc1NjRiZjZlNTBhZTE1YzEwMzIxNWI1NTlkNTZlM2Q=
9
+ NjlkOTg4MTFmZTljMTJkODMxYTE1MzVhMjIxYWI3YWY4MDBmYTk2YTc3MTY3
10
+ Y2NkZjg5YzMwOWYwNjIzZmZkMzBiMjZmOTYwN2Q2YWExYzE1NTA5NjhlODdi
11
+ MjZjNGYxMjZmOTcxMzI0NTBkMzFmMTc3ZWYyOGE2MjY1OGZhN2I=
12
12
  data.tar.gz: !binary |-
13
- Mzc4M2I3ZjkyNzcwYzZhN2EwYWE4M2EzYzI4YjkyNzg5MmU2MDIzMTVhZGQ2
14
- NTc3NzE5OGZlMDZiYzIwMGU2ZDhiZmM2ZTM1YWY5NzVmZmQ0MjNhNzIxZjAx
15
- ODRjYmViMjVhNTAyYWE3MzdhZGUwNTBiZjI2NDI5MGE2OTQ4ODU=
13
+ ZGIxNmY0MGVjYWVlYjQyYmJjZmQ1YzdmNmI5NjBhZjFjMGI0NDdiNjk5MGI0
14
+ ODg3ZDQ1ZGMwOGRmNzkxMTgxNjE1MWRkZTI4Y2MyYmY3YmI1ZGFjNjdmYjQ0
15
+ MTkyM2VjNTg2NWZkYjFlMWNkMTY2MzljMmZmMmJiZjRiN2UzNzE=
data/README.md CHANGED
@@ -19,46 +19,24 @@ Or install it yourself as:
19
19
  ## API Summary
20
20
 
21
21
  Start by including `InstanceTracker::Trackable` within classes in which
22
- you want to track an instance variable. This should occur after the
23
- call to `initialize`.
22
+ you want to track an instance variable; this provides the class
23
+ a `track` class method which allows you to define which instance
24
+ variable to track.
24
25
 
25
26
  ```ruby
26
27
  class Foo
27
- def initialize(wrapper)
28
- @wrapper = wrapper
29
- end
30
-
31
28
  include InstanceTracker::Trackable
32
29
  track :wrapper
33
- end
34
- ```
35
-
36
- This provides the class a `track` class method which allows you to define which
37
- instance variable to track.
38
-
39
-
40
- You are now able to access the `wrapper` by simply calling
41
- `trackable_instance` from any instance of your class.
42
30
 
43
- The included class can also override `after_initialize` (implemented as
44
- a simple interface within `InstanceTracker::Trackable`) which will be
45
- called as soon as the included class is instantiated.
46
-
47
- ```ruby
48
- class Foo
49
31
  def initialize(wrapper)
50
32
  @wrapper = wrapper
51
33
  end
52
-
53
- def after_initialize
54
- trackable_instance.meaning_of_life = "42"
55
- end
56
-
57
- include InstanceTracker::Trackable
58
- track :wrapper
59
34
  end
60
35
  ```
61
36
 
37
+ You are now able to access the `wrapper` by simply calling
38
+ `trackable_instance` from any instance of your class.
39
+
62
40
  ## Contributing
63
41
 
64
42
  1. Fork it
@@ -19,22 +19,6 @@ module InstanceTracker
19
19
 
20
20
  def included _klass
21
21
  _klass.class_eval do
22
- alias_method :initialize_old, :initialize
23
- alias_method :after_initialize_old, :after_initialize if method_defined? "after_initialize"
24
-
25
- def initialize
26
- initialize_old
27
- after_initialize
28
- end
29
-
30
- if method_defined? "after_initialize"
31
- def after_initialize
32
- after_initialize_old
33
- end
34
- else
35
- def after_initialize; end
36
- end
37
-
38
22
  include InstanceMethods
39
23
  extend ClassMethods
40
24
  end
@@ -1,3 +1,3 @@
1
1
  module InstanceTracker
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
@@ -5,13 +5,12 @@ module InstanceTracker
5
5
  describe Trackable do
6
6
 
7
7
  class SpecHarness
8
+ include InstanceTracker::Trackable
9
+ track :context
8
10
 
9
11
  def initialize
10
12
  @context = "Foo"
11
13
  end
12
-
13
- include InstanceTracker::Trackable
14
- track :context
15
14
  end
16
15
 
17
16
  let(:subject) { SpecHarness.new }
@@ -21,23 +20,5 @@ module InstanceTracker
21
20
  expect(subject.trackable_instance).to eq("Foo")
22
21
  end
23
22
 
24
- it "should already implement `#after_initialize` to return nil" do
25
- expect(subject.after_initialize).to be_nil
26
- end
27
-
28
- context "when `#after_initialize` is overriden" do
29
-
30
- it "should call the overriden implementation of `#after_initialize`" do
31
- SpecHarness.class_eval do
32
- def after_initialize
33
- true
34
- end
35
- end
36
-
37
- expect(subject.after_initialize).to be
38
- end
39
-
40
- end
41
-
42
23
  end
43
24
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: instance_tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael de Silva
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-04 00:00:00.000000000 Z
11
+ date: 2013-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler