Sha256: a2fbfc853fc244b0ccacfdaaa3b3c3fe0c3605c79795be576624a31e8fe21e46
Contents?: true
Size: 1.91 KB
Versions: 1
Compression:
Stored size: 1.91 KB
Contents
require 'rspec' require 'wrong' require_relative '../factor-connector-api.rb' module Factor::Connector::Test def service_instance(service_name) Factor::Connector.get_service_manager(service_name).instance end end module Factor::Connector class ServiceInstance include Wrong def expect_response(options={}, &block) eventually options do @logs.any? do |log| block.call(log) end end end def expect_return(options={}) expect_response(options) do |log| assert { log[:type] == 'return' } assert { log[:payload] == log[:type] } end end def expect_fail(options={}) expect_response(options) do |log| assert { log[:type] == 'fail' } end end def expect_info(options={}) expect_response(options) do |log| assert { log[:type] == 'log' } assert { log[:status] == 'info' } if log[:type] == 'log' assert { log[:message] == options[:message] } if options[:message] && log[:type]=='log' && log[:status]=='info' end end def expect_warn(options={}) expect_response(options) do |log| assert { log[:type] == 'log' } assert { log[:status] == 'warn' } if log[:type] == 'log' assert { log[:message] == options[:message] } if options[:message] && log[:type]=='log' && log[:status]=='warn' end end def expect_error(options={}) expect_response(options) do |log| assert { log[:type] == 'log' } assert { log[:status] == 'error' } if log[:type] == 'log' assert { log[:message] == options[:message] } if options[:message] && log[:type]=='log' && log[:status]=='error' end end def test_action(action_name, params={}, &block) @logs = [] self.callback = proc do |action_response| @logs << action_response end call_action(action_name,params) instance_exec &block end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
factor-connector-api-0.0.8 | ./lib/factor-connector-api/test.rb |