aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/generators/test_unit/scaffold/templates/system_test.rb.tt
blob: 4f5bbf110870a210b549cef0a90d819153f59f88 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
require "application_system_test_case"

<% module_namespacing do -%>
class <%= class_name.pluralize %>Test < ApplicationSystemTestCase
  setup do
    @<%= singular_table_name %> = <%= fixture_name %>(:one)
  end

  test "visiting the index" do
    visit <%= plural_table_name %>_url
    assert_selector "h1", text: "<%= class_name.pluralize.titleize %>"
  end

  test "creating a <%= human_name %>" do
    visit <%= plural_table_name %>_url
    click_on "New <%= class_name.titleize %>"

    <%- attributes_hash.each do |attr, value| -%>
    <%- if boolean?(attr) -%>
    check "<%= attr.humanize %>" if <%= value %>
    <%- else -%>
    fill_in "<%= attr.humanize %>", with: <%= value %>
    <%- end -%>
    <%- end -%>
    click_on "Create <%= human_name %>"

    assert_text "<%= human_name %> was successfully created"
    click_on "Back"
  end

  test "updating a <%= human_name %>" do
    visit <%= plural_table_name %>_url
    click_on "Edit", match: :first

    <%- attributes_hash.each do |attr, value| -%>
    <%- if boolean?(attr) -%>
    check "<%= attr.humanize %>" if <%= value %>
    <%- else -%>
    fill_in "<%= attr.humanize %>", with: <%= value %>
    <%- end -%>
    <%- end -%>
    click_on "Update <%= human_name %>"

    assert_text "<%= human_name %> was successfully updated"
    click_on "Back"
  end

  test "destroying a <%= human_name %>" do
    visit <%= plural_table_name %>_url
    page.accept_confirm do
      click_on "Destroy", match: :first
    end

    assert_text "<%= human_name %> was successfully destroyed"
  end
end
<% end -%>