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
|
require_relative "test_helper"
class ControllerTest < ActionDispatch::IntegrationTest
def setup
Ahoy::Visit.delete_all
Ahoy::Event.delete_all
end
def test_works
get products_url
assert :success
assert_equal 1, Ahoy::Visit.count
assert_equal 1, Ahoy::Event.count
event = Ahoy::Event.last
assert_equal "Viewed products", event.name
end
def test_bad_visit_cookie
make_request(cookies: {"ahoy_visit" => "badtoken\255"})
assert_equal ahoy.visit_token, "badtoken"
end
def test_bad_visitor_cookie
make_request(cookies: {"ahoy_visitor" => "badtoken\255"})
assert_equal ahoy.visitor_token, "badtoken"
end
def test_bad_visit_header
make_request(headers: {"Ahoy-Visit" => "badtoken\255"})
assert_equal ahoy.visit_token, "badtoken"
end
def test_bad_visitor_header
make_request(headers: {"Ahoy-Visitor" => "badtoken\255"})
assert_equal ahoy.visitor_token, "badtoken"
end
private
def make_request(cookies: {}, headers: {})
cookies.each do |k, v|
self.cookies[k] = v
end
get products_url, headers: headers
assert_response :success
end
def ahoy
controller.ahoy
end
end
|