Sha256: b556cee49de45ca3c68e2bb4dcc7190086227fab736cdbf430e7794c56b3f7b6

Contents?: true

Size: 1.47 KB

Versions: 19

Compression:

Stored size: 1.47 KB

Contents

require 'test_helper'
require 'support/kitchen_helper'

require 'knife-solo/gitignore'

class GitignoreTest < TestCase
  include KitchenHelper

  def test_creates_with_one_entry
    outside_kitchen do
      KnifeSolo::Gitignore.new('.').add("foo")
      assert_equal "foo\n", IO.read('.gitignore')
    end
  end

  def test_creates_with_multiple_entries
    outside_kitchen do
      KnifeSolo::Gitignore.new('.').add("foo", "/bar")
      assert_equal "foo\n/bar\n", IO.read('.gitignore')
    end
  end

  def test_creates_with_array
    outside_kitchen do
      KnifeSolo::Gitignore.new('.').add(%w[foo/ bar])
      assert_equal "foo/\nbar\n", IO.read('.gitignore')
    end
  end

  def test_appends_new_entries
    outside_kitchen do
      File.open(".gitignore", "w") do |f|
        f.puts "foo"
      end
      KnifeSolo::Gitignore.new('.').add(["bar.*"])
      assert_equal "foo\nbar.*\n", IO.read('.gitignore')
    end
  end

  def test_appends_only_new_entries
    outside_kitchen do
      File.open(".gitignore", "w") do |f|
        f.puts "*.foo"
      end
      KnifeSolo::Gitignore.new('.').add("!foo", "*.foo")
      assert_equal "*.foo\n!foo\n", IO.read('.gitignore')
    end
  end

  def test_appends_only_if_any_new_entries
    outside_kitchen do
      File.open(".gitignore", "w") do |f|
        f.puts "!foo"
        f.puts "/bar/*.baz"
      end
      KnifeSolo::Gitignore.new('.').add(["!foo", "/bar/*.baz"])
      assert_equal "!foo\n/bar/*.baz\n", IO.read('.gitignore')
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
knife-solo-0.7.0 test/gitignore_test.rb
knife-solo-0.7.0.pre3 test/gitignore_test.rb
knife-solo-0.7.0.pre2 test/gitignore_test.rb
knife-solo-0.7.0.pre test/gitignore_test.rb
knife-solo-0.6.0 test/gitignore_test.rb
knife-solo-0.4.3 test/gitignore_test.rb
knife-solo-0.5.1 test/gitignore_test.rb
knife-solo-0.5.0 test/gitignore_test.rb
knife-solo-0.4.2 test/gitignore_test.rb
knife-solo-0.4.1 test/gitignore_test.rb
knife-solo-0.4.0 test/gitignore_test.rb
knife-solo-0.3.0 test/gitignore_test.rb
knife-solo-0.3.0.pre5 test/gitignore_test.rb
knife-solo-0.3.0.pre4 test/gitignore_test.rb
knife-solo-0.3.0.pre3 test/gitignore_test.rb
knife-solo-0.3.0.pre2 test/gitignore_test.rb
knife-solo-0.3.0.pre1 test/gitignore_test.rb
knife-solo-0.2.0 test/gitignore_test.rb
knife-solo-0.2.0.pre1 test/gitignore_test.rb