yard-rails 0.2.0 → 0.3.0

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.
@@ -0,0 +1,6 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 1.8.7
5
+
6
+ script: rake
@@ -1,3 +1,9 @@
1
+ ### 0.3.0 / 2012-08-01
2
+
3
+ * Fix broken support for `attr_accessible`
4
+ * Add support for `attr_protected`
5
+
6
+
1
7
  ### 0.2.0 / 2011-11-10
2
8
 
3
9
  * Add `attr_accessible`
@@ -2,23 +2,27 @@ GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
4
  diff-lcs (1.1.3)
5
- gemcutter (0.7.0)
5
+ gemcutter (0.7.1)
6
6
  git (1.2.5)
7
- jeweler (1.6.4)
7
+ jeweler (1.8.4)
8
8
  bundler (~> 1.0)
9
9
  git (>= 1.2.5)
10
10
  rake
11
+ rdoc
12
+ json (1.7.4)
11
13
  rake (0.9.2.2)
12
14
  rdiscount (1.6.8)
13
- rspec (2.7.0)
14
- rspec-core (~> 2.7.0)
15
- rspec-expectations (~> 2.7.0)
16
- rspec-mocks (~> 2.7.0)
17
- rspec-core (2.7.1)
18
- rspec-expectations (2.7.0)
19
- diff-lcs (~> 1.1.2)
20
- rspec-mocks (2.7.0)
21
- yard (0.7.3)
15
+ rdoc (3.12)
16
+ json (~> 1.4)
17
+ rspec (2.11.0)
18
+ rspec-core (~> 2.11.0)
19
+ rspec-expectations (~> 2.11.0)
20
+ rspec-mocks (~> 2.11.0)
21
+ rspec-core (2.11.1)
22
+ rspec-expectations (2.11.2)
23
+ diff-lcs (~> 1.1.3)
24
+ rspec-mocks (2.11.1)
25
+ yard (0.8.2.1)
22
26
 
23
27
  PLATFORMS
24
28
  ruby
data/README.md CHANGED
@@ -21,6 +21,8 @@ Parses the following statements:
21
21
 
22
22
  attr_accessible :attr
23
23
 
24
+ attr_protected :attr
25
+
24
26
  cattr_reader :attr
25
27
 
26
28
  cattr_writer :attr
data/Rakefile CHANGED
@@ -30,6 +30,7 @@ RSpec::Core::RakeTask.new(:rspec) do |spec|
30
30
  end
31
31
 
32
32
  task :test => :rspec
33
+ task :spec => :rspec
33
34
  task :default => :rspec
34
35
 
35
36
  require 'yard'
data/VERSION CHANGED
@@ -1,2 +1,2 @@
1
- 0.2.0
1
+ 0.3.0
2
2
 
@@ -1,2 +1,5 @@
1
1
  require 'yard-rails/class_attribute_handler'
2
2
  require 'yard-rails/legacy/class_attribute_handler'
3
+
4
+ require 'yard-rails/attr_accessible_handler'
5
+ require 'yard-rails/legacy/attr_accessible_handler'
@@ -3,6 +3,7 @@ module YARD
3
3
  module Rails
4
4
  class AttrAccessibleHandler < YARD::Handlers::Ruby::AttributeHandler
5
5
  handles method_call(:attr_accessible)
6
+ handles method_call(:attr_protected)
6
7
  namespace_only
7
8
 
8
9
  def process
@@ -3,7 +3,7 @@ module YARD
3
3
  module Rails
4
4
  module Legacy
5
5
  class AttrAccessibleHandler < YARD::Handlers::Ruby::Legacy::AttributeHandler
