diff options
Diffstat (limited to 'test/models')
| -rw-r--r-- | test/models/concerns/rrule_humanizer_test.rb | 15 | ||||
| -rw-r--r-- | test/models/helpers/content_helper_test.rb | 4 | ||||
| -rw-r--r-- | test/models/helpers/nodes_helper_test.rb | 21 |
3 files changed, 40 insertions, 0 deletions
diff --git a/test/models/concerns/rrule_humanizer_test.rb b/test/models/concerns/rrule_humanizer_test.rb index 500dbc7..279ff73 100644 --- a/test/models/concerns/rrule_humanizer_test.rb +++ b/test/models/concerns/rrule_humanizer_test.rb | |||
| @@ -81,4 +81,19 @@ class RruleHumanizerTest < ActiveSupport::TestCase | |||
| 81 | test "falls back to english for unknown locale" do | 81 | test "falls back to english for unknown locale" do |
| 82 | assert_equal "Every Tuesday", humanize("FREQ=WEEKLY;BYDAY=TU", :fr) | 82 | assert_equal "Every Tuesday", humanize("FREQ=WEEKLY;BYDAY=TU", :fr) |
| 83 | end | 83 | end |
| 84 | |||
| 85 | test "wday_abbr returns the correct German abbreviation for each day" do | ||
| 86 | monday = Time.parse("2026-07-06") # confirmed Monday | ||
| 87 | assert_equal "Mo", RruleHumanizer.wday_abbr(monday, :de) | ||
| 88 | assert_equal "Di", RruleHumanizer.wday_abbr(monday + 1.day, :de) | ||
| 89 | assert_equal "Mi", RruleHumanizer.wday_abbr(monday + 2.days, :de) | ||
| 90 | assert_equal "Do", RruleHumanizer.wday_abbr(monday + 3.days, :de) | ||
| 91 | assert_equal "Fr", RruleHumanizer.wday_abbr(monday + 4.days, :de) | ||
| 92 | assert_equal "Sa", RruleHumanizer.wday_abbr(monday + 5.days, :de) | ||
| 93 | assert_equal "So", RruleHumanizer.wday_abbr(monday + 6.days, :de) | ||
| 94 | end | ||
| 95 | |||
| 96 | test "wday_abbr falls back to :de for an unrecognized locale" do | ||
| 97 | assert_equal "Mo", RruleHumanizer.wday_abbr(Time.parse("2026-07-06"), :fr) | ||
| 98 | end | ||
| 84 | end | 99 | end |
diff --git a/test/models/helpers/content_helper_test.rb b/test/models/helpers/content_helper_test.rb index 2da82d7..a7ed478 100644 --- a/test/models/helpers/content_helper_test.rb +++ b/test/models/helpers/content_helper_test.rb | |||
| @@ -1,4 +1,8 @@ | |||
| 1 | require 'test_helper' | 1 | require 'test_helper' |
| 2 | 2 | ||
| 3 | class ContentHelperTest < ActionView::TestCase | 3 | class ContentHelperTest < ActionView::TestCase |
| 4 | test "weekday_abbr delegates through the current I18n locale" do | ||
| 5 | I18n.locale = :de | ||
| 6 | assert_equal "Mo", weekday_abbr(Time.parse("2026-07-06")) | ||
| 7 | end | ||
| 4 | end | 8 | end |
diff --git a/test/models/helpers/nodes_helper_test.rb b/test/models/helpers/nodes_helper_test.rb index 13011de..5d91a88 100644 --- a/test/models/helpers/nodes_helper_test.rb +++ b/test/models/helpers/nodes_helper_test.rb | |||
| @@ -1,4 +1,25 @@ | |||
| 1 | require 'test_helper' | 1 | require 'test_helper' |
| 2 | 2 | ||
| 3 | class NodesHelperTest < ActionView::TestCase | 3 | class NodesHelperTest < ActionView::TestCase |
| 4 | FakePage = Struct.new(:tag_list) | ||
| 5 | |||
| 6 | test "default_event_tag_mapping matches erfa-detail" do | ||
| 7 | page = FakePage.new(["erfa-detail"]) | ||
| 8 | assert_equal ["erfa-detail", "open-day"], default_event_tag_mapping(page) | ||
| 9 | end | ||
| 10 | |||
| 11 | test "default_event_tag_mapping matches chaostreff-detail" do | ||
| 12 | page = FakePage.new(["chaostreff-detail"]) | ||
| 13 | assert_equal ["chaostreff-detail", "open-day"], default_event_tag_mapping(page) | ||
| 14 | end | ||
| 15 | |||
| 16 | test "default_event_tag_mapping returns nil for unrelated tags" do | ||
| 17 | page = FakePage.new(["update"]) | ||
| 18 | assert_nil default_event_tag_mapping(page) | ||
| 19 | end | ||
| 20 | |||
| 21 | test "default_event_tag_list is nil without a matching tag" do | ||
| 22 | page = FakePage.new([]) | ||
| 23 | assert_nil default_event_tag_list(page) | ||
| 24 | end | ||
| 4 | end | 25 | end |
