authorized_rails_scaffolds 0.0.10 → 0.0.11

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.
Files changed (42) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +13 -26
  3. data/lib/authorized_rails_scaffolds.rb +11 -2
  4. data/lib/authorized_rails_scaffolds/controller_macros.rb +22 -0
  5. data/lib/authorized_rails_scaffolds/factory_macros.rb +65 -0
  6. data/lib/authorized_rails_scaffolds/helper.rb +38 -115
  7. data/lib/authorized_rails_scaffolds/rails_erb_scaffold_helper.rb +40 -0
  8. data/lib/authorized_rails_scaffolds/rails_scaffold_controller_helper.rb +20 -0
  9. data/lib/authorized_rails_scaffolds/resource_macros.rb +81 -0
  10. data/lib/authorized_rails_scaffolds/route_example_macros.rb +43 -0
  11. data/lib/authorized_rails_scaffolds/rspec_scaffold_controller_helper.rb +17 -0
  12. data/lib/authorized_rails_scaffolds/rspec_scaffold_helper.rb +26 -0
  13. data/lib/authorized_rails_scaffolds/rspec_scaffold_routing_helper.rb +12 -0
  14. data/lib/authorized_rails_scaffolds/{rspec_scaffold_generator_view_helper.rb → rspec_scaffold_view_helper.rb} +3 -2
  15. data/lib/authorized_rails_scaffolds/test_var_macros.rb +40 -0
  16. data/lib/authorized_rails_scaffolds/version.rb +1 -1
  17. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/_form.html.erb +4 -6
  18. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/controller.rb +50 -34
  19. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/edit.html.erb +2 -4
  20. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/index.html.erb +17 -18
  21. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/new.html.erb +2 -4
  22. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/scaffold/show.html.erb +15 -17
  23. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/controller_spec.rb +126 -101
  24. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/edit_spec.rb +44 -39
  25. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/index_spec.rb +73 -65
  26. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/model_spec.rb +9 -8
  27. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/new_spec.rb +38 -35
  28. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/routing_spec.rb +21 -10
  29. data/lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/show_spec.rb +37 -20
  30. data/spec/lib/authorized_rails_scaffolds/rails_erb_scaffold_helper_spec.rb +59 -0
  31. data/spec/lib/authorized_rails_scaffolds/rails_scaffold_controller_helper_spec.rb +89 -0
  32. data/spec/lib/authorized_rails_scaffolds/rspec_scaffold_controller_helper_spec.rb +155 -0
  33. data/spec/lib/authorized_rails_scaffolds/{rspec_scaffold_generator_helper_spec.rb → rspec_scaffold_routing_helper_spec.rb} +57 -50
  34. data/spec/lib/authorized_rails_scaffolds/rspec_scaffold_view_helper_spec.rb +86 -0
  35. data/spec/spec_helper.rb +5 -2
  36. data/spec/support/rails_erb_scaffold_helper_macros.rb +15 -0
  37. data/spec/support/rails_scaffold_controller_helper_macros.rb +15 -0
  38. data/spec/support/{rspec_scaffold_generator_helper_macros.rb → rspec_scaffold_controller_helper_macros.rb} +2 -2
  39. data/spec/support/rspec_scaffold_routing_helper_macros.rb +15 -0
  40. data/spec/support/rspec_scaffold_view_helper_macros.rb +15 -0
  41. metadata +66 -28
  42. data/lib/authorized_rails_scaffolds/rspec_scaffold_generator_helper.rb +0 -82
@@ -0,0 +1,15 @@
1
+
2
+ module RailsErbScaffoldHelperMacros
3
+
4
+ def build_rails_erb_scaffold_spec_helper(options = {})
5
+ defaults = {
6
+ class_name: 'Scaffold::Example', # Model class name
7
+ singular_table_name: 'scaffold_example', # path and model name
8
+ file_name: 'example', # last part of singular_table_name
9
+ attributes: [],
10
+ }
11
+ defaults.merge! options
12
+ AuthorizedRailsScaffolds::RailsErbScaffoldHelper.new(defaults)
13
+ end
14
+
15
+ end
@@ -0,0 +1,15 @@
1
+
2
+ module RailsScaffoldControllerHelperMacros
3
+
4
+ def build_rails_controller_spec_helper(options = {})
5
+ defaults = {
6
+ class_name: 'Scaffold::Example', # Model class name
7
+ singular_table_name: 'scaffold_example', # path and model name
8
+ file_name: 'example', # last part of singular_table_name
9
+ attributes: [],
10
+ }
11
+ defaults.merge! options
12
+ AuthorizedRailsScaffolds::RailsScaffoldControllerHelper.new(defaults)
13
+ end
14
+
15
+ end
@@ -1,5 +1,5 @@
1
1
 
