In general, we always use relative URLs (using `_path`), but sometimes we were accidentally using absolute URLs (using `_url`). It's been reported i might cause some isuses if accepting both HTTP and HTTPS connections, although we've never seen the case. In any case, this change makes the code more consistent and makes the generated HTML cleaner.
41 lines
942 B
Ruby
41 lines
942 B
Ruby
require "rails_helper"
|
|
|
|
describe "Email campaigns" do
|
|
let(:campaign1) { create(:campaign) }
|
|
let(:campaign2) { create(:campaign) }
|
|
|
|
before do
|
|
login_as(create(:administrator).user)
|
|
end
|
|
|
|
scenario "Track email templates" do
|
|
3.times { visit root_path(track_id: campaign1.track_id) }
|
|
5.times { visit root_path(track_id: campaign2.track_id) }
|
|
|
|
visit admin_stats_path
|
|
click_link campaign1.name
|
|
|
|
expect(page).to have_content "#{campaign1.name} (3)"
|
|
|
|
click_link "Go back"
|
|
click_link campaign2.name
|
|
|
|
expect(page).to have_content "#{campaign2.name} (5)"
|
|
end
|
|
|
|
scenario "Do not track erroneous track_ids" do
|
|
visit root_path(track_id: campaign1.track_id)
|
|
visit root_path(track_id: "999")
|
|
|
|
visit admin_stats_path
|
|
click_link campaign1.name
|
|
|
|
expect(page).to have_content "#{campaign1.name} (1)"
|
|
|
|
click_link "Go back"
|
|
|
|
expect(page).not_to have_content campaign2.name.to_s
|
|
end
|
|
|
|
end
|