rspecify 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.
- data/README.rdoc +61 -2
- data/bin/rspecify +6 -0
- data/lib/rspecify/version.rb +1 -1
- data/spec/matchers/should_transform_to.rb +2 -1
- data/spec/rspecify/transformer_spec.rb +1 -1
- data/spec/rspecify/transformers/test_class_and_methods_spec.rb +1 -1
- data/spec/rspecify/transformers/test_unit_assertions_spec.rb +1 -1
- metadata +18 -16
data/README.rdoc
CHANGED
@@ -4,6 +4,65 @@ Converting your tests from Test::Unit to RSpec is a drag when done by hand. Thi
|
|
4
4
|
|
5
5
|
== In-Progress
|
6
6
|
|
7
|
-
This gem is not
|
7
|
+
NOTE: This gem is not essentially unusable and is being continually worked on - more of a proof of concept for now.
|
8
|
+
|
9
|
+
== Command-Line Usage
|
10
|
+
|
11
|
+
The gem comes with a thor task that you can use to print out a converted version of any Ruby file containing Test::Unit Code.
|
12
|
+
|
13
|
+
$ rspecify cat test_project.rb
|
14
|
+
|
15
|
+
== API Usage
|
16
|
+
|
17
|
+
This is built on the tree-walking base class RubyTransform::Transformer from the +ruby_transform+ project.
|
18
|
+
The principal transform, which is a composite of other more granular transforms, is +RSpecify::Transformer+.
|
19
|
+
Here's how it can be used in conjunction with +ruby_parser+:
|
20
|
+
|
21
|
+
sexp = RubyParser.new.parse(File.read(path))
|
22
|
+
sexp = RSpecify::Transformer.new.transform(sexp)
|
23
|
+
|
24
|
+
emitter = RubyScribe::Emitter.new
|
25
|
+
emitter.methods_without_parenthesis += ["it", "describe", "context", "should", "should_not"]
|
26
|
+
emitter.emit(sexp)
|
27
|
+
|
28
|
+
== Supported Test::Unit Assertion Transforms:
|
29
|
+
|
30
|
+
* +assert_equals+
|
31
|
+
* +assert_not_equals+
|
32
|
+
* +assert_not_nil+
|
33
|
+
|
34
|
+
== Example:
|
35
|
+
|
36
|
+
=== Original (Test::Unit):
|
37
|
+
|
38
|
+
class MyClass < ActiveSupport::TestCase
|
39
|
+
def test_should_be_one
|
40
|
+
assert_equals something, 1
|
41
|
+
end
|
42
|
+
|
43
|
+
def test_should_not_be_one
|
44
|
+
assert_not_equals something, 1
|
45
|
+
end
|
46
|
+
|
47
|
+
def test_should_not_be_nil
|
48
|
+
assert_not_nil something
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
=== Transformed (RSpec):
|
54
|
+
|
55
|
+
describe MyClass do
|
56
|
+
it "should be one" do
|
57
|
+
something.should == 1
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should not be one" do
|
61
|
+
something.should_not == 1
|
62
|
+
end
|
63
|
+
|
64
|
+
it "should not be nil" do
|
65
|
+
something.should_not be_nil
|
66
|
+
end
|
67
|
+
end
|
8
68
|
|
9
|
-
DO NOT USE!
|
data/bin/rspecify
ADDED
data/lib/rspecify/version.rb
CHANGED
@@ -3,7 +3,8 @@ RSpec::Matchers.define :transform_to do |desc, expected|
|
|
3
3
|
actual_as_sexp = actual.is_a?(String) ? RubyParser.new.parse(actual) : actual
|
4
4
|
expected_as_sexp = expected.is_a?(String) ? RubyParser.new.parse(expected) : expected
|
5
5
|
|
6
|
-
|
6
|
+
transformer = described_class.is_a?(Class) ? described_class.new : described_class
|
7
|
+
@transformed = transformer.transform(actual_as_sexp)
|
7
8
|
@transformed == expected_as_sexp
|
8
9
|
end
|
9
10
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspecify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-10-11 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: &
|
16
|
+
requirement: &70190262807900 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0.13'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70190262807900
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: activesupport
|
27
|
-
requirement: &
|
27
|
+
requirement: &70190262806840 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 3.0.10
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70190262806840
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: i18n
|
38
|
-
requirement: &
|
38
|
+
requirement: &70190262805040 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.6.0
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70190262805040
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: ruby_parser
|
49
|
-
requirement: &
|
49
|
+
requirement: &70190262804260 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 2.3.1
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70190262804260
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: ruby_scribe
|
60
|
-
requirement: &
|
60
|
+
requirement: &70190262797580 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 0.1.0
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70190262797580
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: ruby_transform
|
71
|
-
requirement: &
|
71
|
+
requirement: &70190262796760 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.1.0
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70190262796760
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rspec
|
82
|
-
requirement: &
|
82
|
+
requirement: &70190262796240 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,11 +87,12 @@ dependencies:
|
|
87
87
|
version: '2.0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70190262796240
|
91
91
|
description: Provides some automation to attempt to convert your Ruby Test::Unit tests
|
92
92
|
into RSpec.
|
93
93
|
email: ben@railsgarden.com
|
94
|
-
executables:
|
94
|
+
executables:
|
95
|
+
- rspecify
|
95
96
|
extensions: []
|
96
97
|
extra_rdoc_files: []
|
97
98
|
files:
|
@@ -110,6 +111,7 @@ files:
|
|
110
111
|
- Gemfile.lock
|
111
112
|
- LICENSE
|
112
113
|
- README.rdoc
|
114
|
+
- bin/rspecify
|
113
115
|
homepage: http://github.com/rubiety/rspecify
|
114
116
|
licenses: []
|
115
117
|
post_install_message:
|