rieles 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  = Rieles
2
2
 
3
- Incluye diversos archivos para trabajar en Español. El archivo de inflections para pluralizar y singularizar, el archivo de locale para los mensajes, y los templates erb para que el scaffold genere las vistas en Español.
3
+ Incluye diversos archivos para trabajar en Español. Dentro de los recursos que se agregan está el archivo de inflections para pluralizar y singularizar en Español, el archivo de locale para traducir los mensajes, y los templates erb y haml para que el scaffold genere las vistas completamente en Español.
4
4
 
5
5
  == Instalación
6
6
 
@@ -18,6 +18,10 @@ O instálala de la siguiente manera:
18
18
 
19
19
  == Uso
20
20
 
21
+ Modifica el archivo config/application.rb para indicar que se trabajará en Español.
22
+
23
+ config.i18n.default_locale = :es
24
+
21
25
  ¡Listo! Con esto ya tienes los inflections y locales en Español. Puedes probar entrando a una consola:
22
26
 
23
27
  $ rails console
@@ -27,14 +31,14 @@ y obteniendo el plural o singular de alguna palabra en Español, por ejemplo:
27
31
  'riel'.pluralize
28
32
  'rieles'.singularize
29
33
 
30
- Igualmente, los mensajes de error de active record y las vistas generadas por el scaffold se mostrarán en Español
34
+ Igualmente, los mensajes de error de active record y las vistas generadas por el scaffold se mostrarán ya traducidas.
31
35
 
32
36
  == Personalización (recomendada)
33
37
 
34
38
  Se recomienda instalar los archivos de inflections, locales y la estructura de las vistas para adaptarlos a tus necesidades
35
39
 
36
- $ gem generate rieles:install
40
+ $ rails generate rieles:install
37
41
 
38
- Si haces esto, la gema puede quedar en el grupo 'development', lo que significa que no será necesaria en producción. En el Gemfile debe aparecer como:
42
+ Si haces esto, la gema puede quedar en el grupo 'development', lo que significa que no será necesaria en el entorno de producción. En el Gemfile debe aparecer como:
39
43
 
40
44
  gem 'rieles', :group => :development
@@ -1,5 +1,5 @@
1
1
  <% if target.errors.any? %>
2
- <% gender ||= target.class.name.ends_with?("a") ? "female" : "male" %>
2
+ <% gender ||= (target.class.name =~ /[ad]$/ ) ? "female" : "male" %>
3
3
  <% model_name ||= target.class.name.underscore.humanize.downcase %>
4
4
  <div id="error_explanation">
5
5
  <h2>
@@ -0,0 +1,11 @@
1
+ - if target.errors.any?
2
+ - gender ||= (target.class.name =~ /[ad]$/ ) ? "female" : "male"
3
+ - model_name ||= target.class.name.underscore.humanize.downcase
4
+ #error_explanation
5
+ %h2
6
+ = t('activerecord.errors.template.header', :count => target.errors.count, :model => model_name, :article => (gender == "male" ? "El" : "La"))
7
+ = t('activerecord.errors.template.body')
8
+ %ul
9
+ - target.errors.full_messages.each do |msg|
10
+ %li
11
+ = msg
@@ -24,8 +24,15 @@ ActiveSupport::Inflector.inflections do |inflect|
24
24
  # terminen con r, n, d, l se convierten a plural agregando la sílaba "es",
25
25
  # de otra forma, el plural se obtendrían como doctors, camions, universidads
26
26
  # y pastels.
