X-Git-Url: https://git.njae.me.uk/?a=blobdiff_plain;f=vendor%2Frails%2Factionpack%2Ftest%2Ftemplate%2Fscriptaculous_helper_test.rb;fp=vendor%2Frails%2Factionpack%2Ftest%2Ftemplate%2Fscriptaculous_helper_test.rb;h=690a7751b50fab92b426fdc56f08f55b87f03121;hb=d115f2e23823271635bad69229a42cd8ac68debe;hp=0000000000000000000000000000000000000000;hpb=37cb670bf3ddde90b214e591f100ed4446469484;p=depot.git diff --git a/vendor/rails/actionpack/test/template/scriptaculous_helper_test.rb b/vendor/rails/actionpack/test/template/scriptaculous_helper_test.rb new file mode 100644 index 0000000..690a775 --- /dev/null +++ b/vendor/rails/actionpack/test/template/scriptaculous_helper_test.rb @@ -0,0 +1,90 @@ +require 'abstract_unit' + +class ScriptaculousHelperTest < ActionView::TestCase + tests ActionView::Helpers::ScriptaculousHelper + + def setup + @controller = Class.new do + def url_for(options) + url = "http://www.example.com/" + url << options[:action].to_s if options and options[:action] + url + end + end.new + end + + def test_effect + assert_equal "new Effect.Highlight(\"posts\",{});", visual_effect(:highlight, "posts") + assert_equal "new Effect.Highlight(\"posts\",{});", visual_effect("highlight", :posts) + assert_equal "new Effect.Highlight(\"posts\",{});", visual_effect(:highlight, :posts) + assert_equal "new Effect.Fade(\"fademe\",{duration:4.0});", visual_effect(:fade, "fademe", :duration => 4.0) + assert_equal "new Effect.Shake(element,{});", visual_effect(:shake) + assert_equal "new Effect.DropOut(\"dropme\",{queue:'end'});", visual_effect(:drop_out, 'dropme', :queue => :end) + assert_equal "new Effect.Highlight(\"status\",{endcolor:'#EEEEEE'});", visual_effect(:highlight, 'status', :endcolor => '#EEEEEE') + assert_equal "new Effect.Highlight(\"status\",{restorecolor:'#500000', startcolor:'#FEFEFE'});", visual_effect(:highlight, 'status', :restorecolor => '#500000', :startcolor => '#FEFEFE') + + # chop the queue params into a comma separated list + beginning, ending = 'new Effect.DropOut("dropme",{queue:{', '}});' + ve = [ + visual_effect(:drop_out, 'dropme', :queue => {:position => "end", :scope => "test", :limit => 2}), + visual_effect(:drop_out, 'dropme', :queue => {:scope => :list, :limit => 2}), + visual_effect(:drop_out, 'dropme', :queue => {:position => :end, :scope => :test, :limit => 2}) + ].collect { |v| v[beginning.length..-ending.length-1].split(',') } + + assert ve[0].include?("limit:2") + assert ve[0].include?("scope:'test'") + assert ve[0].include?("position:'end'") + + assert ve[1].include?("limit:2") + assert ve[1].include?("scope:'list'") + + assert ve[2].include?("limit:2") + assert ve[2].include?("scope:'test'") + assert ve[2].include?("position:'end'") + end + + def test_toggle_effects + assert_equal "Effect.toggle(\"posts\",'appear',{});", visual_effect(:toggle_appear, "posts") + assert_equal "Effect.toggle(\"posts\",'slide',{});", visual_effect(:toggle_slide, "posts") + assert_equal "Effect.toggle(\"posts\",'blind',{});", visual_effect(:toggle_blind, "posts") + assert_equal "Effect.toggle(\"posts\",'appear',{});", visual_effect("toggle_appear", "posts") + assert_equal "Effect.toggle(\"posts\",'slide',{});", visual_effect("toggle_slide", "posts") + assert_equal "Effect.toggle(\"posts\",'blind',{});", visual_effect("toggle_blind", "posts") + end + + + def test_sortable_element + assert_dom_equal %(), + sortable_element("mylist", :url => { :action => "order" }) + assert_equal %(), + sortable_element("mylist", :tag => "div", :constraint => "horizontal", :url => { :action => "order" }) + assert_dom_equal %||, + sortable_element("mylist", :containment => ['list1','list2'], :constraint => "horizontal", :url => { :action => "order" }) + assert_dom_equal %(), + sortable_element("mylist", :containment => 'list1', :constraint => "horizontal", :url => { :action => "order" }) + end + + def test_draggable_element + assert_dom_equal %(), + draggable_element("product_13") + assert_equal %(), + draggable_element("product_13", :revert => true) + end + + def test_drop_receiving_element + assert_dom_equal %(), + drop_receiving_element("droptarget1") + assert_dom_equal %(), + drop_receiving_element("droptarget1", :accept => 'products') + assert_dom_equal %(), + drop_receiving_element("droptarget1", :accept => 'products', :update => 'infobox') + assert_dom_equal %(), + drop_receiving_element("droptarget1", :accept => ['tshirts','mugs'], :update => 'infobox') + assert_dom_equal %(), + drop_receiving_element('droptarget1', :hoverclass=>'dropready', :url=>{:action=>'update_drop'}, :confirm => 'Are you sure?') + + end + def protect_against_forgery? + false + end +end