crispy 0.3.1 → 0.3.2

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,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f0ba38b20d7b6e7700337f66b764927162119554
4
- data.tar.gz: 010fb0e6c5a5ca038d34233e183765d48e0ba4fd
3
+ metadata.gz: aeabc7281ef6034dc9561bf66275b5a96646ec7e
4
+ data.tar.gz: 0d59f9c8a70531346cfc064724520b0703511d7f
5
5
  SHA512:
6
- metadata.gz: 998646e708b914e987754ac308f65fd941f832f3ca0859dff0232651f195dabca73075bf66e2d3b875bc80741665053910b262ff2e5ba111a09d7b5ba7013992
7
- data.tar.gz: 7e00aba14ee6804286283d024e8a568e40d01ba0eb2df9bcc7c11c0267247a3071281b7667bc5d350e561803d24b95a0744934d358d5ca3e541504e978b2b20f
6
+ metadata.gz: 10e249a572a5a3ac6e17aaf6a0bc537472467157a788c7a1fb1f3014764f6266fb1ac32ea453a6ecebe4284372302833680ab07ee94248ca54e60357b9b55f82
7
+ data.tar.gz: 65fcd4b0434c4ca977a47439864cabf6133fa3a7e29d26494cd464cfadafdbafec6ee8136b8a8fb8545faeb297766dbc0e3150935911aaeace032a7ce23cd6fa
data/.travis.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  language: ruby
2
2
  install:
3
3
  - gem install bundler
4
- - bundle
4
+ - CODECLIMATE_REPO_TOKEN=fe75ea4329c1e131ef79de66f8ba2f605fa2fd352bbbd61fed5024cb6eaaba73 bundle
5
5
  rvm:
6
6
  - ruby-head
7
7
  - 2.2.0
data/ChangeLog.md CHANGED
@@ -1,3 +1,9 @@
1
+ # 0.3.2 (2015.1.11)
2
+
3
+ - New Feature: `spied_instances?`. [#28](https://github.com/igrep/crispy/pull/28)
4
+ - Enhancement only for developers of crispy: reduce the number of gems we install by `bundle install`.
5
+ - Refactor: minor changes. [`701a051`](https://github.com/igrep/crispy/commit/701a051d3910e8b9f0470c0f3e9cb81ed643f8af)
6
+
1
7
  # 0.3.1 (2015.1.3)
2
8
 
3
9
  - Enhancement: Forget every spy log and reset every stubbed method by resetting. [#25](https://github.com/igrep/crispy/pull/25)
data/Gemfile CHANGED
@@ -3,4 +3,4 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's dependencies in crispy.gemspec
4
4
  gemspec
5
5
 
6
- gem 'codeclimate-test-reporter', group: :test, require: nil
6
+ gem 'codeclimate-test-reporter', require: nil if ENV['CODECLIMATE_REPO_TOKEN']
data/crispy.gemspec CHANGED
@@ -5,7 +5,7 @@ require 'crispy/version'
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "crispy"
7
7
  spec.version = Crispy::VERSION
8
- spec.authors = ["Yamamoto Yuji"]
8
+ spec.authors = ["Yuji Yamamoto"]
9
9
  spec.email = ["whosekiteneverfly@gmail.com"]
10
10
  spec.summary = %q{Test spy for any object.}
11
11
  spec.description =
@@ -23,8 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency "bundler", "~> 1.7"
24
24
  spec.add_development_dependency "rake"
25
25
  spec.add_development_dependency "minitest", "~> 5"
26
- spec.add_development_dependency "pry"
27
- spec.add_development_dependency "byebug"
28
26
  spec.add_development_dependency "rubydoctest"
29
27
 
30
28
  spec.required_ruby_version = '>= 2.0'
@@ -134,15 +134,17 @@ module Crispy
134
134
  def prepend_features klass
135
135
  super
136
136
 
137
- klass.public_instance_methods.each do|method_name|
138
- next if method_name == :__CRISPY_SPY__
139
- self.module_eval { define_wrapper(method_name) }
140
- end
141
- klass.protected_instance_methods.each do|method_name|
142
- self.module_eval { protected define_wrapper(method_name) }
143
- end
144
- klass.private_instance_methods.each do|method_name|
145
- self.module_eval { private define_wrapper(method_name) }
137
+ self.module_eval do
138
+ klass.public_instance_methods.each do|method_name|
139
+ next if method_name == :__CRISPY_SPY__
140
+ define_wrapper(method_name)
141
+ end
142
+ klass.protected_instance_methods.each do|method_name|
143
+ protected define_wrapper(method_name)
144
+ end
145
+ klass.private_instance_methods.each do|method_name|
146
+ private define_wrapper(method_name)
147
+ end
146
148
  end
147
149
  end
148
150
  private :prepend_features
@@ -1,3 +1,3 @@
1
1
  module Crispy
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
data/lib/crispy.rb CHANGED
@@ -39,4 +39,8 @@ module Crispy
39
39
  defined? object.__CRISPY_SPY__
40
40
  end
41
41
 
42
+ def spied_instances? klass
43
+ !!::Crispy::CrispyInternal::ClassSpy.of_target(klass)
44
+ end
45
+
42
46
  end
data/test/test_crispy.rb CHANGED
@@ -1,7 +1,8 @@
1
+ require_relative 'test_helper'
2
+
1
3
  $VERBOSE = true # enable warnings
2
4
 
3
5
  require 'crispy'
4
- require_relative 'test_helper'
5
6
  require 'minitest/autorun'
6
7
 
7
8
  class TestCrispy < MiniTest::Test
@@ -92,6 +93,20 @@ class TestCrispy < MiniTest::Test
92
93
 
93
94
  end
94
95
 
96
+ class TestCrispySpiedInstances < TestCrispy
97
+
98
+ def test_spied_instances_class_is_spied_instances
99
+ klass = Class.new
100
+ spy_into_instances klass
101
+ assert spied_instances?(klass)
102
+ end
103
+
104
+ def test_non_spied_instances_class_is_not_spied_instances
105
+ assert not(spied_instances?(Class.new))
106
+ end
107
+
108
+ end
109
+
95
110
  class TestCrispyStubConst < TestCrispy
96
111
 
97
112
  def setup
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crispy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
- - Yamamoto Yuji
7
+ - Yuji Yamamoto
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-03 00:00:00.000000000 Z
11
+ date: 2015-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -52,34 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '5'
55
- - !ruby/object:Gem::Dependency
56
- name: pry
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: byebug
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
55
  - !ruby/object:Gem::Dependency
84
56
  name: rubydoctest
85
57
  requirement: !ruby/object:Gem::Requirement