Project

General

Profile

Patch #41720 » 0002-Added-tests-for-context_menu_link-helper.patch

Katsuya HIDAKA, 2024-11-09 13:55

View differences:

test/helpers/context_menus_helper_test.rb
1
# frozen_string_literal: true
2

  
3
# Redmine - project management software
4
# Copyright (C) 2006-  Jean-Philippe Lang
5
#
6
# This program is free software; you can redistribute it and/or
7
# modify it under the terms of the GNU General Public License
8
# as published by the Free Software Foundation; either version 2
9
# of the License, or (at your option) any later version.
10
#
11
# This program is distributed in the hope that it will be useful,
12
# but WITHOUT ANY WARRANTY; without even the implied warranty of
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
# GNU General Public License for more details.
15
#
16
# You should have received a copy of the GNU General Public License
17
# along with this program; if not, write to the Free Software
18
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
19

  
20
require_relative '../test_helper'
21

  
22
class ContextMenusHelperTest < Redmine::HelperTest
23
  include ContextMenusHelper
24

  
25
  test '#context_menu_link' do
26
    html = context_menu_link('name', 'url', class: 'class-a')
27
    assert_select_in html, 'a.class-a[href=?]', 'url'
28

  
29
    # When :selected is true
30
    html = context_menu_link('name', 'url', selected: true, class: 'class-a class-b')
31
    assert_select_in html, 'a.class-a.class-b.icon.disabled.disabled[href=?]', '#' do
32
      assert_select 'svg.icon-svg'
33
    end
34

  
35
    # When :disabled is true
36
    html = context_menu_link('name', 'url', disabled: true, method: 'patch', data: { key: 'value' })
37
    assert_select_in html,
38
      'a.disabled[href=?][onclick=?]:not([method]):not([data-key])',
39
      '#', 'return false;'
40
  end
41
end
(2-2/5)