| 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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
 | describe "Lines", type: :feature do
  login_user
  let(:line_referential) { create :line_referential }
  let!(:network) { create(:network) }
  let!(:company) { create(:company) }
  let!(:lines) { Array.new(2) { create :line_with_stop_areas, network: network, company: company, line_referential: line_referential } }
  let!(:group_of_line) { create(:group_of_line) }
  subject { lines.first }
  describe "index" do
    before(:each) { visit line_referential_lines_path(line_referential) }
    it "displays lines" do
      expect(page).to have_content(lines.first.name)
      expect(page).to have_content(lines.last.name)
    end
    it 'allows only R in CRUD' do
      expect(page).to have_link(I18n.t('actions.show'))
      expect(page).not_to have_link(I18n.t('actions.edit'), href: edit_referential_line_path(referential, lines.first))
      expect(page).not_to have_link(I18n.t('actions.destroy'), href: referential_line_path(referential, lines.first))
      expect(page).not_to have_link(I18n.t('actions.add'), href: new_referential_line_path(referential))
    end
    context 'filtering' do
      it 'supports filtering by name' do
        fill_in 'q[name_or_number_or_objectid_cont]', with: lines.first.name
        click_button 'search-btn'
        expect(page).to have_content(lines.first.name)
        expect(page).not_to have_content(lines.last.name)
      end
      it 'supports filtering by number' do
        fill_in 'q[name_or_number_or_objectid_cont]', with: lines.first.number
        click_button 'search-btn'
        expect(page).to have_content(lines.first.name)
        expect(page).not_to have_content(lines.last.name)
      end
      it 'supports filtering by objectid' do
        fill_in 'q[name_or_number_or_objectid_cont]', with: lines.first.objectid
        click_button 'search-btn'
        expect(page).to have_content(lines.first.name)
        expect(page).not_to have_content(lines.last.name)
      end
    end
  end
  describe "show" do
    it "displays line" do
      visit line_referential_line_path(line_referential, lines.first)
      expect(page).to have_content(lines.first.name)
    end
  end
  # Fixme #1780
  # describe "new" do
  #   it "creates line and return to show" do
  #     visit line_referential_lines_path(line_referential)
  #     click_link "Ajouter une ligne"
  #     fill_in "line_name", :with => "Line 1"
  #     fill_in "Numéro d'enregistrement", :with => "1"
  #     fill_in "Identifiant Neptune", :with => "chouette:test:Line:999"
  #     click_button("Créer ligne")
  #     expect(page).to have_content("Line 1")
  #   end
  # end
  # Fixme #1780
  # describe "new with group of line", :js => true do
  #   it "creates line and return to show" do
  #     visit new_line_referential_line_path(line_referential)
  #     fill_in "line_name", :with => "Line 1"
  #     fill_in "Numéro d'enregistrement", :with => "1"
  #     fill_in "Identifiant Neptune", :with => "test:Line:999"
  #     fill_in_token_input('line_group_of_line_tokens', :with => "#{group_of_line.name}")
  #     find_button("Créer ligne").trigger("click")
  #     expect(page).to have_text("Line 1")
  #     expect(page).to have_text("#{group_of_line.name}")
  #   end
  # end
  # Fixme #1780
  # describe "edit and return to show" do
  #   it "edit line" do
  #     visit line_referential_line_path(line_referential, subject)
  #     click_link "Editer cette ligne"
  #     fill_in "line_name", :with => "Line Modified"
  #     fill_in "Numéro d'enregistrement", :with => "test-1"
  #     click_button("Editer ligne")
  #     expect(page).to have_content("Line Modified")
  #   end
  # end
end
 |