2
- module RSpecScaffoldGeneratorHelperMacros
2
+ module RSpecScaffoldControllerHelperMacros
3
3
 
4
4
  def build_controller_spec_helper(args = {})
5
5
  defaults = {
@@ -9,7 +9,7 @@ module RSpecScaffoldGeneratorHelperMacros
9
9
  attributes: [],
10
10
  }
11
11
  defaults.merge! (args)
12
- AuthorizedRailsScaffolds::RSpecScaffoldGeneratorHelper.new(defaults)
12
+ AuthorizedRailsScaffolds::RSpecScaffoldControllerHelper.new(defaults)
13
13
  end
14
14
 
15
15
  end
@@ -0,0 +1,15 @@
1
+
2
+ module RSpecScaffoldRoutingHelperMacros
3
+
4
+ def build_routing_spec_helper(args = {})
5
+ defaults = {
6
+ class_name: 'Scaffold::Example', # Model class name
7
+ singular_table_name: 'scaffold_example', # path and model name
8
+ file_name: 'example', # last part of singular_table_name
9
+ attributes: [],
10
+ }
11
+ defaults.merge! (args)
12
+ AuthorizedRailsScaffolds::RSpecScaffoldRoutingHelper.new(defaults)
13
+ end
14
+
15
+ end
@@ -0,0 +1,15 @@
1
+
2
+ module RSpecScaffoldViewHelperMacros
3
+
4
+ def build_view_spec_helper(args = {})
5
+ defaults = {
6
+ class_name: 'Scaffold::Example', # Model class name
7
+ singular_table_name: 'scaffold_example', # path and model name
8
+ file_name: 'example', # last part of singular_table_name
9
+ attributes: [],
10
+ }
11
+ defaults.merge! (args)
12
+ AuthorizedRailsScaffolds::RSpecScaffoldViewHelper.new(defaults)
13
+ end
14
+
15
+ end
metadata CHANGED
@@ -1,71 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: authorized_rails_scaffolds
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
5
- prerelease:
4
+ version: 0.0.11
6
5
  platform: ruby
7
6
  authors:
8
7
  - bmorrall
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-25 00:00:00.000000000Z
11
+ date: 2013-04-30 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: railties
16
- requirement: &70301980494120 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '3.1'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *70301980494120
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ! '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '3.1'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: rails
27
- requirement: &70301980493620 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
31
  - - ! '>='
31
32
  - !ruby/object:Gem::Version
32
33
  version: '3.1'
33
34
  type: :development
34
35
  prerelease: false
35
- version_requirements: *70301980493620
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '3.1'
36
41
  - !ruby/object:Gem::Dependency
37
42
  name: bundler
38
- requirement: &70301980493160 !ruby/object:Gem::Requirement
39
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
40
44
  requirements:
41
45
  - - ~>
42
46
  - !ruby/object:Gem::Version
43
47
  version: '1.3'
44
48
  type: :development
45
49
  prerelease: false
46
- version_requirements: *70301980493160
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.3'
47
55
  - !ruby/object:Gem::Dependency
48
56
  name: rake
49
- requirement: &70301980492780 !ruby/object:Gem::Requirement
50
- none: false
57
+ requirement: !ruby/object:Gem::Requirement
51
58
  requirements:
52
59
  - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
62
  type: :development
56
63
  prerelease: false
57
- version_requirements: *70301980492780
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ! '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
58
69
  - !ruby/object:Gem::Dependency
59
70
  name: rspec
60
- requirement: &70301980492320 !ruby/object:Gem::Requirement
61
- none: false
71
+ requirement: !ruby/object:Gem::Requirement
62
72
  requirements:
63
73
  - - ! '>='
64
74
  - !ruby/object:Gem::Version
65
75
  version: '0'
66
76
  type: :development
