zero_generators 0.0.1
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 +38 -0
- data/generators/default_values.rb +21 -0
- data/generators/factory_scaffold/USAGE +15 -0
- data/generators/factory_scaffold/factory_scaffold_generator.rb +27 -0
- data/generators/factory_scaffold/templates/controller_spec.rb.erb +135 -0
- data/generators/factory_scaffold/templates/helper_spec.rb.erb +5 -0
- data/generators/factory_scaffold/templates/model_spec.rb.erb +8 -0
- data/generators/ferret_scaffold/USAGE +12 -0
- data/generators/ferret_scaffold/ferret_scaffold_generator.rb +92 -0
- data/generators/ferret_scaffold/templates/controller.rb.erb +128 -0
- data/generators/ferret_scaffold/templates/controller_spec.rb.erb +155 -0
- data/generators/ferret_scaffold/templates/helper.rb.erb +2 -0
- data/generators/ferret_scaffold/templates/helper_spec.rb.erb +7 -0
- data/generators/ferret_scaffold/templates/migration.rb.erb +20 -0
- data/generators/ferret_scaffold/templates/model.rb.erb +8 -0
- data/generators/ferret_scaffold/templates/model_spec.rb.erb +28 -0
- data/generators/ferret_scaffold/templates/views/_dados_busca.html.erb +11 -0
- data/generators/ferret_scaffold/templates/views/_dados_model.html.erb +8 -0
- data/generators/ferret_scaffold/templates/views/edit.html.erb +13 -0
- data/generators/ferret_scaffold/templates/views/index.html.erb +11 -0
- data/generators/ferret_scaffold/templates/views/layout.html.erb +18 -0
- data/generators/ferret_scaffold/templates/views/new.html.erb +12 -0
- data/generators/ferret_scaffold/templates/views/show.html.erb +16 -0
- data/generators/layout/USAGE +10 -0
- data/generators/layout/layout_generator.rb +22 -0
- data/generators/layout/templates/README +7 -0
- data/generators/layout/templates/layout.html.erb +26 -0
- data/generators/layout/templates/pt_BR.yml +109 -0
- data/generators/layout/templates/stylesheet.css +60 -0
- data/generators/tdd_controller/USAGE +9 -0
- data/generators/tdd_controller/tdd_controller_generator.rb +15 -0
- data/generators/tdd_controller/templates/controller_spec.rb.erb +29 -0
- data/generators/tdd_model/USAGE +10 -0
- data/generators/tdd_model/tdd_model_generator.rb +17 -0
- data/generators/tdd_model/templates/model_spec.rb.erb +24 -0
- data/generators/tdd_scaffold/USAGE +11 -0
- data/generators/tdd_scaffold/tdd_scaffold_generator.rb +32 -0
- data/generators/tdd_scaffold/templates/controller_spec.rb.erb +125 -0
- data/generators/tdd_scaffold/templates/helper_spec.rb.erb +7 -0
- data/generators/tdd_scaffold/templates/model_spec.rb.erb +28 -0
- data/generators/tdd_scaffold_stub/USAGE +17 -0
- data/generators/tdd_scaffold_stub/tdd_scaffold_stub_generator.rb +40 -0
- data/generators/tdd_scaffold_stub/templates/controller_spec.rb.erb +157 -0
- data/generators/tdd_scaffold_stub/templates/edit.html.erb_spec.rb.erb +14 -0
- data/generators/tdd_scaffold_stub/templates/helper_spec.rb.erb +7 -0
- data/generators/tdd_scaffold_stub/templates/index.html.erb_spec.rb.erb +14 -0
- data/generators/tdd_scaffold_stub/templates/model_spec.rb.erb +24 -0
- data/generators/tdd_scaffold_stub/templates/new.html.erb_spec.rb.erb +12 -0
- data/generators/tdd_scaffold_stub/templates/show.html.erb_spec.rb.erb +14 -0
- metadata +112 -0
@@ -0,0 +1,157 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe <%= class_plural %>Controller do
|
4
|
+
def mock_<%= file_name %>(stubs = {})
|
5
|
+
@<%= file_name %> = mock_model(<%= class_name %>, stubs)
|
6
|
+
end
|
7
|
+
|
8
|
+
before(:each) do
|
9
|
+
@params = { :<%= file_name %> => {:um => 'parametro' }}
|
10
|
+
@campos = { 'um' => 'parametro' }
|
11
|
+
end
|
12
|
+
|
13
|
+
describe 'com muitos registros' do
|
14
|
+
before(:all) do
|
15
|
+
<%= class_name %>.stub!(:find).and_return(@array = [mock_<%= file_name %>])
|
16
|
+
@array.stub!(:to_xml).and_return('XML')
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'deve expor todos os registros na ação index, ou um XML no REST' do
|
20
|
+
get :index
|
21
|
+
assigns[:<%= file_plural %>].should == @array
|
22
|
+
get :index, :format => 'xml'
|
23
|
+
response.body.should == 'XML'
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
describe 'com um registro' do
|
28
|
+
before(:each) do
|
29
|
+
<%= class_name %>.stub!(:find).and_return(mock_<%= file_name %>)
|
30
|
+
<%= class_name %>.stub!(:new).and_return(@<%= file_name %>)
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'deve expor o registro na tela edit' do
|
34
|
+
get :edit, :id => 1
|
35
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'deve expor o registro na tela show, ou um XML no REST' do
|
39
|
+
get :show, :id => 1
|
40
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
41
|
+
|
42
|
+
@<%= file_name %>.should_receive(:to_xml).and_return('XML')
|
43
|
+
get :show, :id => 1, :format => 'xml'
|
44
|
+
response.body.should == 'XML'
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'deve expor o registro na tela new, ou um XML no REST' do
|
48
|
+
get :new
|
49
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
50
|
+
|
51
|
+
@<%= file_name %>.should_receive(:to_xml).and_return('XML')
|
52
|
+
get :new, :format => 'xml'
|
53
|
+
response.body.should == 'XML'
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
describe 'com atributos válidos' do
|
58
|
+
describe 'respondendo ao POST' do
|
59
|
+
before(:each) do
|
60
|
+
<%= class_name %>.should_receive(:new).with(@campos).and_return(mock_<%= file_name %>(:save => true))
|
61
|
+
@<%= file_name %>.stub!(:to_xml).and_return("XML")
|
62
|
+
end
|
63
|
+
|
64
|
+
it 'deve criar um novo registro e redirecionar para ele após chamar o create' do
|
65
|
+
post :create, @params
|
66
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
67
|
+
response.should redirect_to <%= file_name %>_url(@<%= file_name %>)
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'deve criar um novo registro após chamar o create com REST' do
|
71
|
+
post :create, @params.merge(:format => 'xml')
|
72
|
+
response.response_code.should == 201
|
73
|
+
response.body.should == 'XML'
|
74
|
+
response.location.should == <%= file_name %>_url(@<%= file_name %>)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
describe 'respondendo ao PUT' do
|
79
|
+
before(:each) do
|
80
|
+
@params.update :id => 1
|
81
|
+
<%= class_name %>.should_receive(:find).with('1').and_return(mock_<%= file_name %>)
|
82
|
+
@<%= file_name %>.should_receive(:update_attributes).with(@campos).and_return(true)
|
83
|
+
@<%= file_name %>.stub!(:to_xml).and_return("XML")
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'deve atualizar um registro e redirecionar para ele após chamar o update' do
|
87
|
+
put :update, @params
|
88
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
89
|
+
response.should redirect_to <%= file_name %>_url(@<%= file_name %>)
|
90
|
+
end
|
91
|
+
|
92
|
+
it 'deve atualizar um registro após chamar o update com REST' do
|
93
|
+
put :update, @params.merge(:format => 'xml')
|
94
|
+
response.should be_success
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
describe 'com atributos inválidos' do
|
100
|
+
describe 'respondendo ao POST' do
|
101
|
+
before(:each) do
|
102
|
+
<%= class_name %>.should_receive(:new).with(@campos).and_return(mock_<%= file_name %>(:save => false))
|
103
|
+
@<%= file_name %>.stub!(:errors).and_return('Erros')
|
104
|
+
end
|
105
|
+
|
106
|
+
it 'deve renderizar novamente a ação new, após chamar o create' do
|
107
|
+
post :create, @params
|
108
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
109
|
+
response.should render_template('new')
|
110
|
+
end
|
111
|
+
|
112
|
+
it 'deve renderizar um XML de erros após chamar o create com REST' do
|
113
|
+
post :create, @params.merge(:format => 'xml')
|
114
|
+
response.response_code.should == 422
|
115
|
+
response.body.should == 'Erros'
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
describe 'respondendo ao PUT' do
|
120
|
+
before(:each) do
|
121
|
+
@params.update :id => 1
|
122
|
+
<%= class_name %>.should_receive(:find).with('1').and_return(mock_<%= file_name %>)
|
123
|
+
@<%= file_name %>.should_receive(:update_attributes).with(@campos).and_return(false)
|
124
|
+
@<%= file_name %>.stub!(:errors).and_return("Erros")
|
125
|
+
end
|
126
|
+
|
127
|
+
it 'deve renderizar novamente a ação edit após chamar o update' do
|
128
|
+
put :update, @params
|
129
|
+
assigns[:<%= file_name %>].should == @<%= file_name %>
|
130
|
+
response.should render_template('edit')
|
131
|
+
end
|
132
|
+
|
133
|
+
it 'deve renderizar um XML de erros após chamar o update com REST' do
|
134
|
+
put :update, @params.merge(:format => 'xml')
|
135
|
+
response.response_code.should == 422
|
136
|
+
response.body.should == 'Erros'
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
describe 'respondendo ao DELETE' do
|
142
|
+
before(:each) do
|
143
|
+
<%= class_name %>.should_receive(:find).with('1').and_return(mock_<%= file_name %>)
|
144
|
+
@<%= file_name %>.should_receive(:destroy)
|
145
|
+
end
|
146
|
+
|
147
|
+
it 'deve deletar um registro após chamar o destroy e redirecionar para a listagem de <%= file_plural %>' do
|
148
|
+
delete :destroy, :id => 1
|
149
|
+
response.should redirect_to(<%= file_plural %>_url)
|
150
|
+
end
|
151
|
+
|
152
|
+
it 'deve deletar um registro após chamar o destroy com REST' do
|
153
|
+
delete :destroy, :id => 1, :format => 'xml'
|
154
|
+
response.should be_success
|
155
|
+
end
|
156
|
+
end
|
157
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
|
+
|
3
|
+
describe 'views/<%= file_plural %>/edit.html.erb' do
|
4
|
+
fixtures :<%= file_plural %>
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
assigns[:<%= file_name %>] = @<%= file_name %> = <%= class_name %>.first
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'deve renderizar a página' do
|
11
|
+
render '<%= file_plural %>/edit.html.erb'
|
12
|
+
response.should be_success
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
|
+
|
3
|
+
describe 'views/<%= file_plural %>/index.html.erb' do
|
4
|
+
fixtures :<%= file_plural %>
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
assigns[:<%= file_plural %>] = @<%= file_plural %> = <%= class_name %>.all
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'deve renderizar a página' do
|
11
|
+
render '<%= file_plural %>/index.html.erb'
|
12
|
+
response.should be_success
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe <%= class_name %> do
|
4
|
+
before(:each) do
|
5
|
+
@validos = {
|
6
|
+
<% attributes.each do |atributo| -%>
|
7
|
+
:<%= atributo.name %> => <%= atributo.default_value %>,
|
8
|
+
<% end -%>
|
9
|
+
}
|
10
|
+
end
|
11
|
+
|
12
|
+
it "deve ser criado se forem passados atributos válidos" do
|
13
|
+
<%= class_name %>.create!(@validos)
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'deve validar a presença de determinados atributos' do
|
17
|
+
@<%= class_name.underscore %> = <%= class_name %>.create
|
18
|
+
|
19
|
+
#Coloque os atributos que devem ser checados no array a seguir
|
20
|
+
[].each do |atributo|
|
21
|
+
@<%= class_name.underscore %>.should have(1).error_on(atributo)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
|
+
|
3
|
+
describe 'views/<%= file_plural %>/new.html.erb' do
|
4
|
+
before(:each) do
|
5
|
+
assigns[:<%= file_name %>] = @<%= file_name %> = <%= class_name %>.new
|
6
|
+
end
|
7
|
+
|
8
|
+
it 'deve renderizar a página' do
|
9
|
+
render '<%= file_plural %>/new.html.erb'
|
10
|
+
response.should be_success
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
|
+
|
3
|
+
describe 'views/<%= file_plural %>/show.html.erb' do
|
4
|
+
fixtures :<%= file_plural %>
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
assigns[:<%= file_name %>] = @<%= file_name %> = <%= class_name %>.first
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'deve renderizar a página' do
|
11
|
+
render '<%= file_plural %>/show.html.erb'
|
12
|
+
response.should be_success
|
13
|
+
end
|
14
|
+
end
|
metadata
ADDED
@@ -0,0 +1,112 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: zero_generators
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "Maur\xC3\xADcio Szabo"
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2010-05-07 00:00:00 -03:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: rails
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - <
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 3.0.0
|
24
|
+
version:
|
25
|
+
description:
|
26
|
+
email: mauricio.szabo@gmail.com
|
27
|
+
executables: []
|
28
|
+
|
29
|
+
extensions: []
|
30
|
+
|
31
|
+
extra_rdoc_files:
|
32
|
+
- README
|
33
|
+
files:
|
34
|
+
- generators/layout/USAGE
|
35
|
+
- generators/layout/templates/README
|
36
|
+
- generators/layout/templates/pt_BR.yml
|
37
|
+
- generators/layout/templates/stylesheet.css
|
38
|
+
- generators/layout/templates/layout.html.erb
|
39
|
+
- generators/layout/layout_generator.rb
|
40
|
+
- generators/tdd_scaffold_stub/USAGE
|
41
|
+
- generators/tdd_scaffold_stub/templates/edit.html.erb_spec.rb.erb
|
42
|
+
- generators/tdd_scaffold_stub/templates/show.html.erb_spec.rb.erb
|
43
|
+
- generators/tdd_scaffold_stub/templates/model_spec.rb.erb
|
44
|
+
- generators/tdd_scaffold_stub/templates/new.html.erb_spec.rb.erb
|
45
|
+
- generators/tdd_scaffold_stub/templates/controller_spec.rb.erb
|
46
|
+
- generators/tdd_scaffold_stub/templates/index.html.erb_spec.rb.erb
|
47
|
+
- generators/tdd_scaffold_stub/templates/helper_spec.rb.erb
|
48
|
+
- generators/tdd_scaffold_stub/tdd_scaffold_stub_generator.rb
|
49
|
+
- generators/default_values.rb
|
50
|
+
- generators/tdd_controller/USAGE
|
51
|
+
- generators/tdd_controller/templates/controller_spec.rb.erb
|
52
|
+
- generators/tdd_controller/tdd_controller_generator.rb
|
53
|
+
- generators/tdd_model/USAGE
|
54
|
+
- generators/tdd_model/tdd_model_generator.rb
|
55
|
+
- generators/tdd_model/templates/model_spec.rb.erb
|
56
|
+
- generators/tdd_scaffold/USAGE
|
57
|
+
- generators/tdd_scaffold/templates/model_spec.rb.erb
|
58
|
+
- generators/tdd_scaffold/templates/controller_spec.rb.erb
|
59
|
+
- generators/tdd_scaffold/templates/helper_spec.rb.erb
|
60
|
+
- generators/tdd_scaffold/tdd_scaffold_generator.rb
|
61
|
+
- generators/factory_scaffold/USAGE
|
62
|
+
- generators/factory_scaffold/templates/model_spec.rb.erb
|
63
|
+
- generators/factory_scaffold/templates/controller_spec.rb.erb
|
64
|
+
- generators/factory_scaffold/templates/helper_spec.rb.erb
|
65
|
+
- generators/factory_scaffold/factory_scaffold_generator.rb
|
66
|
+
- generators/ferret_scaffold/USAGE
|
67
|
+
- generators/ferret_scaffold/templates/model.rb.erb
|
68
|
+
- generators/ferret_scaffold/templates/model_spec.rb.erb
|
69
|
+
- generators/ferret_scaffold/templates/views/edit.html.erb
|
70
|
+
- generators/ferret_scaffold/templates/views/_dados_busca.html.erb
|
71
|
+
- generators/ferret_scaffold/templates/views/index.html.erb
|
72
|
+
- generators/ferret_scaffold/templates/views/show.html.erb
|
73
|
+
- generators/ferret_scaffold/templates/views/_dados_model.html.erb
|
74
|
+
- generators/ferret_scaffold/templates/views/layout.html.erb
|
75
|
+
- generators/ferret_scaffold/templates/views/new.html.erb
|
76
|
+
- generators/ferret_scaffold/templates/helper.rb.erb
|
77
|
+
- generators/ferret_scaffold/templates/migration.rb.erb
|
78
|
+
- generators/ferret_scaffold/templates/controller_spec.rb.erb
|
79
|
+
- generators/ferret_scaffold/templates/helper_spec.rb.erb
|
80
|
+
- generators/ferret_scaffold/templates/controller.rb.erb
|
81
|
+
- generators/ferret_scaffold/ferret_scaffold_generator.rb
|
82
|
+
- README
|
83
|
+
has_rdoc: true
|
84
|
+
homepage: http://github.com/mauricioszabo/zero_generators
|
85
|
+
licenses: []
|
86
|
+
|
87
|
+
post_install_message:
|
88
|
+
rdoc_options: []
|
89
|
+
|
90
|
+
require_paths:
|
91
|
+
- ""
|
92
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: "0"
|
97
|
+
version:
|
98
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: "0"
|
103
|
+
version:
|
104
|
+
requirements: []
|
105
|
+
|
106
|
+
rubyforge_project:
|
107
|
+
rubygems_version: 1.3.5
|
108
|
+
signing_key:
|
109
|
+
specification_version: 3
|
110
|
+
summary: "Colet\xC3\xA2nea de geradores de c\xC3\xB3digo para Rails."
|
111
|
+
test_files: []
|
112
|
+
|