Sha256: a8a99f8d04459df9d536280760355461c8ab917268b55b8f5df99928b1f8f9ba
Contents?: true
Size: 1.66 KB
Versions: 14
Compression:
Stored size: 1.66 KB
Contents
# frozen_string_literal: true require_relative '../../test_helper' require 'rack' require 'logster/redis_store' require 'logster/middleware/reporter' class TestReporter < Minitest::Test def setup Logster.store = Logster::RedisStore.new Logster.store.clear_all Logster.config.enable_js_error_reporting = true end def test_logs_errors reporter = Logster::Middleware::Reporter.new(nil) env = Rack::MockRequest.env_for("/logs/report_js_error?message=hello") status, = reporter.call(env) assert_equal(200, status) assert_equal(1, Logster.store.count) end def test_respects_ban_on_errors Logster.config.enable_js_error_reporting = false reporter = Logster::Middleware::Reporter.new(nil) env = Rack::MockRequest.env_for("/logs/report_js_error?message=hello") status, = reporter.call(env) assert_equal(403, status) assert_equal(0, Logster.store.count) end def test_rate_limiting reporter = Logster::Middleware::Reporter.new(nil) env = Rack::MockRequest.env_for("/logs/report_js_error?message=hello") status, = reporter.call(env) assert_equal(200, status) assert_equal(1, Logster.store.count) reporter = Logster::Middleware::Reporter.new(nil) env = Rack::MockRequest.env_for("/logs/report_js_error?message=hello2") status, = reporter.call(env) assert_equal(429, status) assert_equal(1, Logster.store.count) reporter = Logster::Middleware::Reporter.new(nil) env = Rack::MockRequest.env_for("/logs/report_js_error?message=hello2", "REMOTE_ADDR" => "100.1.1.2") status, = reporter.call(env) assert_equal(200, status) assert_equal(2, Logster.store.count) end end
Version data entries
14 entries across 14 versions & 1 rubygems