67
77
  prerelease: false
68
- version_requirements: *70301980492320
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  description: Creates scaffolds for Twitter Bootstrap with generated RSpec coverage
70
84
  email:
71
85
  - bemo56@hotmail.com
@@ -80,9 +94,18 @@ files:
80
94
  - Rakefile
81
95
  - authorized_rails_scaffolds.gemspec
82
96
  - lib/authorized_rails_scaffolds.rb
97
+ - lib/authorized_rails_scaffolds/controller_macros.rb
98
+ - lib/authorized_rails_scaffolds/factory_macros.rb
83
99
  - lib/authorized_rails_scaffolds/helper.rb
84
- - lib/authorized_rails_scaffolds/rspec_scaffold_generator_helper.rb
85
- - lib/authorized_rails_scaffolds/rspec_scaffold_generator_view_helper.rb
100
+ - lib/authorized_rails_scaffolds/rails_erb_scaffold_helper.rb
101
+ - lib/authorized_rails_scaffolds/rails_scaffold_controller_helper.rb
102
+ - lib/authorized_rails_scaffolds/resource_macros.rb
103
+ - lib/authorized_rails_scaffolds/route_example_macros.rb
104
+ - lib/authorized_rails_scaffolds/rspec_scaffold_controller_helper.rb
105
+ - lib/authorized_rails_scaffolds/rspec_scaffold_helper.rb
106
+ - lib/authorized_rails_scaffolds/rspec_scaffold_routing_helper.rb
107
+ - lib/authorized_rails_scaffolds/rspec_scaffold_view_helper.rb
108
+ - lib/authorized_rails_scaffolds/test_var_macros.rb
86
109
  - lib/authorized_rails_scaffolds/version.rb
87
110
  - lib/generators/authorized_rails_scaffolds/install_macros/USAGE
88
111
  - lib/generators/authorized_rails_scaffolds/install_macros/install_macros_generator.rb
@@ -103,36 +126,51 @@ files:
103
126
  - lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/new_spec.rb
104
127
  - lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/routing_spec.rb
105
128
  - lib/generators/authorized_rails_scaffolds/install_templates/templates/spec/show_spec.rb
106
- - spec/lib/authorized_rails_scaffolds/rspec_scaffold_generator_helper_spec.rb
129
+ - spec/lib/authorized_rails_scaffolds/rails_erb_scaffold_helper_spec.rb
130
+ - spec/lib/authorized_rails_scaffolds/rails_scaffold_controller_helper_spec.rb
131
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_controller_helper_spec.rb
132
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_routing_helper_spec.rb
133
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_view_helper_spec.rb
107
134
  - spec/spec_helper.rb
108
- - spec/support/rspec_scaffold_generator_helper_macros.rb
135
+ - spec/support/rails_erb_scaffold_helper_macros.rb
136
+ - spec/support/rails_scaffold_controller_helper_macros.rb
137
+ - spec/support/rspec_scaffold_controller_helper_macros.rb
138
+ - spec/support/rspec_scaffold_routing_helper_macros.rb
139
+ - spec/support/rspec_scaffold_view_helper_macros.rb
109
140
  homepage: https://github.com/bmorrall/authorized_rails_scaffolds
110
141
  licenses:
111
142
  - MIT
143
+ metadata: {}
112
144
  post_install_message:
113
145
  rdoc_options: []
114
146
  require_paths:
115
147
  - lib
116
148
  required_ruby_version: !ruby/object:Gem::Requirement
117
- none: false
118
149
  requirements:
119
150
  - - ! '>='
120
151
  - !ruby/object:Gem::Version
121
152
  version: '0'
122
153
  required_rubygems_version: !ruby/object:Gem::Requirement
123
- none: false
124
154
  requirements:
125
155
  - - ! '>='
126
156
  - !ruby/object:Gem::Version
127
157
  version: '0'
128
158
  requirements: []
129
159
  rubyforge_project:
130
- rubygems_version: 1.8.10
160
+ rubygems_version: 2.0.3
131
161
  signing_key:
132
- specification_version: 3
162
+ specification_version: 4
133
163
  summary: Replaces Rails and RSpec's default generators with templates taking full
134
164
  advantage of Authentication (Devise), Authorization (CanCan) and Test Coverage (RSpec)
135
165
  test_files:
