i trying write webmock based test case mimic calling http api. included webmock/rspec in spec_helper.rb file , added webmock.disable_net_connect!(allow_localhost: true) disallow http requests on web. when run dummy test check weather http requests getting blocked, can see http requests still been made.
the spec_helper.rb file:
env["rails_env"] ||= 'test' require 'rubygems' require file.expand_path("../../config/environment", __file__) require 'authlogic/test_case' include authlogic::testcase require 'rspec/rails' require 'rspec/autorun' require 'rspec/mocks' require 'capybara/rspec' require 'capybara/rails' require "paperclip/matchers" require 'vcr' require 'webmock/rspec' webmock.disable_net_connect! dir[rails.root.join("spec/support/**/*.rb")].each {|f| require f} rspec.configure |config| config.treat_symbols_as_metadata_keys_with_true_values = true config.mock_with :rspec config.use_transactional_fixtures = false config.fixture_path = "#{::rails.root}/spec/fixtures" config.include paperclip::shoulda::matchers config.include factorygirl::syntax::methods config.infer_base_class_for_anonymous_controllers = false config.include rails.application.routes.url_helpers config.include capybara::dsl config.render_views config.filter_run focus: true config.run_all_when_everything_filtered = true end vcr.configure |c| c.cassette_library_dir = 'spec/vcr_cassettes' c.hook_into :webmock c.allow_http_connections_when_no_cassette = true end activesupport::dependencies.clear also dummy test file have written:
require 'spec_helper' describe 'external request' 'queries factorygirl contributors on github' uri = uri('https://api.github.com/repos/thoughtbot/factory_girl/contributors') response = net::http.get(uri) expect(response).to be_an_instance_of(string) end end please me in finding out whether missing configurations or there else doing so.
found out problem following configuration in vcr configs:
c.allow_http_connections_when_no_cassette = true converting false solved problem vcr configs overwriting webmock configs because had defined c.hook_into :webmock.
Comments
Post a Comment