Sha256: 5502ba03dc3ba346d9f03ef1bcf093afd3885977a661477c1cf23921454e43a1

Contents?: true

Size: 970 Bytes

Versions: 3

Compression:

Stored size: 970 Bytes

Contents

require 'pact/provider/pact_helper_locator'
require 'rake/file_utils'

module Pact
  module Provider
    module Proxy
      module TaskHelper

        extend self

        def execute_pact_verify pact_uri = nil, pact_helper = nil
          execute_cmd verify_command(pact_helper || Pact::Provider::PactHelperLocater.pact_helper_path, pact_uri)
        end

        def handle_verification_failure
          exit_status = yield
          abort if exit_status != 0
        end

        def verify_command pact_helper, pact_uri = nil
          command_parts = []
          command_parts << FileUtils::RUBY
          command_parts << "-S pact verify"
          command_parts << "-h" << (pact_helper.end_with?(".rb") ? pact_helper : pact_helper + ".rb")
          (command_parts << "-p" << pact_uri) if pact_uri
          command_parts.flatten.join(" ")
        end

        def execute_cmd command
          system(command) ? 0 : 1
        end

      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pact-provider-proxy-1.2.0 lib/pact/provider/proxy/task_helper.rb
pact-provider-proxy-1.1.0 lib/pact/provider/proxy/task_helper.rb
pact-provider-proxy-1.0.0 lib/pact/provider/proxy/task_helper.rb