mirror of
https://github.com/TracksApp/tracks.git
synced 2026-01-07 01:38:50 +01:00
Removed superfluous 'tracks' directory at the root of the repository.
Testing commits to github.
This commit is contained in:
parent
6a42901514
commit
4cbf5a34d3
2269 changed files with 0 additions and 0 deletions
87
test/views/todos_helper_test.rb
Normal file
87
test/views/todos_helper_test.rb
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class TodosHelperTest < Test::Rails::HelperTestCase
|
||||
|
||||
def setup
|
||||
super
|
||||
end
|
||||
|
||||
include ActionView::Helpers::DateHelper
|
||||
include ApplicationHelper
|
||||
include TodosHelper
|
||||
|
||||
def user_time
|
||||
Time.now
|
||||
end
|
||||
|
||||
def format_date(date)
|
||||
if date
|
||||
date_format = "%d/%m/%Y"
|
||||
date.strftime("#{date_format}")
|
||||
else
|
||||
''
|
||||
end
|
||||
end
|
||||
|
||||
def test_show_date_in_past
|
||||
date = 3.days.ago.to_date
|
||||
html = show_date(date)
|
||||
formatted_date = format_date(date)
|
||||
assert_equal %Q{<a title="#{formatted_date}"><span class="red">Scheduled to show 3 days ago</span></a> }, html
|
||||
end
|
||||
|
||||
def test_show_date_today
|
||||
date = Time.now.to_date
|
||||
html = show_date(date)
|
||||
formatted_date = format_date(date)
|
||||
assert_equal %Q{<a title="#{formatted_date}"><span class="amber">Show Today</span></a> }, html
|
||||
end
|
||||
|
||||
def test_show_date_tomorrow
|
||||
date = 1.day.from_now.to_date
|
||||
html = show_date(date)
|
||||
formatted_date = format_date(date)
|
||||
assert_equal %Q{<a title="#{formatted_date}"><span class="amber">Show Tomorrow</span></a> }, html
|
||||
end
|
||||
|
||||
def test_show_date_future
|
||||
date = 10.days.from_now.to_date
|
||||
html = show_date(date)
|
||||
formatted_date = format_date(date)
|
||||
assert_equal %Q{<a title="#{formatted_date}"><span class="green">Show in 10 days</span></a> }, html
|
||||
end
|
||||
|
||||
def test_remote_star_icon_unstarred
|
||||
@todo = flexmock(:id => 1, :to_param => 1, :description => 'Get gas', :starred? => false)
|
||||
assert_remote_star_icon_helper_matches %r{<a href="/todos/1/toggle_star" class="icon star_item" title="star the action 'Get gas'"><img alt="Blank" class="unstarred_todo" src="/images/blank.png[?0-9]*" title="Star action" /></a>}
|
||||
assert_behavior_registered
|
||||
end
|
||||
|
||||
def test_remote_star_icon_starred
|
||||
@todo = flexmock(:id => 1, :to_param => 1, :description => 'Get gas', :starred? => true)
|
||||
assert_remote_star_icon_helper_matches %r{<a href="/todos/1/toggle_star" class="icon star_item" title="star the action 'Get gas'"><img alt="Blank" class="starred_todo" src="/images/blank.png[?0-9]*" title="Star action" /></a>}
|
||||
assert_behavior_registered
|
||||
end
|
||||
|
||||
def assert_remote_star_icon_helper_matches(regex)
|
||||
@controller.send :initialise_js_behaviours #simulate before filter
|
||||
output = remote_star_icon
|
||||
#puts output
|
||||
assert output =~ regex
|
||||
@controller.send :store_js_behaviours #simulate after filter
|
||||
end
|
||||
|
||||
def assert_behavior_registered
|
||||
behaviors = @controller.session[:js_behaviours]
|
||||
assert behaviors[:options][:reapply_after_ajax]
|
||||
assert_equal 1, behaviors[:rules].length
|
||||
rule = behaviors[:rules][0]
|
||||
assert_equal ".item-container a.star_item:click", rule[0]
|
||||
assert_equal "new Ajax.Request(this.href, {asynchronous:true, evalScripts:true, method:'put', parameters:{ _source_view : '' }})\n; return false;",
|
||||
rule[1]
|
||||
end
|
||||
|
||||
def protect_against_forgery?
|
||||
false
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue