Sha256: 31e330c0deec370e7f4268d4c6a276687484add28d6611a1aa805542cf327997

Contents?: true

Size: 989 Bytes

Versions: 1

Compression:

Stored size: 989 Bytes

Contents

require File.expand_path('../helper', __FILE__)
require 'mini_portile'

class TestUnescapingCommands < TestCase
  class << self
    def startup
      FileUtils.rm_rf "tmp" # remove any previous test files
    end
  end

  def echo_helper recipe, string
    FileUtils.mkdir_p File.join(recipe.send(:tmp_path), "workdir")
    recipe.send :execute, "echo", ["echo", "-en", string]
    File.read Dir.glob("tmp/**/echo.log").first
  end

  def test_setting_unescape_to_true_unescapes_escaped_strings
    recipe = MiniPortile.new("foo", "1.0", :unescape_commands => true)
    assert_equal "thistthat", echo_helper(recipe, 'this\tthat')
  end

  def test_setting_unescape_to_false_does_not_touch_unescaped_strings
    recipe = MiniPortile.new("foo", "1.0", :unescape_commands => false)
    assert_equal "this\tthat", echo_helper(recipe, 'this\tthat')
  end

  def test_default_unescape_setting_is_true
    recipe = MiniPortile.new("foo", "1.0")
    assert_true recipe.unescape_commands
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mini_portile-0.7.0.rc3 test/test_unescaping_commands.rb