Sha256: c7d5037807c5003e25d15a3e6b6d35c3a8e319daa8906b0992bf66e6ab379589

Contents?: true

Size: 1.69 KB

Versions: 2

Compression:

Stored size: 1.69 KB

Contents

require "spec_helper"

class TestClass
  
end

describe GeneratorSpec::TestCase do
  before do
    @klass = Class.new do
      self.should_receive(:described_class).and_return(TestClass)
      include GeneratorSpec::TestCase
    end
    @klass.test_case_instance = mock
  end
  
  it "passes unknown messages on to test_case_instance" do
    @klass.test_case_instance.should_receive(:assert_file).with("test")
    @klass.new.assert_file("test")
  end
  
  it "handles respond_to accordingly" do
    @klass.test_case_instance.should_receive(:respond_to?).with(:assert_no_file).and_return(true)
    @klass.new.respond_to?(:assert_no_file).should be_true
  end
end

describe TestGenerator, "using normal assert methods" do
  include GeneratorSpec::TestCase
  destination File.expand_path("../../tmp", __FILE__)
  arguments %w(test --test)
  
  before(:all) do
    prepare_destination
    run_generator
  end

  it "creates a test initializer" do
    assert_file "config/initializers/test.rb", "# Initializer"
  end

  it "creates a migration" do
    assert_migration "db/migrate/create_tests.rb"
  end

  it "removes files" do
    assert_no_file ".gitignore"
  end
end

describe TestGenerator, "with contexts" do
  include GeneratorSpec::TestCase
  destination File.expand_path("../../tmp", __FILE__)
  before { prepare_destination }
  
  context "with --test flag" do
    before { run_generator %w(test --test) }
    
    it "creates a test initializer" do
      assert_file "config/initializers/test.rb", "# Initializer"
    end
  end
  
  context "without any flags" do
    before { run_generator %w(test) }
    
    it "doesn't create a test initializer" do
      assert_no_file "config/initializers/test.rb"
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
generator_spec-0.8.4 spec/generator_spec/test_case_spec.rb
generator_spec-0.8.3 spec/generator_spec/test_case_spec.rb