test/unit/generator_test.rb in sprout-1.1.3.pre vs test/unit/generator_test.rb in sprout-1.1.4.pre

- old
+ new

@@ -56,10 +56,33 @@ assert_matches /public class SomeProject/, content assert_matches /public function SomeProject/, content end end + should "not clobber existing files" do + dir = File.join(@fixture, 'some_project', 'src') + FileUtils.mkdir_p dir + File.open File.join(dir, 'SomeProject.as'), 'w+' do |f| + f.write "Hello World" + end + @generator.input = 'some_project' + @generator.execute + assert_matches /Hello World/, File.read(File.join(dir, 'SomeProject.as')) + end + + should "clobber existing files if --force" do + dir = File.join(@fixture, 'some_project', 'src') + FileUtils.mkdir_p dir + File.open File.join(dir, 'SomeProject.as'), 'w+' do |f| + f.write "Hello World" + end + @generator.input = 'some_project' + @generator.force = true + @generator.execute + assert_matches /public function SomeProject/, File.read(File.join(dir, 'SomeProject.as')) + end + should "call another generator" do @generator.external = true @generator.execute assert_file File.join(@fixture, 'some_project', 'SomeOtherOtherFile') do |content| assert_matches /We are agents of the free?/, content @@ -76,10 +99,11 @@ end should "respect updates from subclasses" do @generator = configure_generator SubclassedGenerator.new @generator.input = 'some_project' + @generator.force = true @generator.execute assert_file File.join(@fixture, 'some_project', 'SomeFile') do |content| assert_matches /Living Jest enough for the City and SomeProject/, content end end @@ -101,10 +125,10 @@ assert !File.exists?(File.join(@fixture, 'some_project')), "Shouldn't leave half-generated files around" end should "notify user of all files created" do @generator.input = 'some_project' - @string_io.expects(:puts).with('Skipped existing: .') + @string_io.expects(:puts).with('Skipped directory: .') @string_io.expects(:puts).with('Created directory: ./some_project') @string_io.expects(:puts).with('Created file: ./some_project/SomeFile') @string_io.expects(:puts).with('Created file: ./some_project/SomeOtherFile') @string_io.expects(:puts).with('Created directory: ./some_project/src') @string_io.expects(:puts).with('Created file: ./some_project/src/SomeProject.as')