date_select_separator 0.0.1 → 0.0.2

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.md CHANGED
@@ -14,16 +14,30 @@ And then execute:
14
14
 
15
15
  ## Usage
16
16
 
17
- # Add a separator after each select_tag
18
- <%= f.date_select :birthday, use_month_numbers: true, use_separators: {year: '年', month: '月', day: '日'} %>
19
- <%= f.datetime_select :birthday, use_month_numbers: true, time_separator: '', use_separators: {year: '年', month: '月', day: '日', hour: '時', minute: '分'} %>
17
+ Add these lines in your locale file like [config/locales/ja.yml](https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/ja.yml):
18
+
19
+ ja:
20
+ datetime:
21
+ separators:
22
+ year: 年
23
+ month: 月
24
+ day: 日
25
+ hour: 時
26
+ minute: 分
27
+ second: 秒
28
+
29
+ And then use ```use_separators: true```:
30
+
31
+ # Add a separator after each select_tags
32
+ <%= f.date_select :birthday, use_month_numbers: true, use_separators: true %>
33
+ <%= f.datetime_select :birthday, use_month_numbers: true, time_separator: '', use_separators: true %>
20
34
 
21
- # Add a separator to each option_tag. Month is used a value like ja.date.month_names in config/locales
22
- <%= f.date_select :birthday, use_separators: {inline: true, year: '年', day: '日'} %>
23
- <%= f.datetime_select :birthday, time_separator: '', use_separators: {inline: true, year: '年', day: '日', hour: '時', minute: '分'} %>
35
+ # Add a separator to each option_tags except month. Month is used a value like ja.data.month_names
36
+ <%= f.date_select :birthday, use_separators: {inline: true} %>
37
+ <%= f.datetime_select :birthday, time_separator: '', use_separators: {inline: true} %>
24
38
 
25
39
  # Options: html_tag, class_prefix
26
- <%= f.date_select :birthday, use_month_numbers: true, use_separators: {year: '年', month: '月', day: '日', html_tag: :div, class_prefix: 'prefix'} %>
40
+ <%= f.date_select :birthday, use_month_numbers: true, use_separators: {html_tag: :div, class_prefix: 'foo'} %>
27
41
 
28
42
  ## Contributing
29
43
 
@@ -5,11 +5,10 @@ module ActionView
5
5
  class DateTimeSelector
6
6
  def select_month_with_separator
7
7
  separators = @options[:use_separators]
8
- type = :month
9
8
  select_tag = select_month_without_separator
10
9
 
11
- if @options[:use_hidden].blank? && @options[:discard_month].blank? && use_separators?(separators, type) && separators[:inline].blank?
12
- select_tag += content_tag_for_separator(separators, type)
10
+ if @options[:use_hidden].blank? && @options[:discard_month].blank? && separators.present?
11
+ select_tag << separator_tag(:month, separators)
13
12
  end
14
13
 
15
14
  select_tag
@@ -19,13 +18,12 @@ module ActionView
19
18
  def build_options_and_select_with_separator(type, selected, options = {})
20
19
  separators = @options[:use_separators]
21
20
 
22
- if use_separators?(separators, type)
23
- if separators[:inline]
24
- options.merge!({:use_separator => separators[type]})
21
+ if separators.present?
22
+ if use_inline_separator?(separators)
23
+ options.merge!({:use_separator => translated_separator_name(type)})
25
24
  build_select(type, build_options_with_separator(selected, options))
26
25
  else
27
- select_tag = build_select(type, build_options(selected, options))
28
- select_tag + content_tag_for_separator(separators, type)
26
+ build_select(type, build_options(selected, options)) + separator_tag(type, separators)
29
27
  end
30
28
  else
31
29
  build_options_and_select_without_separator(type, selected, options)
@@ -34,8 +32,28 @@ module ActionView
34
32
  alias_method_chain :build_options_and_select, :separator
35
33
 
36
34
  private
37
- def use_separators?(separators, type)
38
- (separators.present? && separators[type].present?)
35
+ def use_inline_separator?(separators)
36
+ (separators.class == Hash && separators[:inline] == true)
37
+ end
38
+
39
+ def translated_separator_name(type)
40
+ key = 'datetime.separators.' + type.to_s
41
+ I18n.translate(key, :locale => @options[:locale])
42
+ end
43
+
44
+ def separator_tag(type, separators)
45
+ return '' if use_inline_separator?(separators)
46
+
47
+ default_options = {:html_tag => :span, :class_prefix => 'separator'}
48
+ options = (separators.class == Hash) ? default_options.merge!(separators) : default_options
49
+
50
+ if options
51
+ name = translated_separator_name(type)
52
+ class_name = options[:class_prefix] + "_#{type}"
53
+ content_tag(options[:html_tag], name, :class => class_name) + "\n"
54
+ else
55
+ ''
56
+ end
39
57
  end
40
58
 
41
59
  def build_options_with_separator(selected, options = {})
@@ -61,12 +79,6 @@ module ActionView
61
79
 
62
80
  (select_options.join("\n") + "\n").html_safe
63
81
  end
