Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #10551: patch.diff

File patch.diff, 3.7 kB (added by rickm, 2 years ago)
  • actionpack/test/template/date_helper_test.rb

    old new  
    1717        '123' 
    1818      end 
    1919    end 
     20     
     21    NewPost = Struct.new("Post", :id, :written_on, :updated_at) 
     22    NewPost.class_eval do 
     23      def to_param 
     24        '' 
     25      end 
     26    end 
    2027  end 
    2128 
    2229  def test_distance_in_words 
     
    885892 
    886893    assert_equal expected, date_select("post[]", "written_on") 
    887894  end 
     895   
     896  def test_date_select_with_auto_index_when_id_is_nil 
     897    @post = NewPost.new 
     898    @post.written_on = Date.new(2004, 6, 15) 
    888899 
     900    expected = %{<select id="post__written_on_1i" name="post[][written_on(1i)]">\n} 
     901    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} 
     902    expected << "</select>\n" 
     903 
     904    expected << %{<select id="post__written_on_2i" name="post[][written_on(2i)]">\n} 
     905    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} 
     906    expected << "</select>\n" 
     907 
     908    expected << %{<select id="post__written_on_3i" name="post[][written_on(3i)]">\n} 
     909    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} 
     910    expected << "</select>\n" 
     911 
     912    assert_equal expected, date_select("post[]", "written_on") 
     913  end 
     914 
    889915  def test_date_select_with_different_order 
    890916    @post = Post.new 
    891917    @post.written_on = Date.new(2004, 6, 15) 
  • actionpack/lib/action_view/helpers/date_helper.rb

    old new  
    645645          prefix = "#{@object_name}" 
    646646          if options[:index] 
    647647            prefix << "[#{options[:index]}]" 
    648           elsif @auto_index 
     648          elsif defined?(@auto_index) 
    649649            prefix << "[#{@auto_index}]" 
    650650          end 
    651651          options.merge(:prefix => "#{prefix}[#{@method_name}(#{position}i)]")