Sha256: ab7973eae10f5ada991a1554030abf4cccef1940f66a597937818d88e956f062

Contents?: true

Size: 924 Bytes

Versions: 29

Compression:

Stored size: 924 Bytes

Contents

# encoding: UTF-8
#
# Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

require 'gooddata/cli/cli'

module GoodData::Helpers
  module CliHelper
    # Execute block and capture its stdou
    # @param block Block to be executed with stdout redirected
    # @returns Captured output as string
    def capture_stdout(&block)
      original_stdout = $stdout
      $stdout = fake = StringIO.new
      begin
        yield
      ensure
        $stdout = original_stdout
      end
      fake.string
    end

    # Run CLI with arguments and return captured stdout
    # @param args Arguments
    # @return Captured stdout
    def run_cli(args = [])
      old = $0
      $0 = 'gooddata'
      res = capture_stdout { GoodData::CLI.main(args) }
      $0 = old
      res
    end
  end
end

Version data entries

29 entries across 29 versions & 2 rubygems

Version Path
gooddata-edge-0.6.27.edge spec/helpers/cli_helper.rb
gooddata-0.6.49 spec/helpers/cli_helper.rb
gooddata-0.6.48 spec/helpers/cli_helper.rb
gooddata-0.6.47 spec/helpers/cli_helper.rb
gooddata-0.6.46 spec/helpers/cli_helper.rb
gooddata-0.6.45 spec/helpers/cli_helper.rb
gooddata-0.6.44 spec/helpers/cli_helper.rb
gooddata-0.6.43 spec/helpers/cli_helper.rb
gooddata-0.6.42 spec/helpers/cli_helper.rb
gooddata-0.6.41 spec/helpers/cli_helper.rb
gooddata-0.6.40 spec/helpers/cli_helper.rb
gooddata-0.6.39 spec/helpers/cli_helper.rb
gooddata-0.6.38 spec/helpers/cli_helper.rb
gooddata-0.6.37 spec/helpers/cli_helper.rb
gooddata-0.6.36 spec/helpers/cli_helper.rb
gooddata-0.6.35 spec/helpers/cli_helper.rb
gooddata-0.6.34 spec/helpers/cli_helper.rb
gooddata-0.6.33 spec/helpers/cli_helper.rb
gooddata-0.6.32 spec/helpers/cli_helper.rb
gooddata-0.6.31 spec/helpers/cli_helper.rb