| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 | 
							
- require '../auto/generate_module.rb'
 
- require 'fileutils'
 
- def touch_src(file)
 
-   FileUtils.touch "sandbox/src/#{file}"
 
- end
 
- def touch_test(file)
 
-   FileUtils.touch "sandbox/test/#{file}"
 
- end
 
- def create_src_with_known_content(file)
 
-   File.open("sandbox/src/#{file}", "w") {|f| f.write("the original #{file}")}
 
- end
 
- def create_test_with_known_content(file)
 
-   File.open("sandbox/test/#{file}", "w") {|f| f.write("the original #{file}")}
 
- end
 
- def expect_src_content_didnt_change(file)
 
-   expect(File.read("sandbox/src/#{file}")).to eq("the original #{file}")
 
- end
 
- def expect_test_content_didnt_change(file)
 
-   expect(File.read("sandbox/test/#{file}")).to eq("the original #{file}")
 
- end
 
- def expect_src_file_to_exist(file)
 
-   expect(File.exist?("sandbox/src/#{file}")).to be true
 
- end
 
- def expect_test_file_to_exist(file)
 
-   expect(File.exist?("sandbox/test/#{file}")).to be true
 
- end
 
- describe "UnityModuleGenerator" do
 
-   before do
 
-     # clean sandbox and setup our "project" folders
 
-     FileUtils.rm_rf "sandbox"
 
-     FileUtils.mkdir_p "sandbox"
 
-     FileUtils.mkdir_p "sandbox/src"
 
-     FileUtils.mkdir_p "sandbox/test"
 
-     @options = {
 
-       :path_src => "sandbox/src",
 
-       :path_tst => "sandbox/test",
 
-     }
 
-   end
 
-   context "with src pattern" do
 
-     before do
 
-       @options[:pattern] = "src"
 
-     end
 
-     it "fails when all files already exist" do
 
-       # create an existing triad of files
 
-       touch_src "meh.c"
 
-       touch_src "meh.h"
 
-       touch_test "Testmeh.c"
 
-       expect {
 
-         UnityModuleGenerator.new(@options).generate("meh")
 
-       }.to raise_error("ERROR: File meh already exists. Exiting.")
 
-     end
 
-     it "creates the test file if the source and header files exist" do
 
-       # Create the existing files.
 
-       touch_src "meh.c"
 
-       touch_src "meh.h"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_test_file_to_exist "Testmeh.c"
 
-     end
 
-     it "does not alter existing files" do
 
-       # Create some files with known content.
 
-       create_src_with_known_content "meh.c"
 
-       create_src_with_known_content "meh.h"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_src_content_didnt_change "meh.c"
 
-       expect_src_content_didnt_change "meh.c"
 
-     end
 
-     it "does not alter existing test files" do
 
-       # Create some files with known content.
 
-       create_test_with_known_content "Testmeh.c"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_test_content_didnt_change "Testmeh.c"
 
-     end
 
-   end
 
-   context "with mch pattern" do
 
-     before do
 
-       @options[:pattern] = "mch"
 
-     end
 
-     it "fails when all files exist" do
 
-         touch_src "meh_model.c"
 
-         touch_src "meh_conductor.c"
 
-         touch_src "meh_hardware.c"
 
-         touch_src "meh_model.h"
 
-         touch_src "meh_conductor.h"
 
-         touch_src "meh_hardware.h"
 
-         touch_test "Testmeh_model.c"
 
-         touch_test "Testmeh_conductor.c"
 
-         touch_test "Testmeh_hardware.c"
 
-         expect {
 
-           UnityModuleGenerator.new(@options).generate("meh")
 
-         }.to raise_error("ERROR: File meh_model already exists. Exiting.")
 
-     end
 
-     it "creates files that don't exist" do
 
-       touch_src "meh_model.c"
 
-       touch_src "meh_conductor.c"
 
-       touch_src "meh_hardware.c"
 
-       touch_src "meh_model.h"
 
-       touch_src "meh_conductor.h"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_src_file_to_exist "meh_hardware.h"
 
-       expect_test_file_to_exist "Testmeh_model.c"
 
-       expect_test_file_to_exist "Testmeh_conductor.c"
 
-       expect_test_file_to_exist "Testmeh_hardware.c"
 
-     end
 
-     it "does not alter existing source files" do
 
-       create_src_with_known_content "meh_model.c"
 
-       create_src_with_known_content "meh_model.c"
 
-       create_src_with_known_content "meh_model.c"
 
-       create_src_with_known_content "meh_model.h"
 
-       create_src_with_known_content "meh_model.c"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_src_content_didnt_change "meh_model.c"
 
-       expect_src_content_didnt_change "meh_model.c"
 
-       expect_src_content_didnt_change "meh_model.c"
 
-       expect_src_content_didnt_change "meh_model.c"
 
-     end
 
-     it "does not alter existing test files" do
 
-       create_test_with_known_content "Testmeh_model.c"
 
-       UnityModuleGenerator.new(@options).generate("meh")
 
-       expect_test_content_didnt_change "Testmeh_model.c"
 
-     end
 
-   end
 
- end
 
 
  |