mirror of
https://github.com/github/rails.git
synced 2026-01-10 07:07:54 -05:00
Deprecate link_to_function and button_to_function helpers
This commit is contained in:
@@ -82,6 +82,8 @@ module ActionView
|
||||
# # => <input class="ok" onclick="alert('Hello world!');" type="button" value="Greeting" />
|
||||
#
|
||||
def button_to_function(name, function=nil, html_options={})
|
||||
ActiveSupport::Deprecation.warn("button_to_function is deprecated and will be removed from Rails 4.0")
|
||||
|
||||
onclick = "#{"#{html_options[:onclick]}; " if html_options[:onclick]}#{function};"
|
||||
|
||||
tag(:input, html_options.merge(:type => 'button', :value => name, :onclick => onclick))
|
||||
@@ -100,6 +102,8 @@ module ActionView
|
||||
# # => <a class="nav_link" href="#" onclick="alert('Hello world!'); return false;">Greeting</a>
|
||||
#
|
||||
def link_to_function(name, function, html_options={})
|
||||
ActiveSupport::Deprecation.warn("link_to_function is deprecated and will be removed from Rails 4.0")
|
||||
|
||||
onclick = "#{"#{html_options[:onclick]}; " if html_options[:onclick]}#{function}; return false;"
|
||||
href = html_options[:href] || '#'
|
||||
|
||||
|
||||
@@ -46,33 +46,45 @@ class JavaScriptHelperTest < ActionView::TestCase
|
||||
end
|
||||
|
||||
def test_button_to_function
|
||||
assert_dom_equal %(<input type="button" onclick="alert('Hello world!');" value="Greeting" />),
|
||||
button_to_function("Greeting", "alert('Hello world!')")
|
||||
assert_deprecated "button_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal %(<input type="button" onclick="alert('Hello world!');" value="Greeting" />),
|
||||
button_to_function("Greeting", "alert('Hello world!')")
|
||||
end
|
||||
end
|
||||
|
||||
def test_button_to_function_with_onclick
|
||||
assert_dom_equal "<input onclick=\"alert('Goodbye World :('); alert('Hello world!');\" type=\"button\" value=\"Greeting\" />",
|
||||
button_to_function("Greeting", "alert('Hello world!')", :onclick => "alert('Goodbye World :(')")
|
||||
assert_deprecated "button_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal "<input onclick=\"alert('Goodbye World :('); alert('Hello world!');\" type=\"button\" value=\"Greeting\" />",
|
||||
button_to_function("Greeting", "alert('Hello world!')", :onclick => "alert('Goodbye World :(')")
|
||||
end
|
||||
end
|
||||
|
||||
def test_button_to_function_without_function
|
||||
assert_dom_equal "<input onclick=\";\" type=\"button\" value=\"Greeting\" />",
|
||||
button_to_function("Greeting")
|
||||
assert_deprecated "button_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal "<input onclick=\";\" type=\"button\" value=\"Greeting\" />",
|
||||
button_to_function("Greeting")
|
||||
end
|
||||
end
|
||||
|
||||
def test_link_to_function
|
||||
assert_dom_equal %(<a href="#" onclick="alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')")
|
||||
assert_deprecated "link_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal %(<a href="#" onclick="alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')")
|
||||
end
|
||||
end
|
||||
|
||||
def test_link_to_function_with_existing_onclick
|
||||
assert_dom_equal %(<a href="#" onclick="confirm('Sanity!'); alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')", :onclick => "confirm('Sanity!')")
|
||||
assert_deprecated "link_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal %(<a href="#" onclick="confirm('Sanity!'); alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')", :onclick => "confirm('Sanity!')")
|
||||
end
|
||||
end
|
||||
|
||||
def test_function_with_href
|
||||
assert_dom_equal %(<a href="http://example.com/" onclick="alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')", :href => 'http://example.com/')
|
||||
assert_deprecated "link_to_function is deprecated and will be removed from Rails 4.0" do
|
||||
assert_dom_equal %(<a href="http://example.com/" onclick="alert('Hello world!'); return false;">Greeting</a>),
|
||||
link_to_function("Greeting", "alert('Hello world!')", :href => 'http://example.com/')
|
||||
end
|
||||
end
|
||||
|
||||
def test_javascript_tag
|
||||
|
||||
Reference in New Issue
Block a user