27
- inflect.plural(/([rndlj])([A-Z]|_|$)/, '\1es\2')
28
- inflect.plural(/([aeiou])([A-Z]|_|$)/, '\1s\2')
27
+ # Para que la expresión no quede tan extensa, vamos a utilizar unas variables
28
+ # para almacenar parte de la misma. También nos servirá para no tener que
29
+ # repetir la mistra estructura.
30
+
31
+ final_singular_rndlj = /([rndlj])([A-Z]|_|$)/
32
+ final_singular_vocal = /([aeiou])([A-Z]|_|$)/
33
+
34
+ inflect.plural(/#{final_singular_rndlj}/, '\1es\2')
35
+ inflect.plural(/#{final_singular_vocal}/, '\1s\2')
29
36
 
30
37
  # Las reglas anteriores funcionan incluso cuando son palabras compuestas por
31
38
  # dos o más palabras, siempre y cuando, todas sean del mismo tipo, es decir,
@@ -38,10 +45,10 @@ ActiveSupport::Inflector.inflections do |inflect|
38
45
  # "paciente_doctores". Esto sucede porque al pluralizar, rails aplica sólo
39
46
  # la última regla que coincida y omite las demás.
40
47
  # Para soportar palabras compuestas, es necesario agregar otras reglas.
41
- inflect.plural(/([aeiou])([A-Z]|_)([a-z]+)([rndlj])([A-Z]|_|$)/,
42
- '\1s\2\3\4es\5')
43
- inflect.plural(/([rndlj])([A-Z]|_)([a-z]+)([aeiou])([A-Z]|_|$)/,
44
- '\1es\2\3\4s\5')
48
+ compuesta_singular_1 = /#{final_singular_vocal}([a-z]+)#{final_singular_rndlj}/
49
+ compuesta_singular_2 = /#{final_singular_rndlj}([a-z]+)#{final_singular_vocal}/
50
+ inflect.plural(compuesta_singular_1, '\1s\2\3\4es\5')
51
+ inflect.plural(compuesta_singular_2, '\1es\2\3\4s\5')
45
52
  # Con estas reglas, ya se pueden traducir correctamente las palabras compuestas
46
53
  # de dos palabras aunque no sean del mismo tipo.
47
54
  # Se pueden agregar, de la misma manera, reglas para cuando se trate de tres
@@ -66,9 +73,6 @@ ActiveSupport::Inflector.inflections do |inflect|
66
73
  # sílaba "es" del final, se singularizaría como 'semestr'. Para evitar eso, se
67
74
  # obliga que la palabra que termina en "es" y venga precedida de r, n, d o l,
68
75
  # deba también ser precedida por una vocal.
69
- # Para que la epresión no quede tan extensa, vamos a utilizar unas variables
70
- # para almacenar parte de la misma. También nos servirá para no tener que
71
- # repetir la mistra estructura.
72
76
 
73
77
  # Primero, definimos las palabras que terminen en 'es', precedido de r, n, d,
74
78
  # l o j, precedido de una vocal.
@@ -80,8 +84,8 @@ ActiveSupport::Inflector.inflections do |inflect|
80
84
  # Lsas palabras compuestas serán las siguientes: la primera palabra es con r,
81
85
  # n, d, l o j, seguida de una palabra terminada en vocal. La segunda palabra
82
86
  # compuesta, será al revés.
83
- palabra_compuesta_1 = /#{final_plural_rndlj}([a-z]+)#{final_plural_vocal}/
84
- palabra_compuesta_2 = /#{final_plural_vocal}([a-z]+)#{final_plural_rndlj}/
87
+ compuesta_plural_1 = /#{final_plural_rndlj}([a-z]+)#{final_plural_vocal}/
88
+ compuesta_plural_2 = /#{final_plural_vocal}([a-z]+)#{final_plural_rndlj}/
85
89
 
86
90
  # las palabras terminadas en ia ya están en singular
87
91
  inflect.singular(/(ia)([A-Z]|_|$)$/i, '\1')
@@ -91,8 +95,8 @@ ActiveSupport::Inflector.inflections do |inflect|
91
95
  # tanto en vocal, como en r, n, d, l, o j.
92
96
  inflect.singular(final_plural_rndlj, '\1\2')
93
97
  inflect.singular(final_plural_vocal, '\1\2')
94
- inflect.singular(palabra_compuesta_1, '\1\2\3\4\5')
95
- inflect.singular(palabra_compuesta_2, '\1\2\3\4\5')
98
+ inflect.singular(compuesta_plural_1, '\1\2\3\4\5')
99
+ inflect.singular(compuesta_plural_2, '\1\2\3\4\5')
96
100
 
97
101
  # Para singularizar palabras con 'ces', como 'maices'
98
102
  inflect.singular(/ces$/, 'z')
@@ -172,35 +172,44 @@ es:
172
172
  update: 'Actualizar %{model}'
173
173
  submit: 'Guardar %{model}'
174
174
 
175
+ links:
176
+ back: 'Listado'
177
+ show: 'Mostrar'
178
+ edit: 'Editar'
179
+ destroy: 'Eliminar'
180
+ new: 'Nuevo %{model}'
181
+ f_new: 'Nueva %{model}'
182
+ confirm: '¿Está usted seguro?'
183
+
175
184
  errors:
176
- format: "%{attribute} %{message}"
185
+ format: "%{attribute} %{message}"
177
186
 
178
- messages: &errors_messages
179
- inclusion: "no está incluído en la lista"
180
- exclusion: "está reservado"
181
- invalid: "es inválido"
182
- confirmation: "no coincide con la confirmación"
183
- blank: "no puede estar en blanco"
184
- empty: "no puede estar vacío"
185
- not_a_number: "no es un número"
186
- not_an_integer: "debe ser un entero"
187
- less_than: "debe ser menor que %{count}"
188
- less_than_or_equal_to: "debe ser menor o igual que %{count}"
189
- greater_than: "debe ser mayor que %{count}"
190
- greater_than_or_equal_to: "debe ser mayor o igual que %{count}"
191
- too_short:
192
- one: "es demasiado corto (mínimo 1 caracter)"
193
- other: "es demasiado corto (mínimo %{count} caracteres)"
194
- too_long:
195
- one: "es demasiado largo (máximo 1 caracter)"
196
- other: "es demasiado largo (máximo %{count} caracteres)"
197
- equal_to: "debe ser igual a %{count}"
198
- wrong_length:
199
- one: "longitud errónea (debe ser de 1 caracter)"
200
- other: "longitud errónea (debe ser de %{count} caracteres)"
201
- accepted: "debe ser aceptado"
202
- even: "debe ser un número par"
203
- odd: "debe ser un número non"
187
+ messages: &errors_messages
188
+ inclusion: "no está incluído en la lista"
189
+ exclusion: "está reservado"
190
+ invalid: "es inválido"
191
+ confirmation: "no coincide con la confirmación"
192
+ blank: "no puede estar en blanco"
193
+ empty: "no puede estar vacío"
194
+ not_a_number: "no es un número"
195
+ not_an_integer: "debe ser un entero"
196
+ less_than: "debe ser menor que %{count}"
197
+ less_than_or_equal_to: "debe ser menor o igual que %{count}"
198
+ greater_than: "debe ser mayor que %{count}"
199
+ greater_than_or_equal_to: "debe ser mayor o igual que %{count}"
200
+ too_short:
201
+ one: "es demasiado corto (mínimo 1 caracter)"
202
+ other: "es demasiado corto (mínimo %{count} caracteres)"
203
+ too_long:
204
+ one: "es demasiado largo (máximo 1 caracter)"
205
+ other: "es demasiado largo (máximo %{count} caracteres)"
206
+ equal_to: "debe ser igual a %{count}"
207
+ wrong_length:
208
+ one: "longitud errónea (debe ser de 1 caracter)"
209
+ other: "longitud errónea (debe ser de %{count} carácteres)"
210
+ accepted: "debe ser aceptado"
211
+ even: "debe ser un número par"
212
+ odd: "debe ser un número non"
204
213
 
205
214
  activerecord:
206
215
  errors:
@@ -2,35 +2,68 @@
2
2
  require 'rails/generators'
3
3
 
4
4
  module Rieles
5
- class InstallGenerator < Rails::Generators::Base
6
- source_root File.expand_path('../../../templates/erb/scaffold', __FILE__)
7
- class_option :keep_current_inflections,
8
- :type => :boolean,
9
- :default => false,
10
- :desc => 'Indica si en lugar de tratar de sobreescribir el archivo de inflections, se debe crear un archivo adicional (inflections_es)'
11
- class_option :skip_templates,
12
- :type => :boolean,
13
- :default => false,
14
- :desc => 'Indica si debe omitir los templates de las vistas para el scaffold'
15
-
16
- def copy_files
17
- copy_file '../../../config/initializer/inflections.rb', "config/initializers/#{file_name}.rb"
18
- copy_file '../../../config/locales/es.yml', 'config/locales/es.yml'
19
-
20
- unless options.skip_templates?
21
- copy_file 'index.html.erb', 'lib/templates/erb/scaffold/index.html.erb'
22
- copy_file 'edit.html.erb', 'lib/templates/erb/scaffold/edit.html.erb'
23
- copy_file 'new.html.erb', 'lib/templates/erb/scaffold/new.html.erb'
24
- copy_file 'show.html.erb', 'lib/templates/erb/scaffold/show.html.erb'
25
- copy_file '_form.html.erb', 'lib/templates/erb/scaffold/_form.html.erb'
26
- copy_file '../../../../app/views/application/_error_messages.html.erb', 'app/views/application/_error_messages.html.erb'
27
- end
5
+ class InstallGenerator < Rails::Generators::Base
6
+ source_root File.expand_path("../../../templates", __FILE__)
7
+ class_option :keep_current_inflections,
8
+ :type => :boolean,
9
+ :default => false,
10
+ :desc => 'Indica si en lugar de tratar de sobreescribir el archivo de inflections, se debe crear un archivo adicional (inflections_es)'
11
+ class_option :skip_templates,
12
+ :type => :boolean,
13
+ :default => false,
14
+ :desc => 'Indica si debe omitir los templates de las vistas para el scaffold'
15
+
16
+ def copy_files
17
+ copy_file '../config/initializer/inflections.rb', "config/initializers/#{file_name}.rb"
18
+ copy_file '../config/locales/es.yml', 'config/locales/es.yml'
19
+
20
+ unless options.skip_templates?
21
+ copy_file(
22
+ "#{engine}/scaffold/index.html.#{engine}",
23
+ "lib/templates/#{engine}/scaffold/index.html.#{engine}"
24
+ )
25
+ copy_file(
26
+ "#{engine}/scaffold/edit.html.#{engine}",
27
+ "lib/templates/#{engine}/scaffold/edit.html.#{engine}"
28
+ )
29
+ copy_file(
30
+ "#{engine}/scaffold/new.html.#{engine}",
31
+ "lib/templates/#{engine}/scaffold/new.html.#{engine}"
32
+ )
33
+ copy_file(
34
+ "#{engine}/scaffold/show.html.#{engine}",
35
+ "lib/templates/#{engine}/scaffold/show.html.#{engine}"
36
+ )
37
+ copy_file(
38
+ "#{engine}/scaffold/_form.html.#{engine}",
39
+ "lib/templates/#{engine}/scaffold/_form.html.#{engine}"
40
+ )
41
+ copy_file(
42
+ "../../app/views/application/_error_messages.html.#{engine}",
43
+ "app/views/application/_error_messages.html.#{engine}"
44
+ )
28
45
  end
46
+ end
47
+
48
+ ####################
49
+ private
50
+ ####################
29
51
 
30
- private
52
+ def file_name
53
+ options.keep_current? ? 'inflections_es' : 'inflections'
54
+ end
55
+
56
+ def engine
57
+ @engine_extension ||= view_engine
58
+ end
31
59
 
32
- def file_name
33
- file_name = options.keep_current? ? 'inflections_es' : 'inflections'
60
+ def view_engine
61
+ if ::Rails.application
62
+ ::Rails.application.config.generators.options[:rails][:template_engine]
63
+ else
64
+ 'erb'
34
65
  end
35
66
  end
67
+
68
+ end
36
69
  end
@@ -1,3 +1,3 @@
1
1
  module Rieles
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -1,5 +1,6 @@
1
1
  <h1>Listado de <%= plural_table_name.humanize %></h1>
2
2
 
3
+ <%% if @<%= plural_table_name %>.any? %>
3
4
  <table>
4
5
  <thead>
5
6
  <tr>
@@ -16,16 +17,25 @@
16
17
  <%% @<%= plural_table_name %>.each do |<%= singular_table_name %>| %>
17
18
  <tr>
18
19
  <%- attributes.each do |attribute| -%>
20
+ <%- if attribute.type == :integer or attribute.type == :decimal -%>
21
+ <td><%%= number_with_delimiter <%= singular_table_name %>.<%= attribute.name %> %></td>
22
+ <%- else -%>
19
23
  <td><%%= <%= singular_table_name %>.<%= attribute.name %> %></td>
24
+ <%- end -%>
20
25
  <%- end -%>
21
26
  <td><%%= link_to 'Mostrar', <%= singular_table_name %> %></td>
22
27
  <td><%%= link_to 'Editar', edit_<%= singular_table_name %>_path(<%= singular_table_name %>) %></td>
23
- <td><%%= link_to 'Eliminar', <%= singular_table_name %>, <%= key_value :confirm, "'¿Está usted seguro?'" %>, <%= key_value :method, ":delete" %> %></td>
28
+ <td><%%= link_to 'Eliminar', <%= singular_table_name %>, <%= key_value :method, ":delete" %>, <%= key_value :data, "{ #{key_value :confirm, "'¿Estás seguro?'"} }" %> %></td>
24
29
  </tr>
25
30
  <%% end %>
26
31
  </tbody>
27
32
  </table>
33
+ <%% else %>
34
+ <div>
35
+ <h3>No se encontraron <%= plural_table_name.humanize %></h3>
36
+ </div>
37
+ <%% end %>
28
38
 
29
39
  <br />
30
- <% nuevo = singular_table_name.split('_')[0].ends_with?("a") ? 'Nueva' : 'Nuevo' -%>
31
- <%%= link_to '<%= nuevo %> <%= human_name %>', new_<%= singular_table_name %>_path %>
40
+ <%- nuevo_str = (singular_table_name.split('_').first =~ /[ad]$/) ? 'Nueva' : 'Nuevo' -%>
41
+ <%%= link_to "<%= nuevo_str %> <%= human_name %>", new_<%= singular_table_name %>_path %>
@@ -1,4 +1,4 @@
1
- <% nuevo = singular_table_name.split('_')[0].ends_with?("a") ? 'Nueva' : 'Nuevo' -%>
1
+ <% nuevo = singular_table_name.split('_').first =~ /[ad]$/ ? 'Nueva' : 'Nuevo' -%>
2
2
  <h1><%= nuevo %> <%= human_name %></h1>
3
3
 
4
4
  <%%= render 'form' %>
@@ -3,7 +3,11 @@
3
3
  <%- attributes.each do |attribute| -%>
4
4
  <p>
5
5
  <b><%= attribute.human_name %>:</b>
6
+ <%- if attribute.type == :integer or attribute.type == :decimal -%>
7
+ <%%= number_with_delimiter @<%= singular_table_name %>.<%= attribute.name %> %>
8
+ <%- else -%>
6
9
  <%%= @<%= singular_table_name %>.<%= attribute.name %> %>
10
+ <%- end -%>
7
11
  </p>
8
12
 
9
13
  <%- end -%>
@@ -0,0 +1,12 @@
1
+ = form_for(@<%= singular_table_name %>) do |f|
2
+ <%- object = "@#{singular_table_name}" -%>
3
+ = render 'error_messages', <%= key_value :target, object %>
4
+
5
+ <%- attributes.each do |attribute| -%>
6
+ .field
7
+ = f.label :<%= attribute.name %>
8
+ %br
9
+ = f.<%= attribute.field_type %> :<%= attribute.name %>
10
+ <%- end -%>
11
+ .actions
12
+ = f.submit
@@ -0,0 +1,7 @@
1
+ %h1 Editar <%= human_name %>
2
+
3
+ = render 'form'
4
+
5
+ = link_to 'Mostrar', @<%= singular_table_name %>
6
+ \|
7
+ = link_to 'Listado', <%= index_helper %>_path
@@ -0,0 +1,33 @@
1
+ %h1 Listado de <%= plural_table_name.humanize %>
2
+
3
+ - if @<%= plural_table_name %>.any?
4
+ %table
5
+ %thead
6
+ %tr
7
+ <%- attributes.each do |attribute| -%>
8
+ %th <%= attribute.human_name %>
9
+ <%- end -%>
10
+ %th
11
+ %th
12
+ %th
13
+
14
+ %tbody
15
+ - @<%= plural_table_name %>.each do |<%= singular_table_name %>|
16
+ %tr
17
+ <%- attributes.each do |attribute| -%>
18
+ <%- if attribute.type == :integer or attribute.type == :decimal -%>
19
+ %td= number_with_delimiter <%= singular_table_name %>.<%= attribute.name %>
20
+ <%- else -%>
21
+ %td= <%= singular_table_name %>.<%= attribute.name %>
22
+ <%- end -%>
23
+ <%- end -%>
24
+ %td= link_to 'Mostrar', <%= singular_table_name %>
25
+ %td= link_to 'Editar', edit_<%= singular_table_name %>_path(<%= singular_table_name %>)
26
+ %td= link_to 'Eliminar', <%= singular_table_name %>, <%= key_value :method, ":delete" %>, <%= key_value :data, "{ #{key_value :confirm, "'¿Estás seguro?'"} }" %>
27
+ - else
28
+ %div
29
+ %h3 No se encontraron <%= plural_table_name.humanize %>
30
+
31
+ %br
32
+ <%- nuevo_str = (singular_table_name.split('_').first =~ /[ad]$/) ? 'Nueva' : 'Nuevo' %>
33
+ = link_to "<%= nuevo_str %> <%= human_name %>", new_<%= singular_table_name %>_path
@@ -0,0 +1,6 @@
1
+ <% nuevo = singular_table_name.split('_').first =~ /[ad]$/ ? 'Nueva' : 'Nuevo' -%>
2
+ %h1 <%= nuevo %> <%= human_name %>
3
+
4
+ = render 'form'
5
+
6
+ = link_to 'Listado', <%= index_helper %>_path
@@ -0,0 +1,15 @@
1
+ %p#notice= notice
2
+
3
+ <%- attributes.each do |attribute| -%>
4
+ %p
5
+ %b <%= attribute.human_name %>:
6
+ <%- if attribute.type == :integer or attribute.type == :decimal -%>
7
+ = number_with_delimiter @<%= singular_table_name %>.<%= attribute.name %>
8
+ <%- else -%>
9
+ = @<%= singular_table_name %>.<%= attribute.name %>
10
+ <%- end -%>
11
+
12
+ <%- end -%>
13
+ = link_to 'Editar', edit_<%= singular_table_name %>_path(@<%= singular_table_name %>)
14
+ \|
15
+ = link_to 'Listado', <%= index_helper %>_path
@@ -4,8 +4,8 @@ require File.expand_path('../lib/rieles/version', __FILE__)
4
4
  Gem::Specification.new do |gem|
5
5
  gem.authors = ["Azarel Doroteo Pacheco"]
6
6
  gem.email = ["azarel.doroteo@logicalbricks.com"]
7
- gem.description = %q{Instala el archivo de inflections para pluralizar y singularizar según las reglas en Español, incluye el locale en Español y agrega templates erb para que el scaffold genere las vistas en Español.}
8
- gem.summary = %q{Instala inflections, locales y templates de scaffold para trabajar en Español.}
7
+ gem.description = %q{Instala el archivo de inflections para pluralizar y singularizar según las reglas en Español, incluye el locale en Español y agrega templates erb/haml para que el scaffold genere las vistas en Español.}
8
+ gem.summary = %q{Instala inflections, locales y templates de scaffold para trabajar en Español.}
9
9
  gem.homepage = ""
10
10
 
11
11
 
@@ -11,6 +11,10 @@ describe 'Inflections' do
11
11
  %w(rieles camiones hospitales universidades relojes semestres mesas aves bolas materias)
12
12
  end
13
13
 
14
+ #########################################################
15
+ # Sección que prueba las conversiones al plural
16
+ #########################################################
17
+
14
18
  describe 'Pluralizaciones' do
15
19
  it 'debe pluralizar palabras sencillas' do
16
20
  singulares.each_with_index do |s, i|
@@ -7,19 +7,41 @@ describe Rieles::InstallGenerator do
7
7
  include GeneratorSpec::TestCase
8
8
  destination File.expand_path("../../tmp", __FILE__)
9
9
 
10
- before(:all) do
11
- prepare_destination
12
- run_generator
10
+ context 'when creating erb views' do
11
+ before(:all) do
12
+ prepare_destination
13
+ ::Rieles::InstallGenerator.any_instance.stub(:engine).and_return('erb')
14
+ run_generator
15
+ end
16
+
17
+ it "crea los archivos de inflections, el locale en español, y los templates del scaffold" do
18
+ assert_file "config/initializers/inflections.rb", File.read('lib/config/initializer/inflections.rb')
19
+ assert_file "config/locales/es.yml", File.read('lib/config/locales/es.yml')
20
+ assert_file "lib/templates/erb/scaffold/new.html.erb", File.read('lib/templates/erb/scaffold/new.html.erb')
21
+ assert_file "lib/templates/erb/scaffold/show.html.erb", File.read('lib/templates/erb/scaffold/show.html.erb')
22
+ assert_file "lib/templates/erb/scaffold/edit.html.erb", File.read('lib/templates/erb/scaffold/edit.html.erb')
23
+ assert_file "lib/templates/erb/scaffold/index.html.erb", File.read('lib/templates/erb/scaffold/index.html.erb')
24
+ assert_file "lib/templates/erb/scaffold/_form.html.erb", File.read('lib/templates/erb/scaffold/_form.html.erb')
25
+ assert_file "app/views/application/_error_messages.html.erb", File.read('app/views/application/_error_messages.html.erb')
26
+ end
13
27
  end
14
28
 
15
- it "crea los archivos de inflections, el locale en español, y los templates del scaffold" do
16
- assert_file "config/initializers/inflections.rb", File.read('lib/config/initializer/inflections.rb')
17
- assert_file "config/locales/es.yml", File.read('lib/config/locales/es.yml')
18
- assert_file "lib/templates/erb/scaffold/new.html.erb", File.read('lib/templates/erb/scaffold/new.html.erb')
19
- assert_file "lib/templates/erb/scaffold/show.html.erb", File.read('lib/templates/erb/scaffold/show.html.erb')
20
- assert_file "lib/templates/erb/scaffold/edit.html.erb", File.read('lib/templates/erb/scaffold/edit.html.erb')
21
- assert_file "lib/templates/erb/scaffold/index.html.erb", File.read('lib/templates/erb/scaffold/index.html.erb')
22
- assert_file "lib/templates/erb/scaffold/_form.html.erb", File.read('lib/templates/erb/scaffold/_form.html.erb')
23
- assert_file "app/views/application/_error_messages.html.erb", File.read('app/views/application/_error_messages.html.erb')
29
+ context 'when creating haml views' do
30
+ before(:all) do
31
+ prepare_destination
32
+ ::Rieles::InstallGenerator.any_instance.stub(:engine).and_return('haml')
33
+ run_generator
34
+ end
35
+
36
+ it "crea los archivos de inflections, el locale en español, y los templates del scaffold" do
37
+ assert_file "config/initializers/inflections.rb", File.read('lib/config/initializer/inflections.rb')
38
+ assert_file "config/locales/es.yml", File.read('lib/config/locales/es.yml')
39
+ assert_file "lib/templates/haml/scaffold/new.html.haml", File.read('lib/templates/haml/scaffold/new.html.haml')
40
+ assert_file "lib/templates/haml/scaffold/show.html.haml", File.read('lib/templates/haml/scaffold/show.html.haml')
41
+ assert_file "lib/templates/haml/scaffold/edit.html.haml", File.read('lib/templates/haml/scaffold/edit.html.haml')
42
+ assert_file "lib/templates/haml/scaffold/index.html.haml", File.read('lib/templates/haml/scaffold/index.html.haml')
43
+ assert_file "lib/templates/haml/scaffold/_form.html.haml", File.read('lib/templates/haml/scaffold/_form.html.haml')
44
+ assert_file "app/views/application/_error_messages.html.haml", File.read('app/views/application/_error_messages.html.haml')
45
+ end
24
46
  end
25
47
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rieles
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-01 00:00:00.000000000 Z
12
+ date: 2012-09-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: generator_spec
@@ -28,8 +28,8 @@ dependencies:
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
30
  description: Instala el archivo de inflections para pluralizar y singularizar según
31
- las reglas en Español, incluye el locale en Español y agrega templates erb para
32
- que el scaffold genere las vistas en Español.
31
+ las reglas en Español, incluye el locale en Español y agrega templates erb/haml
32
+ para que el scaffold genere las vistas en Español.
33
33
  email:
34
34
  - azarel.doroteo@logicalbricks.com
35
35
  executables: []
@@ -41,6 +41,7 @@ files:
41
41
  - README.rdoc
42
42
  - Rakefile
43
43
  - app/views/application/_error_messages.html.erb
44
+ - app/views/application/_error_messages.html.haml
44
45
  - lib/config/initializer/inflections.rb
45
46
  - lib/config/locales/es.yml
46
47
  - lib/generators/rieles/USAGE
@@ -52,6 +53,11 @@ files:
52
53
  - lib/templates/erb/scaffold/index.html.erb
53
54
  - lib/templates/erb/scaffold/new.html.erb
54
55
  - lib/templates/erb/scaffold/show.html.erb
56
+ - lib/templates/haml/scaffold/_form.html.haml
57
+ - lib/templates/haml/scaffold/edit.html.haml
58
+ - lib/templates/haml/scaffold/index.html.haml
59
+ - lib/templates/haml/scaffold/new.html.haml
60
+ - lib/templates/haml/scaffold/show.html.haml
55
61
  - rieles.gemspec
56
62
  - spec/inflections_spec.rb
57
63
  - spec/lib/generators/rieles/install_generator_spec.rb
@@ -67,12 +73,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
67
73
  - - ! '>='
68
74
  - !ruby/object:Gem::Version
69
75
  version: '0'
76
+ segments:
77
+ - 0
78
+ hash: 4198026442525368537
70
79
  required_rubygems_version: !ruby/object:Gem::Requirement
71
80
  none: false
72
81
  requirements:
73
82
  - - ! '>='
74
83
  - !ruby/object:Gem::Version
75
84
  version: '0'
85
+ segments:
86
+ - 0
87
+ hash: 4198026442525368537
76
88
  requirements: []
77
89
  rubyforge_project:
78
90
  rubygems_version: 1.8.24