6
- handles /\Aattr_accessible(?:\s|\()/
6
+ handles /\Aattr_(accessible|protected)(?:\s|\()/
7
7
  namespace_only
8
8
 
9
9
  def process
@@ -9,30 +9,46 @@ describe "AttrAccessibleHandler" do
9
9
 
10
10
  describe "valid" do
11
11
  before(:all) do
12
- parse_file :simple_attr_accessible
12
+ parse_file :attr_accessible_protected
13
13
  end
14
14
 
15
- it "should define reader class method for the attr_accessible method" do
15
+ it "should define reader instance method for the attr_accessible method" do
16
16
  yard('SimpleAttrAccessible#test_attribute').should be_instance_of(CodeObjects::MethodObject)
17
17
  end
18
18
 
19
- it "should define writer class method for the attr_accessible method" do
19
+ it "should define writer instance method for the attr_accessible method" do
20
20
  yard('SimpleAttrAccessible#test_attribute=').should be_instance_of(CodeObjects::MethodObject)
21
21
  end
22
+
23
+ it "should define reader instance method for the attr_protected method" do
24
+ yard('SimpleAttrAccessible#other_attribute').should be_instance_of(CodeObjects::MethodObject)
25
+ end
26
+
27
+ it "should define writer instance method for the attr_protected method" do
28
+ yard('SimpleAttrAccessible#other_attribute=').should be_instance_of(CodeObjects::MethodObject)
29
+ end
22
30
  end
23
31
 
24
32
  describe "legacy" do
25
33
  before(:all) do
26
- parse_file :simple_attr_accessible, true
34
+ parse_file :attr_accessible_protected, true
27
35
  end
28
36
 
29
- it "should define reader class method for the attr_accessible method" do
37
+ it "should define reader instance method for the attr_accessible method" do
30
38
  yard('SimpleAttrAccessible#test_attribute').should be_instance_of(CodeObjects::MethodObject)
31
39
  end
32
40
 
33
- it "should define writer class method for the attr_accessible method" do
41
+ it "should define writer instance method for the attr_accessible method" do
34
42
  yard('SimpleAttrAccessible#test_attribute=').should be_instance_of(CodeObjects::MethodObject)
35
43
  end
44
+
45
+ it "should define reader instance method for the attr_protected method" do
46
+ yard('SimpleAttrAccessible#other_attribute').should be_instance_of(CodeObjects::MethodObject)
47
+ end
48
+
49
+ it "should define writer instance method for the attr_protected method" do
50
+ yard('SimpleAttrAccessible#other_attribute=').should be_instance_of(CodeObjects::MethodObject)
51
+ end
36
52
  end
37
53
  end
38
54
 
@@ -1,3 +1,5 @@
1
1
  class SimpleAttrAccessible
2
2
  attr_accessible :test_attribute
3
- end
3
+
4
+ attr_protected :other_attribute
5
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "yard-rails"
8
- s.version = "0.2.0"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Charles H. Pence"]
12
- s.date = "2011-11-10"
12
+ s.date = "2012-08-01"
13
13
  s.description = "Rails includes several bits of custom markup (such as the new \"cattr_*\" methods). This plugin for YARD adds support for this custom markup, which otherwise is parsed incorrectly."
14
14
  s.email = "charles@charlespence.net"
15
15
  s.extra_rdoc_files = [
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.files = [
21
21
  ".gemtest",
22
22
  ".specopts",
23
+ ".travis.yml",
23
24
  ".yardopts",
24
25
  "ChangeLog.md",
25
26
  "Gemfile",
@@ -36,7 +37,7 @@ Gem::Specification.new do |s|
36
37
  "spec/attr_accessible_handler_spec.rb",
37
38
  "spec/class_attribute_handler_spec.rb",
38
39
  "spec/helpers/examples.rb",
39
- "spec/helpers/examples/simple_attr_accessible.rb.txt",
40
+ "spec/helpers/examples/attr_accessible_protected.rb.txt",
40
41
  "spec/helpers/examples/simple_cattrs.rb.txt",
41
42
  "spec/spec_helper.rb",
42
43
  "tasks/yard.rb",
@@ -45,7 +46,7 @@ Gem::Specification.new do |s|
45
46
  s.homepage = "http://github.com/cpence/yard-rails"
46
47
  s.licenses = ["MIT"]
47
48
  s.require_paths = ["lib"]
48
- s.rubygems_version = "1.8.10"
49
+ s.rubygems_version = "1.8.23"
49
50
  s.summary = "A YARD plugin for parsing custom Rails syntax."
50
51
 
51
52
  if s.respond_to? :specification_version then
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yard-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-11-10 00:00:00.000000000Z
12
+ date: 2012-08-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: yard
16
- requirement: &2156843180 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2156843180
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: yard
27
- requirement: &2156840860 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *2156840860
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rake
38
- requirement: &2156839640 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *2156839640
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: jeweler
49
- requirement: &2156838160 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *2156838160
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: gemcutter
60
- requirement: &2156836540 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *2156836540
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: rspec
71
- requirement: &2156833120 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ! '>='
@@ -76,7 +101,12 @@ dependencies:
76
101
  version: '0'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *2156833120
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
80
110
  description: Rails includes several bits of custom markup (such as the new "cattr_*"
81
111
  methods). This plugin for YARD adds support for this custom markup, which otherwise
82
112
  is parsed incorrectly.
@@ -90,6 +120,7 @@ extra_rdoc_files:
90
120
  files:
91
121
  - .gemtest
92
122
  - .specopts
123
+ - .travis.yml
93
124
  - .yardopts
94
125
  - ChangeLog.md
95
126
  - Gemfile
@@ -106,7 +137,7 @@ files:
106
137
  - spec/attr_accessible_handler_spec.rb
107
138
  - spec/class_attribute_handler_spec.rb
108
139
  - spec/helpers/examples.rb
109
- - spec/helpers/examples/simple_attr_accessible.rb.txt
140
+ - spec/helpers/examples/attr_accessible_protected.rb.txt
110
141
  - spec/helpers/examples/simple_cattrs.rb.txt
111
142
  - spec/spec_helper.rb
112
143
  - tasks/yard.rb
@@ -126,7 +157,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
157
  version: '0'
127
158
  segments:
128
159
  - 0
129
- hash: 1741283832477433922
160
+ hash: 461217869406545283
130
161
  required_rubygems_version: !ruby/object:Gem::Requirement
131
162
  none: false
132
163
  requirements:
@@ -135,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
166
  version: '0'
136
167
  requirements: []
137
168
  rubyforge_project:
138
- rubygems_version: 1.8.10
169
+ rubygems_version: 1.8.23
139
170
  signing_key:
140
171
  specification_version: 3
141
172
  summary: A YARD plugin for parsing custom Rails syntax.