jquery-rails 4.0.3 → 4.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,91 @@
1
+ require 'ostruct'
2
+ require_relative 'test_helper'
3
+ require_relative '../lib/jquery/assert_select'
4
+
5
+ class AssertSelectJQueryTest < ActiveSupport::TestCase
6
+ include Rails::Dom::Testing::Assertions::SelectorAssertions
7
+ attr_reader :response
8
+
9
+ JAVASCRIPT_TEST_OUTPUT = <<-JS
10
+ $("#card").show("blind", 1000);
11
+ $("#id").html('<div><p>something</p></div>');
12
+ $('#card').html('<div><p>something else</p></div>');
13
+ jQuery("#id").replaceWith("<div><p>something</p></div>");
14
+ $("<div><p>something</p></div>").appendTo("#id");
15
+ $("<div><p>something else</p></div>").appendTo("#id");
16
+ jQuery("<div><p>something</p></div>").prependTo("#id");
17
+ $('#id').remove();
18
+ jQuery("#id").hide();
19
+ $("[data-placeholder~=name]").remove();
20
+ $("#cart tr:not(.total_line) > *").remove();
21
+ $("[href|=\"val\"][href$=\"val\"][href^=\"val\"]").remove();
22
+ $("tr + td, li").remove();
23
+
24
+ // without semicolon
25
+ $("#browser_cart").hide("blind", 1000)
26
+
27
+ $('#item').html('<div><span>\\`Total\\`: \\$12.34</span></div>');
28
+ JS
29
+
30
+ setup do
31
+ @response = OpenStruct.new(content_type: 'text/javascript', body: JAVASCRIPT_TEST_OUTPUT)
32
+ end
33
+
34
+ def test_target_as_receiver
35
+ assert_nothing_raised do
36
+ assert_select_jquery :show, :blind, '#card'
37
+ assert_select_jquery :hide, :blind, '#browser_cart'
38
+ assert_select_jquery :html, '#id' do
39
+ assert_select 'p', 'something'
40
+ end
41
+ assert_select_jquery :replaceWith, '#id' do
42
+ assert_select 'p', 'something'
43
+ end
44
+ assert_select_jquery :remove, "[data-placeholder~=name]"
45
+ assert_select_jquery :remove, "#cart tr:not(.total_line) > *"
46
+ assert_select_jquery :remove, "[href|=\"val\"][href$=\"val\"][href^=\"val\"]"
47
+ assert_select_jquery :remove, "tr + td, li"
48
+
49
+ assert_select_jquery :html, '#item' do
50
+ assert_select 'span', '`Total`: $12.34'
51
+ end
52
+ end
53
+
54
+ assert_raise Minitest::Assertion, "No JQuery call matches [:show, :some_wrong]" do
55
+ assert_select_jquery :show, :some_wrong
56
+ end
57
+
58
+ assert_raise Minitest::Assertion, "<something else> was expected but was <something>" do
59
+ assert_select_jquery :html, '#id' do
60
+ assert_select 'p', 'something else'
61
+ end
62
+ end
63
+ end
64
+
65
+ def test_target_as_argument
66
+ assert_nothing_raised do
67
+ assert_select_jquery :appendTo, '#id' do
68
+ assert_select 'p', 'something'
69
+ assert_select 'p', 'something else'
70
+ end
71
+ assert_select_jquery :prependTo, '#id' do
72
+ assert_select 'p', 'something'
73
+ end
74
+ end
75
+
76
+ assert_raise Minitest::Assertion, 'No JQuery call matches [:prependTo, "#wrong_id"]' do
77
+ assert_select_jquery :prependTo, '#wrong_id'
78
+ end
79
+ end
80
+
81
+ def test_argumentless
82
+ assert_nothing_raised do
83
+ assert_select_jquery :remove
84
+ assert_select_jquery :hide
85
+ end
86
+
87
+ assert_raise Minitest::Assertion, 'No JQuery call matches [:wrong_function]' do
88
+ assert_select_jquery :wrong_function
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,6 @@
1
+ require 'nokogiri'
2
+ require 'active_support'
3
+ require 'active_support/test_case'
4
+ require 'minitest/autorun'
5
+
6
+ ActiveSupport::TestCase.test_order = :random