64
-
65
- def content_tag_for_separator(separators, type)
66
- separator_tag = separators[:html_tag] || :span
67
- separator_class = (separators[:class_prefix] ? separators[:class_prefix] : "separator") + "_#{type}"
68
- content_tag(separator_tag, separators[type], :class => separator_class)
69
- end
70
82
  end
71
83
  end
72
84
  end
@@ -1,3 +1,3 @@
1
1
  module DateSelectSeparator
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -8,6 +8,16 @@ require 'date_select_separator'
8
8
 
9
9
  class DateSelectSeparatorTest < ActionView::TestCase
10
10
 
11
+ I18n.backend.store_translations :en,
12
+ :datetime => { :separators => { :year => 'yy', :month => 'mm', :day => 'dd', :hour => 'hh', :minute => 'mm', :second => 'ss'} }
13
+
14
+ I18n.backend.store_translations :ja,
15
+ :date => {
16
+ :order => [ :year, :month, :day ],
17
+ :month_names => %w(1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月)
18
+ },
19
+ :datetime => { :separators => { :year => '年', :month => '月', :day => '日', :hour => '時', :minute => '分', :second => '秒'} }
20
+
11
21
  silence_warnings do
12
22
  Post = Struct.new("Post", :id, :written_on, :updated_at)
13
23
  Post.class_eval do
@@ -35,9 +45,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
35
45
  expected = %(<select id="date_day" name="date[day]">\n)
36
46
  expected << %(<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n)
37
47
  expected << "</select>\n"
38
- expected << %(<span class="separator_day">日</span>)
48
+ expected << %(<span class="separator_day">dd</span>\n)
39
49
 
40
- assert_dom_equal expected, select_day(Time.mktime(2003, 8, 16), :use_separators => {:day => '日'})
50
+ assert_dom_equal expected, select_day(Time.mktime(2003, 8, 16), :use_separators => true)
41
51
  end
42
52
 
43
53
  def test_select_month
@@ -52,9 +62,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
52
62
  expected = %(<select id="date_month" name="date[month]">\n)
