From 22e332e1fe01aaccd83c10e7de59dd5a73589edc Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Sun, 16 Jun 2013 17:57:45 -0400 Subject: [PATCH] Create rspec test structure for build tests --- .rspec | 2 ++ Rakefile | 5 +++++ build_tests/c-simple/spec.rb | 2 ++ spec/build_tests_spec.rb | 13 +++++++++++++ spec/spec_helper.rb | 1 + 5 files changed, 23 insertions(+) create mode 100644 .rspec create mode 100644 build_tests/c-simple/spec.rb create mode 100644 spec/build_tests_spec.rb create mode 100644 spec/spec_helper.rb diff --git a/.rspec b/.rspec new file mode 100644 index 0000000..83e16f8 --- /dev/null +++ b/.rspec @@ -0,0 +1,2 @@ +--color +--require spec_helper diff --git a/Rakefile b/Rakefile index 2995527..b7e9ed5 100644 --- a/Rakefile +++ b/Rakefile @@ -1 +1,6 @@ require "bundler/gem_tasks" +require "rspec/core/rake_task" + +RSpec::Core::RakeTask.new(:spec) + +task :default => :spec diff --git a/build_tests/c-simple/spec.rb b/build_tests/c-simple/spec.rb new file mode 100644 index 0000000..2cc635e --- /dev/null +++ b/build_tests/c-simple/spec.rb @@ -0,0 +1,2 @@ +it 'builds a C program with one source file' do +end diff --git a/spec/build_tests_spec.rb b/spec/build_tests_spec.rb new file mode 100644 index 0000000..d9caf1e --- /dev/null +++ b/spec/build_tests_spec.rb @@ -0,0 +1,13 @@ +require 'fileutils' + +describe Rscons do + FileUtils.rm_rf('build_tests/test') + test_dirs = Dir['build_tests/*/'] + test_dirs.each do |build_test_rel_path| + FileUtils.cp_r(build_test_rel_path, 'build_tests/test') + Dir.chdir('build_tests/test') do + instance_eval(File.read('spec.rb')) + end + FileUtils.rm_rf('build_tests/test') + end +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..62612b6 --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1 @@ +require "rscons"