rieles 0.0.4 → 0.0.5

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.
@@ -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