load integrations by default when possible

this way, one can document a less special migration path, and even
change integration dirs if so desired.
This commit is contained in:
HoneyryderChuck 2022-12-28 15:31:14 +00:00
parent ee5c94a113
commit 1205c6964f
4 changed files with 123 additions and 117 deletions

View File

@ -1,8 +1,8 @@
# frozen_string_literal: true # frozen_string_literal: true
require "ddtrace"
require "test_helper" require "test_helper"
require "support/http_helpers" require "support/http_helpers"
require "ddtrace"
require "httpx/adapters/datadog" require "httpx/adapters/datadog"
class DatadogTest < Minitest::Test class DatadogTest < Minitest::Test

View File

@ -1,15 +1,14 @@
# frozen_string_literal: true # frozen_string_literal: true
require "logger" if RUBY_VERSION >= "2.4.0"
require "stringio" require "logger"
require "test_helper" require "stringio"
require "support/http_helpers" require "sentry-ruby"
begin require "test_helper"
require "support/http_helpers"
require "httpx/adapters/sentry" require "httpx/adapters/sentry"
rescue LoadError
end
class SentryTest < Minitest::Test class SentryTest < Minitest::Test
include HTTPHelpers include HTTPHelpers
DUMMY_DSN = "http://12345:67890@sentry.localdomain/sentry/42" DUMMY_DSN = "http://12345:67890@sentry.localdomain/sentry/42"
@ -115,4 +114,5 @@ class SentryTest < Minitest::Test
def origin def origin
"https://#{httpbin}" "https://#{httpbin}"
end end
end if RUBY_VERSION >= "2.4.0" end
end

View File

@ -1,9 +1,9 @@
# frozen_string_literal: true # frozen_string_literal: true
require "test_helper"
require "support/http_helpers"
require "webmock/minitest" require "webmock/minitest"
require "httpx/adapters/webmock" require "httpx/adapters/webmock"
require "test_helper"
require "support/http_helpers"
class WebmockTest < Minitest::Test class WebmockTest < Minitest::Test
include HTTPHelpers include HTTPHelpers

View File

@ -67,3 +67,9 @@ end
require "httpx/session" require "httpx/session"
require "httpx/session_extensions" require "httpx/session_extensions"
# load integrations when possible
require "httpx/adapters/datadog" if defined?(DDTrace) || defined?(Datadog)
require "httpx/adapters/sentry" if defined?(Sentry)
require "httpx/adapters/webmock" if defined?(WebMock)