defekt 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f3db55a80b9ac8e6bc24783e9032d938ab9ce647
4
- data.tar.gz: 25e23d803bd42143a167bd091d1a4c3c88329472
3
+ metadata.gz: 46ee818b3b74ea6f9d3f5f9240bf885f05852b75
4
+ data.tar.gz: 184b941d229c41507ddf3abba48727698d27ae4f
5
5
  SHA512:
6
- metadata.gz: 623fe19b659bb0c4eb5de2a5a8396d3a39e2084afa37e55ecbe1777b7925ca2cc1cebbafd99c2a2c8d6bc5b45cf1adbb293d1bcaf7e95eb847963adc039eefac
7
- data.tar.gz: d1a771201173ca1ebbd50cfd1ff50e5d6220b80004bec62b98099fcb153bb11691c04d9eb72c1c79691e81ef929dc1f97f22047d118b99917c06e891730f860f
6
+ metadata.gz: 8ad4411f28a0923b6a6a464773c97910e509762928152cc0a92c9374f1e1492d46ca40c1aab4e9d1b7004907afce01d1a8e41d5e8a35bf3e4b2e2e3fc095993c
7
+ data.tar.gz: dc810d616d57487c838a13a178665d76628a3f392f2ec199ce8c855a3d3e6f4648e179ba8a089d066b2282101f1092a5558de4a7ea871ed7773aab6e3a7df041
@@ -2,4 +2,4 @@ language: ruby
2
2
  rvm:
3
3
  - 1.9.3
4
4
  - 2.2.1
5
- before_install: gem install bundler -v 1.9.2
5
+ before_install: gem install bundler -v 1.9.4
data/README.md CHANGED
@@ -23,7 +23,7 @@ Or install it yourself as:
23
23
 
24
24
  ## Usage
25
25
 
26
- Inherit your test classes from `Defekt::Base` and define your tests prefixed with `test_`. You can define `before` and `after` methods, which are invoked around each test. By requiring `defekt/autorun` your tests are automatically run.
26
+ Inherit your test classes from `Defekt::Base` and use the `test` method to define your tests. You can use the `before` and `after` methods to specify context blocks, which are yielded around each test. By requiring `defekt/autorun` your tests are automatically run.
27
27
 
28
28
  ```ruby
29
29
  require 'defekt/autorun'
@@ -37,15 +37,13 @@ class Person
37
37
  end
38
38
 
39
39
  class PersonTest < Defekt::Base
40
- def before
41
- @person = Person.new('kodnin')
42
- end
40
+ before { @person = Person.new('kodnin') }
43
41
 
44
- def test_initialize
42
+ test '#initialize' do
45
43
  instance_of! Person, @person
46
44
  end
47
45
 
48
- def test_name
46
+ test '#name' do
49
47
  equal_to! 'kodnin', @person.name
50
48
  end
51
49
  end
@@ -94,18 +92,16 @@ class Hacker
94
92
  end
95
93
 
96
94
  class HackerTest < Defekt::Base
97
- def before
98
- @hacker = Hacker.new
99
- end
95
+ before { @hacker = Hacker.new }
100
96
 
101
- def test_mock
97
+ test 'mock' do
102
98
  mock = Defekt::Mock.new
103
99
  mock.expect(:name, 'kodnin')
104
100
  equal_to! 'kodnin', @hacker.identity(mock)
105
101
  verify! mock
106
102
  end
107
103
 
108
- def test_stub
104
+ test 'stub' do
109
105
  not_respond_to! @hacker, :password
110
106
  @hacker.stub(:password, 'nindok') do
111
107
  respond_to! @hacker, :password
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.required_ruby_version = '>= 1.9.3'
23
23
 
24
24
  spec.add_development_dependency 'bundler', '~> 1.9'
25
- spec.add_development_dependency 'rake', '~> 10.0'
26
- spec.add_development_dependency 'minitest', '~> 5.5'
25
+ spec.add_development_dependency 'rake', '~> 10.4'
26
+ spec.add_development_dependency 'minitest', '~> 5.6'
27
27
  spec.add_development_dependency 'pry', '~> 0.10'
28
28
  end
@@ -2,7 +2,18 @@ module Defekt
2
2
  class Base
3
3
  include Assertions
4
4
 
5
- [:before, :after].each { |methot| define_method(methot) {} }
5
+ def self.before(&block)
6
+ define_method(:before, &block)
7
+ end
8
+
9
+ def self.after(&block)
10
+ define_method(:after, &block)
11
+ end
12
+
13
+ def self.test(name, &block)
14
+ safe_name = "test_#{name.gsub(/\s+/, '_')}".to_sym
15
+ define_method(safe_name, &block)
16
+ end
6
17
 
7
18
  def self.children
8
19
  @children ||= []
@@ -14,14 +14,14 @@ module Defekt
14
14
  @ran = true
15
15
 
16
16
  begin
17
- instance.before
17
+ instance.before if instance.respond_to?(:before)
18
18
  methot.bind(instance).call
19
19
  '.'
20
20
  rescue => e
21
21
  @error = e
22
22
  status.chars.first
23
23
  ensure
24
- instance.after
24
+ instance.after if instance.respond_to?(:after)
25
25
  end
26
26
  end
27
27
 
@@ -1,3 +1,3 @@
1
1
  module Defekt
2
- VERSION = '0.0.6'
2
+ VERSION = '0.0.7'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: defekt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Boot
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-04-04 00:00:00.000000000 Z
11
+ date: 2015-04-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,28 +30,28 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '10.4'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '10.4'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: minitest
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '5.5'
47
+ version: '5.6'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '5.5'
54
+ version: '5.6'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry
57
57
  requirement: !ruby/object:Gem::Requirement