136
- - spec/lib/authorized_rails_scaffolds/rspec_scaffold_generator_helper_spec.rb
166
+ - spec/lib/authorized_rails_scaffolds/rails_erb_scaffold_helper_spec.rb
167
+ - spec/lib/authorized_rails_scaffolds/rails_scaffold_controller_helper_spec.rb
168
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_controller_helper_spec.rb
169
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_routing_helper_spec.rb
170
+ - spec/lib/authorized_rails_scaffolds/rspec_scaffold_view_helper_spec.rb
137
171
  - spec/spec_helper.rb
138
- - spec/support/rspec_scaffold_generator_helper_macros.rb
172
+ - spec/support/rails_erb_scaffold_helper_macros.rb
173
+ - spec/support/rails_scaffold_controller_helper_macros.rb
174
+ - spec/support/rspec_scaffold_controller_helper_macros.rb
175
+ - spec/support/rspec_scaffold_routing_helper_macros.rb
176
+ - spec/support/rspec_scaffold_view_helper_macros.rb
@@ -1,82 +0,0 @@
1
- class AuthorizedRailsScaffolds::RSpecScaffoldGeneratorHelper < AuthorizedRailsScaffolds::Helper
2
-
3
- def initialize(options = {})
4
- super options
5
-
6
- parent_models = AuthorizedRailsScaffolds.config.parent_models
7
-
8
- class_name_parts = (options[:class_name] || options[:local_class_name]).split("::")
9
-
10
- example_parent_values = {}
11
- parent_models.each_with_index do |parent_model, index|
12
- example_parent_values[parent_model] = index + 2
13
- end
14
-
15
- namespace_prefix_modules = class_name_parts[0..-2] # ['Example', 'V1']
16
- local_class_name = class_name_parts[-1]
17
-
18
- parent_model_and_value_parts = []
19
- parent_model_param_parts = []
20
- parent_models.each do |parent_model|
21
- parent_value = example_parent_values[parent_model]
22
-
23
- # User, 2
24
- parent_model_and_value_parts << parent_model.pluralize
25
- parent_model_and_value_parts << parent_value
26
-
27
- parent_model_param_parts << "#{parent_model.underscore}_id => #{parent_value}"
28
- end
29
-
30
- # Directory for the generated controller: i.e. awesome/foo_bars
31
- @controller_directory = [namespace_prefix_modules + [local_class_name.pluralize]].join("/").underscore
32
-
33
- # Example index route: i.e. /awesome/users/2/foo_bars
34
- @example_controller_path = [namespace_prefix_modules + parent_model_and_value_parts + [local_class_name.pluralize]].join("/").underscore
35
-
36
- @example_controller_path_extra_params = parent_model_param_parts.any? ? ", :#{parent_model_param_parts.join(', :')}" : ''
37
-
38
- @attributes = options[:attributes]
39
- end
40
-
41
- def create_factory_model
42
- extra_params = extra_model_params
43
- "FactoryGirl.create(:#{var_name}#{extra_params})"
44
- end
45
-
46
- def create_parent_model(model_name)
47
- extra_params = extra_model_params(model_name)
48
- "FactoryGirl.create(:#{model_name}#{extra_params})"
49
- end
50
-
51
- # Directory for the generated controller: i.e. awesome/foo_bars
52
- def controller_directory
53
- @controller_directory
54
- end
55
-
56
- # Example index route: i.e. /awesome/users/2/foo_bars
57
- def example_controller_path
58
- "/#{@example_controller_path}"
59
- end
60
-
61
- # Extra params for an example controller path: i.e. ', :user_id => 2'
62
- def example_controller_path_extra_params
63
- @example_controller_path_extra_params
64
- end
65
-
66
- def parent_model_tables
67
- @parent_model_tables ||= AuthorizedRailsScaffolds.config.parent_models.map { |model| model.underscore }
68
- end
69
-
70
- protected
71
-
72
- def extra_model_params(model_name = nil)
73
- argument_params = []
74
- AuthorizedRailsScaffolds.config.parent_models.each do |parent_model|
75
- attribute = parent_model.underscore
76
- break if model_name == attribute
77
- argument_params << ", :#{attribute} => @#{attribute}"
78
- end
79
- argument_params.join('')
80
- end
81
-
82
- end