53
63
  expected << %(<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6">June</option>\n<option value="7">July</option>\n<option value="8" selected="selected">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n)
54
64
  expected << "</select>\n"
55
- expected << %(<span class="separator_month">月</span>)
65
+ expected << %(<span class="separator_month">mm</span>\n)
56
66
 
57
- assert_dom_equal expected, select_month(Time.mktime(2003, 8, 16), :use_separators => {:month => '月'})
67
+ assert_dom_equal expected, select_month(Time.mktime(2003, 8, 16), :use_separators => true)
58
68
  end
59
69
 
60
70
  def test_select_year
@@ -69,9 +79,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
69
79
  expected = %(<select id="date_year" name="date[year]">\n)
70
80
  expected << %(<option value="2003" selected="selected">2003</option>\n<option value="2004">2004</option>\n<option value="2005">2005</option>\n)
71
81
  expected << "</select>\n"
72
- expected << %(<span class="separator_year">年</span>)
82
+ expected << %(<span class="separator_year">yy</span>\n)
73
83
 
74
- assert_dom_equal expected, select_year(Time.mktime(2003, 8, 16), :start_year => 2003, :end_year => 2005, :use_separators => {:year => '年'})
84
+ assert_dom_equal expected, select_year(Time.mktime(2003, 8, 16), :start_year => 2003, :end_year => 2005, :use_separators => true)
75
85
  end
76
86
 
77
87
  def test_select_hour
@@ -86,9 +96,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
86
96
  expected = %(<select id="date_hour" name="date[hour]">\n)
87
97
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08" selected="selected">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n)
88
98
  expected << "</select>\n"
89
- expected << %(<span class="separator_hour">時</span>)
99
+ expected << %(<span class="separator_hour">hh</span>\n)
90
100
 
91
- assert_dom_equal expected, select_hour(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => {:hour => '時'})
101
+ assert_dom_equal expected, select_hour(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => true)
92
102
  end
93
103
 
94
104
  def test_select_minute
@@ -103,9 +113,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
103
113
  expected = %(<select id="date_minute" name="date[minute]">\n)
104
114
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04" selected="selected">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
105
115
  expected << "</select>\n"
106
- expected << %(<span class="separator_minute">分</span>)
116
+ expected << %(<span class="separator_minute">mm</span>\n)
107
117
 
108
- assert_dom_equal expected, select_minute(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => {:minute => '分'})
118
+ assert_dom_equal expected, select_minute(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => true)
109
119
  end
110
120
 
111
121
  def test_select_second
@@ -120,9 +130,9 @@ class DateSelectSeparatorTest < ActionView::TestCase
120
130
  expected = %(<select id="date_second" name="date[second]">\n)
121
131
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18" selected="selected">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
122
132
  expected << "</select>\n"
123
- expected << %(<span class="separator_second">秒</span>)
133
+ expected << %(<span class="separator_second">ss</span>\n)
124
134
 
125
- assert_dom_equal expected, select_second(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => {:second => '秒'})
135
+ assert_dom_equal expected, select_second(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => true)
126
136
  end
127
137
 
128
138
  def test_select_date
@@ -145,19 +155,19 @@ class DateSelectSeparatorTest < ActionView::TestCase
145
155
  expected = %(<select id="date_first_year" name="date[first][year]">\n)
146
156
  expected << %(<option value="2003" selected="selected">2003</option>\n<option value="2004">2004</option>\n<option value="2005">2005</option>\n)
147
157
  expected << "</select>\n"
148
- expected << %(<span class="separator_year">年</span>)
158
+ expected << %(<span class="separator_year">yy</span>\n)
149
159
 
150
160
  expected << %(<select id="date_first_month" name="date[first][month]">\n)
151
161
  expected << %(<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6">June</option>\n<option value="7">July</option>\n<option value="8" selected="selected">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n)
152
162
  expected << "</select>\n"
153
- expected << %(<span class="separator_month">月</span>)
163
+ expected << %(<span class="separator_month">mm</span>\n)
154
164
 
155
165
  expected << %(<select id="date_first_day" name="date[first][day]">\n)
156
166
  expected << %(<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n)
157
167
  expected << "</select>\n"
158
- expected << %(<span class="separator_day">日</span>)
168
+ expected << %(<span class="separator_day">dd</span>\n)
159
169
 
160
- assert_dom_equal expected, select_date(Time.mktime(2003, 8, 16), :start_year => 2003, :end_year => 2005, :prefix => "date[first]", :use_separators => {:year => '年', :month => '月', :day => '日'})
170
+ assert_dom_equal expected, select_date(Time.mktime(2003, 8, 16), :start_year => 2003, :end_year => 2005, :prefix => "date[first]", :use_separators => true)
161
171
  end
162
172
 
163
173
  def test_select_datetime
@@ -192,33 +202,33 @@ class DateSelectSeparatorTest < ActionView::TestCase
192
202
  expected = %(<select id="date_first_year" name="date[first][year]">\n)
193
203
  expected << %(<option value="2003" selected="selected">2003</option>\n<option value="2004">2004</option>\n<option value="2005">2005</option>\n)
194
204
  expected << "</select>\n"
195
- expected << %(<span class="separator_year">年</span>)
205
+ expected << %(<span class="separator_year">yy</span>\n)
196
206
 
197
207
  expected << %(<select id="date_first_month" name="date[first][month]">\n)
198
208
  expected << %(<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6">June</option>\n<option value="7">July</option>\n<option value="8" selected="selected">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n)
199
209
  expected << "</select>\n"
200
- expected << %(<span class="separator_month">月</span>)
210
+ expected << %(<span class="separator_month">mm</span>\n)
201
211
 
202
212
  expected << %(<select id="date_first_day" name="date[first][day]">\n)
203
213
  expected << %(<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n)
204
214
  expected << "</select>\n"
205
- expected << %(<span class="separator_day">日</span>)
215
+ expected << %(<span class="separator_day">dd</span>\n)
206
216
 
207
217
  expected << " &mdash; "
208
218
 
209
219
  expected << %(<select id="date_first_hour" name="date[first][hour]">\n)
210
220
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08" selected="selected">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n)
211
221
  expected << "</select>\n"
212
- expected << %(<span class="separator_hour">時</span>)
222
+ expected << %(<span class="separator_hour">hh</span>\n)
213
223
 
214
224
  expected << " : "
215
225
 
216
226
  expected << %(<select id="date_first_minute" name="date[first][minute]">\n)
217
227
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04" selected="selected">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
218
228
  expected << "</select>\n"
219
- expected << %(<span class="separator_minute">分</span>)
229
+ expected << %(<span class="separator_minute">mm</span>\n)
220
230
 
221
- assert_dom_equal expected, select_datetime(Time.mktime(2003, 8, 16, 8, 4, 18), :start_year => 2003, :end_year => 2005, :prefix => "date[first]", :use_separators => {:year => '年', :month => '月', :day => '日', :hour => '時', :minute => '分'})
231
+ assert_dom_equal expected, select_datetime(Time.mktime(2003, 8, 16, 8, 4, 18), :start_year => 2003, :end_year => 2005, :prefix => "date[first]", :use_separators => true)
222
232
  end
223
233
 
224
234
  def test_select_time
@@ -247,16 +257,16 @@ class DateSelectSeparatorTest < ActionView::TestCase
247
257
  expected << %(<select id="date_hour" name="date[hour]">\n)
248
258
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08" selected="selected">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n)
249
259
  expected << "</select>\n"
250
- expected << %(<span class="separator_hour">時</span>)
260
+ expected << %(<span class="separator_hour">hh</span>\n)
251
261
 
252
262
  expected << " : "
253
263
 
254
264
  expected << %(<select id="date_minute" name="date[minute]">\n)
255
265
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04" selected="selected">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
256
266
  expected << "</select>\n"
257
- expected << %(<span class="separator_minute">分</span>)
267
+ expected << %(<span class="separator_minute">mm</span>\n)
258
268
 
259
- assert_dom_equal expected, select_time(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => {:hour => '時', :minute => '分'})
269
+ assert_dom_equal expected, select_time(Time.mktime(2003, 8, 16, 8, 4, 18), :use_separators => true)
260
270
  end
261
271
 
262
272
  def test_select_time_with_seconds
@@ -291,23 +301,23 @@ class DateSelectSeparatorTest < ActionView::TestCase
291
301
  expected << %(<select id="date_hour" name="date[hour]">\n)
292
302
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08" selected="selected">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n)
293
303
  expected << "</select>\n"
294
- expected << %(<span class="separator_hour">時</span>)
304
+ expected << %(<span class="separator_hour">hh</span>\n)
295
305
 
296
306
  expected << ' : '
297
307
 
298
308
  expected << %(<select id="date_minute" name="date[minute]">\n)
299
309
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04" selected="selected">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
300
310
  expected << "</select>\n"
301
- expected << %(<span class="separator_minute">分</span>)
311
+ expected << %(<span class="separator_minute">mm</span>\n)
302
312
 
303
313
  expected << ' : '
304
314
 
305
315
  expected << %(<select id="date_second" name="date[second]">\n)
306
316
  expected << %(<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18" selected="selected">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n)
307
317
  expected << "</select>\n"
308
- expected << %(<span class="separator_second">秒</span>)
318
+ expected << %(<span class="separator_second">ss</span>\n)
309
319
 
310
- assert_dom_equal expected, select_time(Time.mktime(2003, 8, 16, 8, 4, 18), :include_seconds => true, :use_separators => {:hour => '時', :minute => '分', :second => '秒'})
320
+ assert_dom_equal expected, select_time(Time.mktime(2003, 8, 16, 8, 4, 18), :include_seconds => true, :use_separators => true)
311
321
  end
312
322
 
313
323
  def test_time_select
@@ -340,14 +350,14 @@ class DateSelectSeparatorTest < ActionView::TestCase
340
350
  expected << %(<select id="post_written_on_4i" name="post[written_on(4i)]">\n)
341
351
  0.upto(23) { |i| expected << %(<option value="#{sprintf("%02d", i)}"#{' selected="selected"' if i == 15}>#{sprintf("%02d", i)}</option>\n) }
342
352
  expected << "</select>\n"
343
- expected << %(<span class="separator_hour">時</span>)
353
+ expected << %(<span class="separator_hour">hh</span>\n)
344
354
  expected << " : "
345
355
  expected << %(<select id="post_written_on_5i" name="post[written_on(5i)]">\n)
346
356
  0.upto(59) { |i| expected << %(<option value="#{sprintf("%02d", i)}"#{' selected="selected"' if i == 16}>#{sprintf("%02d", i)}</option>\n) }
347
357
  expected << "</select>\n"
348
- expected << %(<span class="separator_minute">分</span>)
358
+ expected << %(<span class="separator_minute">mm</span>\n)
349
359
 
350
- assert_dom_equal expected, time_select("post", "written_on", :use_separators => {:hour => '時', :minute => '分'})
360
+ assert_dom_equal expected, time_select("post", "written_on", :use_separators => true)
351
361
  end
352
362
 
353
363
  def test_time_select_with_seconds
@@ -384,19 +394,19 @@ class DateSelectSeparatorTest < ActionView::TestCase
384
394
  expected << %(<select id="post_written_on_4i" name="post[written_on(4i)]">\n)
385
395
  0.upto(23) { |i| expected << %(<option value="#{sprintf("%02d", i)}"#{' selected="selected"' if i == 15}>#{sprintf("%02d", i)}</option>\n) }
386
396
  expected << "</select>\n"
387
- expected << %(<span class="separator_hour">時</span>)
397
+ expected << %(<span class="separator_hour">hh</span>\n)
388
398
  expected << " : "
389
399
  expected << %(<select id="post_written_on_5i" name="post[written_on(5i)]">\n)
390
400
  0.upto(59) { |i| expected << %(<option value="#{sprintf("%02d", i)}"#{' selected="selected"' if i == 16}>#{sprintf("%02d", i)}</option>\n) }
391
401
  expected << "</select>\n"
392
- expected << %(<span class="separator_minute">分</span>)
402
+ expected << %(<span class="separator_minute">mm</span>\n)
393
403
  expected << " : "
394
404
  expected << %(<select id="post_written_on_6i" name="post[written_on(6i)]">\n)
395
405
  0.upto(59) { |i| expected << %(<option value="#{sprintf("%02d", i)}"#{' selected="selected"' if i == 35}>#{sprintf("%02d", i)}</option>\n) }
396
406
  expected << "</select>\n"
397
- expected << %(<span class="separator_second">秒</span>)
407
+ expected << %(<span class="separator_second">ss</span>\n)
398
408
 
399
- assert_dom_equal expected, time_select("post", "written_on", :include_seconds => true, :use_separators => {:hour => '時', :minute => '分', :second => '秒'})
409
+ assert_dom_equal expected, time_select("post", "written_on", :include_seconds => true, :use_separators => true)
400
410
  end
401
411
 
402
412
  def test_datetime_select
@@ -435,31 +445,31 @@ class DateSelectSeparatorTest < ActionView::TestCase
435
445
  expected = %{<select id="post_updated_at_1i" name="post[updated_at(1i)]">\n}
436
446
  expected << %{<option value="1999">1999</option>\n<option value="2000">2000</option>\n<option value="2001">2001</option>\n<option value="2002">2002</option>\n<option value="2003">2003</option>\n<option value="2004" selected="selected">2004</option>\n<option value="2005">2005</option>\n<option value="2006">2006</option>\n<option value="2007">2007</option>\n<option value="2008">2008</option>\n<option value="2009">2009</option>\n}
437
447
  expected << "</select>\n"
438
- expected << %(<span class="separator_year">年</span>)
448
+ expected << %(<span class="separator_year">yy</span>\n)
439
449
 
440
450
  expected << %{<select id="post_updated_at_2i" name="post[updated_at(2i)]">\n}
441
451
  expected << %{<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6" selected="selected">June</option>\n<option value="7">July</option>\n<option value="8">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n}
442
452
  expected << "</select>\n"
443
- expected << %(<span class="separator_month">月</span>)
453
+ expected << %(<span class="separator_month">mm</span>\n)
444
454
 
445
455
  expected << %{<select id="post_updated_at_3i" name="post[updated_at(3i)]">\n}
446
456
  expected << %{<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15" selected="selected">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n}
447
457
  expected << "</select>\n"
448
- expected << %(<span class="separator_day">日</span>)
458
+ expected << %(<span class="separator_day">dd</span>\n)
449
459
 
450
460
  expected << " &mdash; "
451
461
 
452
462
  expected << %{<select id="post_updated_at_4i" name="post[updated_at(4i)]">\n}
453
463
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n}
454
464
  expected << "</select>\n"
455
- expected << %(<span class="separator_hour">時</span>)
465
+ expected << %(<span class="separator_hour">hh</span>\n)
456
466
  expected << " : "
457
467
  expected << %{<select id="post_updated_at_5i" name="post[updated_at(5i)]">\n}
458
468
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35" selected="selected">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n}
459
469
  expected << "</select>\n"
460
- expected << %(<span class="separator_minute">分</span>)
470
+ expected << %(<span class="separator_minute">mm</span>\n)
461
471
 
462
- assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:year => '年', :month => '月', :day => '日', :hour => '時', :minute => '分'})
472
+ assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => true)
463
473
  end
464
474
 
465
475
  def test_datetime_select_with_custom_separators_and_html_tag
@@ -469,31 +479,31 @@ class DateSelectSeparatorTest < ActionView::TestCase
469
479
  expected = %{<select id="post_updated_at_1i" name="post[updated_at(1i)]">\n}
470
480
  expected << %{<option value="1999">1999</option>\n<option value="2000">2000</option>\n<option value="2001">2001</option>\n<option value="2002">2002</option>\n<option value="2003">2003</option>\n<option value="2004" selected="selected">2004</option>\n<option value="2005">2005</option>\n<option value="2006">2006</option>\n<option value="2007">2007</option>\n<option value="2008">2008</option>\n<option value="2009">2009</option>\n}
471
481
  expected << "</select>\n"
472
- expected << %(<div class="separator_year">年</div>)
482
+ expected << %(<div class="separator_year">yy</div>\n)
473
483
 
474
484
  expected << %{<select id="post_updated_at_2i" name="post[updated_at(2i)]">\n}
475
485
  expected << %{<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6" selected="selected">June</option>\n<option value="7">July</option>\n<option value="8">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n}
476
486
  expected << "</select>\n"
477
- expected << %(<div class="separator_month">月</div>)
487
+ expected << %(<div class="separator_month">mm</div>\n)
478
488
 
479
489
  expected << %{<select id="post_updated_at_3i" name="post[updated_at(3i)]">\n}
480
490
  expected << %{<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15" selected="selected">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n}
481
491
  expected << "</select>\n"
482
- expected << %(<div class="separator_day">日</div>)
492
+ expected << %(<div class="separator_day">dd</div>\n)
483
493
 
484
494
  expected << " &mdash; "
485
495
 
486
496
  expected << %{<select id="post_updated_at_4i" name="post[updated_at(4i)]">\n}
487
497
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n}
488
498
  expected << "</select>\n"
489
- expected << %(<div class="separator_hour">時</div>)
499
+ expected << %(<div class="separator_hour">hh</div>\n)
490
500
  expected << " : "
491
501
  expected << %{<select id="post_updated_at_5i" name="post[updated_at(5i)]">\n}
492
502
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35" selected="selected">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n}
493
503
  expected << "</select>\n"
494
- expected << %(<div class="separator_minute">分</div>)
504
+ expected << %(<div class="separator_minute">mm</div>\n)
495
505
 
496
- assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:year => '年', :month => '月', :day => '日', :hour => '時', :minute => '分', :html_tag => :div})
506
+ assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:html_tag => :div})
497
507
  end
498
508
 
499
509
  def test_datetime_select_with_custom_separators_and_class_prefix
@@ -503,31 +513,31 @@ class DateSelectSeparatorTest < ActionView::TestCase
503
513
  expected = %{<select id="post_updated_at_1i" name="post[updated_at(1i)]">\n}
504
514
  expected << %{<option value="1999">1999</option>\n<option value="2000">2000</option>\n<option value="2001">2001</option>\n<option value="2002">2002</option>\n<option value="2003">2003</option>\n<option value="2004" selected="selected">2004</option>\n<option value="2005">2005</option>\n<option value="2006">2006</option>\n<option value="2007">2007</option>\n<option value="2008">2008</option>\n<option value="2009">2009</option>\n}
505
515
  expected << "</select>\n"
506
- expected << %(<span class="prefix_year">年</span>)
516
+ expected << %(<span class="foo_year">yy</span>\n)
507
517
 
508
518
  expected << %{<select id="post_updated_at_2i" name="post[updated_at(2i)]">\n}
509
519
  expected << %{<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6" selected="selected">June</option>\n<option value="7">July</option>\n<option value="8">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n}
510
520
  expected << "</select>\n"
511
- expected << %(<span class="prefix_month">月</span>)
521
+ expected << %(<span class="foo_month">mm</span>\n)
512
522
 
513
523
  expected << %{<select id="post_updated_at_3i" name="post[updated_at(3i)]">\n}
514
524
  expected << %{<option value="1">1</option>\n<option value="2">2</option>\n<option value="3">3</option>\n<option value="4">4</option>\n<option value="5">5</option>\n<option value="6">6</option>\n<option value="7">7</option>\n<option value="8">8</option>\n<option value="9">9</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15" selected="selected">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n}
515
525
  expected << "</select>\n"
516
- expected << %(<span class="prefix_day">日</span>)
526
+ expected << %(<span class="foo_day">dd</span>\n)
517
527
 
518
528
  expected << " &mdash; "
519
529
 
520
530
  expected << %{<select id="post_updated_at_4i" name="post[updated_at(4i)]">\n}
521
531
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16" selected="selected">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n}
522
532
  expected << "</select>\n"
523
- expected << %(<span class="prefix_hour">時</span>)
533
+ expected << %(<span class="foo_hour">hh</span>\n)
524
534
  expected << " : "
525
535
  expected << %{<select id="post_updated_at_5i" name="post[updated_at(5i)]">\n}
526
536
  expected << %{<option value="00">00</option>\n<option value="01">01</option>\n<option value="02">02</option>\n<option value="03">03</option>\n<option value="04">04</option>\n<option value="05">05</option>\n<option value="06">06</option>\n<option value="07">07</option>\n<option value="08">08</option>\n<option value="09">09</option>\n<option value="10">10</option>\n<option value="11">11</option>\n<option value="12">12</option>\n<option value="13">13</option>\n<option value="14">14</option>\n<option value="15">15</option>\n<option value="16">16</option>\n<option value="17">17</option>\n<option value="18">18</option>\n<option value="19">19</option>\n<option value="20">20</option>\n<option value="21">21</option>\n<option value="22">22</option>\n<option value="23">23</option>\n<option value="24">24</option>\n<option value="25">25</option>\n<option value="26">26</option>\n<option value="27">27</option>\n<option value="28">28</option>\n<option value="29">29</option>\n<option value="30">30</option>\n<option value="31">31</option>\n<option value="32">32</option>\n<option value="33">33</option>\n<option value="34">34</option>\n<option value="35" selected="selected">35</option>\n<option value="36">36</option>\n<option value="37">37</option>\n<option value="38">38</option>\n<option value="39">39</option>\n<option value="40">40</option>\n<option value="41">41</option>\n<option value="42">42</option>\n<option value="43">43</option>\n<option value="44">44</option>\n<option value="45">45</option>\n<option value="46">46</option>\n<option value="47">47</option>\n<option value="48">48</option>\n<option value="49">49</option>\n<option value="50">50</option>\n<option value="51">51</option>\n<option value="52">52</option>\n<option value="53">53</option>\n<option value="54">54</option>\n<option value="55">55</option>\n<option value="56">56</option>\n<option value="57">57</option>\n<option value="58">58</option>\n<option value="59">59</option>\n}
527
537
  expected << "</select>\n"
528
- expected << %(<span class="prefix_minute">分</span>)
538
+ expected << %(<span class="foo_minute">mm</span>\n)
529
539
 
530
- assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:year => '年', :month => '月', :day => '日', :hour => '時', :minute => '分', :class_prefix => 'prefix'})
540
+ assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:class_prefix => 'foo'})
531
541
  end
532
542
 
533
543
  def test_datetime_select_with_inline_custom_separators_except_month
@@ -535,13 +545,42 @@ class DateSelectSeparatorTest < ActionView::TestCase
535
545
  @post.updated_at = Time.local(2004, 6, 15, 16, 35)
536
546
 
537
547
  expected = %{<select id="post_updated_at_1i" name="post[updated_at(1i)]">\n}
538
- expected << %{<option value="1999">1999年</option>\n<option value="2000">2000年</option>\n<option value="2001">2001年</option>\n<option value="2002">2002年</option>\n<option value="2003">2003年</option>\n<option value="2004" selected="selected">2004年</option>\n<option value="2005">2005年</option>\n<option value="2006">2006年</option>\n<option value="2007">2007年</option>\n<option value="2008">2008年</option>\n<option value="2009">2009年</option>\n}
548
+ expected << %{<option value="1999">1999yy</option>\n<option value="2000">2000yy</option>\n<option value="2001">2001yy</option>\n<option value="2002">2002yy</option>\n<option value="2003">2003yy</option>\n<option value="2004" selected="selected">2004yy</option>\n<option value="2005">2005yy</option>\n<option value="2006">2006yy</option>\n<option value="2007">2007yy</option>\n<option value="2008">2008yy</option>\n<option value="2009">2009yy</option>\n}
539
549
  expected << "</select>\n"
540
550
 
541
551
  expected << %{<select id="post_updated_at_2i" name="post[updated_at(2i)]">\n}
542
552
  expected << %{<option value="1">January</option>\n<option value="2">February</option>\n<option value="3">March</option>\n<option value="4">April</option>\n<option value="5">May</option>\n<option value="6" selected="selected">June</option>\n<option value="7">July</option>\n<option value="8">August</option>\n<option value="9">September</option>\n<option value="10">October</option>\n<option value="11">November</option>\n<option value="12">December</option>\n}
543
553
  expected << "</select>\n"
544
554
 
555
+ expected << %{<select id="post_updated_at_3i" name="post[updated_at(3i)]">\n}
556
+ expected << %{<option value="1">1dd</option>\n<option value="2">2dd</option>\n<option value="3">3dd</option>\n<option value="4">4dd</option>\n<option value="5">5dd</option>\n<option value="6">6dd</option>\n<option value="7">7dd</option>\n<option value="8">8dd</option>\n<option value="9">9dd</option>\n<option value="10">10dd</option>\n<option value="11">11dd</option>\n<option value="12">12dd</option>\n<option value="13">13dd</option>\n<option value="14">14dd</option>\n<option value="15" selected="selected">15dd</option>\n<option value="16">16dd</option>\n<option value="17">17dd</option>\n<option value="18">18dd</option>\n<option value="19">19dd</option>\n<option value="20">20dd</option>\n<option value="21">21dd</option>\n<option value="22">22dd</option>\n<option value="23">23dd</option>\n<option value="24">24dd</option>\n<option value="25">25dd</option>\n<option value="26">26dd</option>\n<option value="27">27dd</option>\n<option value="28">28dd</option>\n<option value="29">29dd</option>\n<option value="30">30dd</option>\n<option value="31">31dd</option>\n}
557
+ expected << "</select>\n"
558
+
559
+ expected << " &mdash; "
560
+
561
+ expected << %{<select id="post_updated_at_4i" name="post[updated_at(4i)]">\n}
562
+ expected << %{<option value="00">00hh</option>\n<option value="01">01hh</option>\n<option value="02">02hh</option>\n<option value="03">03hh</option>\n<option value="04">04hh</option>\n<option value="05">05hh</option>\n<option value="06">06hh</option>\n<option value="07">07hh</option>\n<option value="08">08hh</option>\n<option value="09">09hh</option>\n<option value="10">10hh</option>\n<option value="11">11hh</option>\n<option value="12">12hh</option>\n<option value="13">13hh</option>\n<option value="14">14hh</option>\n<option value="15">15hh</option>\n<option value="16" selected="selected">16hh</option>\n<option value="17">17hh</option>\n<option value="18">18hh</option>\n<option value="19">19hh</option>\n<option value="20">20hh</option>\n<option value="21">21hh</option>\n<option value="22">22hh</option>\n<option value="23">23hh</option>\n}
563
+ expected << "</select>\n"
564
+ expected << " : "
565
+ expected << %{<select id="post_updated_at_5i" name="post[updated_at(5i)]">\n}
566
+ expected << %{<option value="00">00mm</option>\n<option value="01">01mm</option>\n<option value="02">02mm</option>\n<option value="03">03mm</option>\n<option value="04">04mm</option>\n<option value="05">05mm</option>\n<option value="06">06mm</option>\n<option value="07">07mm</option>\n<option value="08">08mm</option>\n<option value="09">09mm</option>\n<option value="10">10mm</option>\n<option value="11">11mm</option>\n<option value="12">12mm</option>\n<option value="13">13mm</option>\n<option value="14">14mm</option>\n<option value="15">15mm</option>\n<option value="16">16mm</option>\n<option value="17">17mm</option>\n<option value="18">18mm</option>\n<option value="19">19mm</option>\n<option value="20">20mm</option>\n<option value="21">21mm</option>\n<option value="22">22mm</option>\n<option value="23">23mm</option>\n<option value="24">24mm</option>\n<option value="25">25mm</option>\n<option value="26">26mm</option>\n<option value="27">27mm</option>\n<option value="28">28mm</option>\n<option value="29">29mm</option>\n<option value="30">30mm</option>\n<option value="31">31mm</option>\n<option value="32">32mm</option>\n<option value="33">33mm</option>\n<option value="34">34mm</option>\n<option value="35" selected="selected">35mm</option>\n<option value="36">36mm</option>\n<option value="37">37mm</option>\n<option value="38">38mm</option>\n<option value="39">39mm</option>\n<option value="40">40mm</option>\n<option value="41">41mm</option>\n<option value="42">42mm</option>\n<option value="43">43mm</option>\n<option value="44">44mm</option>\n<option value="45">45mm</option>\n<option value="46">46mm</option>\n<option value="47">47mm</option>\n<option value="48">48mm</option>\n<option value="49">49mm</option>\n<option value="50">50mm</option>\n<option value="51">51mm</option>\n<option value="52">52mm</option>\n<option value="53">53mm</option>\n<option value="54">54mm</option>\n<option value="55">55mm</option>\n<option value="56">56mm</option>\n<option value="57">57mm</option>\n<option value="58">58mm</option>\n<option value="59">59mm</option>\n}
567
+ expected << "</select>\n"
568
+
569
+ assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:inline => true})
570
+ end
571
+
572
+ def test_datetime_select_with_ja_inline_custom_separators_except_month
573
+ @post = Post.new
574
+ @post.updated_at = Time.local(2004, 6, 15, 16, 35)
575
+
576
+ expected = %{<select id="post_updated_at_1i" name="post[updated_at(1i)]">\n}
577
+ expected << %{<option value="1999">1999年</option>\n<option value="2000">2000年</option>\n<option value="2001">2001年</option>\n<option value="2002">2002年</option>\n<option value="2003">2003年</option>\n<option value="2004" selected="selected">2004年</option>\n<option value="2005">2005年</option>\n<option value="2006">2006年</option>\n<option value="2007">2007年</option>\n<option value="2008">2008年</option>\n<option value="2009">2009年</option>\n}
578
+ expected << "</select>\n"
579
+
580
+ expected << %{<select id="post_updated_at_2i" name="post[updated_at(2i)]">\n}
581
+ expected << %{<option value="1">1月</option>\n<option value="2">2月</option>\n<option value="3">3月</option>\n<option value="4">4月</option>\n<option value="5">5月</option>\n<option value="6" selected="selected">6月</option>\n<option value="7">7月</option>\n<option value="8">8月</option>\n<option value="9">9月</option>\n<option value="10">10月</option>\n<option value="11">11月</option>\n<option value="12">12月</option>\n}
582
+ expected << "</select>\n"
583
+
545
584
  expected << %{<select id="post_updated_at_3i" name="post[updated_at(3i)]">\n}
546
585
  expected << %{<option value="1">1日</option>\n<option value="2">2日</option>\n<option value="3">3日</option>\n<option value="4">4日</option>\n<option value="5">5日</option>\n<option value="6">6日</option>\n<option value="7">7日</option>\n<option value="8">8日</option>\n<option value="9">9日</option>\n<option value="10">10日</option>\n<option value="11">11日</option>\n<option value="12">12日</option>\n<option value="13">13日</option>\n<option value="14">14日</option>\n<option value="15" selected="selected">15日</option>\n<option value="16">16日</option>\n<option value="17">17日</option>\n<option value="18">18日</option>\n<option value="19">19日</option>\n<option value="20">20日</option>\n<option value="21">21日</option>\n<option value="22">22日</option>\n<option value="23">23日</option>\n<option value="24">24日</option>\n<option value="25">25日</option>\n<option value="26">26日</option>\n<option value="27">27日</option>\n<option value="28">28日</option>\n<option value="29">29日</option>\n<option value="30">30日</option>\n<option value="31">31日</option>\n}
547
586
  expected << "</select>\n"
@@ -556,6 +595,6 @@ class DateSelectSeparatorTest < ActionView::TestCase
556
595
  expected << %{<option value="00">00分</option>\n<option value="01">01分</option>\n<option value="02">02分</option>\n<option value="03">03分</option>\n<option value="04">04分</option>\n<option value="05">05分</option>\n<option value="06">06分</option>\n<option value="07">07分</option>\n<option value="08">08分</option>\n<option value="09">09分</option>\n<option value="10">10分</option>\n<option value="11">11分</option>\n<option value="12">12分</option>\n<option value="13">13分</option>\n<option value="14">14分</option>\n<option value="15">15分</option>\n<option value="16">16分</option>\n<option value="17">17分</option>\n<option value="18">18分</option>\n<option value="19">19分</option>\n<option value="20">20分</option>\n<option value="21">21分</option>\n<option value="22">22分</option>\n<option value="23">23分</option>\n<option value="24">24分</option>\n<option value="25">25分</option>\n<option value="26">26分</option>\n<option value="27">27分</option>\n<option value="28">28分</option>\n<option value="29">29分</option>\n<option value="30">30分</option>\n<option value="31">31分</option>\n<option value="32">32分</option>\n<option value="33">33分</option>\n<option value="34">34分</option>\n<option value="35" selected="selected">35分</option>\n<option value="36">36分</option>\n<option value="37">37分</option>\n<option value="38">38分</option>\n<option value="39">39分</option>\n<option value="40">40分</option>\n<option value="41">41分</option>\n<option value="42">42分</option>\n<option value="43">43分</option>\n<option value="44">44分</option>\n<option value="45">45分</option>\n<option value="46">46分</option>\n<option value="47">47分</option>\n<option value="48">48分</option>\n<option value="49">49分</option>\n<option value="50">50分</option>\n<option value="51">51分</option>\n<option value="52">52分</option>\n<option value="53">53分</option>\n<option value="54">54分</option>\n<option value="55">55分</option>\n<option value="56">56分</option>\n<option value="57">57分</option>\n<option value="58">58分</option>\n<option value="59">59分</option>\n}
557
596
  expected << "</select>\n"
558
597
 
559
- assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:inline => true, :year => '年', :day => '日', :hour => '時', :minute => '分'})
598
+ assert_dom_equal expected, datetime_select("post", "updated_at", :use_separators => {:inline => true}, :locale => :ja)
560
599
  end
561
600
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: date_select_separator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
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: 2013-03-04 00:00:00.000000000 Z
12
+ date: 2013-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails