# -*- encoding: utf-8 -*-
# stub: mock_proxy 0.1.3 ruby lib

Gem::Specification.new do |s|
  s.name = "mock_proxy".freeze
  s.version = "0.1.3".freeze

  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
  s.metadata = { "allowed_push_host" => "https://rubygems.org" } if s.respond_to? :metadata=
  s.require_paths = ["lib".freeze]
  s.authors = ["matrinox".freeze]
  s.bindir = "exe".freeze
  s.date = "2016-02-19"
  s.description = "Remember when RSpec had stub_chain? They removed it for good reasons but sometimes you just need it.\n  Well, here it is, a proxy object. It doesn't actually mock anything for you (the name is just catchy) so you need to do that.\n  But that actually comes with a lot of benefits:\n  1) It's compatable with any testing framework\n  2) You can use it for purposes other than testing, e.g. prototyping, code stubs\n  3) Flexibility in how you use it without overloading the number of methods you have to remember\n\n  Here's an example usage:\n  let(:model_proxy) do\n    MockProxy.new(email_client: {\n      create_email: {\n        receive: proc {}\n      }\n    })\n  end\n  before { allow(Model).to receive(:new).and_return model_proxy }\n  it 'should call receive' do\n    proc = MockProxy.get(model_proxy, 'email_client.create_email.receive')\n    expect(proc).to receive(:call)\n    run_system_under_test\n    MockProxy.update(mock_proxy, 'email_client.create_email.validate!') { true }\n    MockProxy.observe(mock_proxy, 'email_client.create_email.send') do |to|\n      expect(to).to eq 'stop@emailing.me'\n    end\n    run_system_under_test2\n  end\n\n  As you can see, the proc - which ends the proxy by calling the proc - can be used for anything. You can spy on the\n  call count and arguments, mock methods, or just stub out code you don't want executed. Because it doesn't make any\n  assumptions, it becomes very flexible. Simple, yet powerful, it's uses are infinite. Enjoy".freeze
  s.email = ["geofflee25@gmail.com".freeze]
  s.files = [".gitignore".freeze, "CODE_OF_CONDUCT.md".freeze, "Gemfile".freeze, "LICENSE".freeze, "LICENSE.txt".freeze, "README.md".freeze, "Rakefile".freeze, "bin/console".freeze, "bin/setup".freeze, "lib/mock_proxy.rb".freeze, "lib/mock_proxy/version.rb".freeze, "mock_proxy.gemspec".freeze]
  s.homepage = "https://github.com/matrinox/MockProxy".freeze
  s.licenses = ["MIT".freeze]
  s.rubygems_version = "3.5.10".freeze
  s.summary = "A proxy that can be used to stub method chains and more!".freeze

  s.specification_version = 4

  s.add_development_dependency(%q<bundler>.freeze, ["~> 1.10".freeze])
  s.add_development_dependency(%q<rake>.freeze, ["~> 10.0".freeze])
end