From 31882dda00c9a365a7ecef0b5b16a3124521d2e9 Mon Sep 17 00:00:00 2001 From: Luis Lavena Date: Mon, 3 Nov 2008 12:27:48 -0300 Subject: Last tweak to compilation feature (I promise). --- features/compile.feature | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'features') diff --git a/features/compile.feature b/features/compile.feature index a2d1d81..c7e5ae2 100644 --- a/features/compile.feature +++ b/features/compile.feature @@ -7,7 +7,6 @@ Feature: Compile C code into Ruby extensions. Scenario: Compile single extension Given a safe project directory And scaffold code for extension 'extension_one' - And binary extension 'extension_one' do not exist in 'lib' And 'tmp' folder is deleted When rake task 'compile' is invoked And rake task 'compile' succeeded @@ -18,16 +17,25 @@ Feature: Compile C code into Ruby extensions. Given a safe project directory And scaffold code for extension 'extension_one' And binary extension 'extension_one' do exist in 'lib' + And intermediate files for extension 'extension_one' do exist in 'tmp' When rake task 'compile' is invoked And rake task 'compile' succeeded Then output of rake task 'compile' does not match /extension_one/ + Scenario: recompile extension when source is modified + Given a safe project directory + And scaffold code for extension 'extension_one' + And binary extension 'extension_one' do exist in 'lib' + And intermediate files for extension 'extension_one' do exist in 'tmp' + When touching 'source.c' file of extension 'extension_one' + And rake task 'compile' is invoked + And rake task 'compile' succeeded + Then output of rake task 'compile' does match /extension_one/ + Scenario: Compile multiple extensions Given a safe project directory And scaffold code for extension 'extension_one' And scaffold code for extension 'extension_two' - And binary extension 'extension_one' do not exist in 'lib' - And binary extension 'extension_two' do not exist in 'lib' And 'tmp' folder is deleted When rake task 'compile' is invoked And rake task 'compile' succeeded @@ -39,10 +47,8 @@ Feature: Compile C code into Ruby extensions. Given a safe project directory And scaffold code for extension 'extension_one' And scaffold code for extension 'extension_two' - And binary extension 'extension_one' do not exist in 'lib' - And binary extension 'extension_two' do not exist in 'lib' When rake task 'compile:extension_one' is invoked And rake task 'compile:extension_one' succeeded Then output of rake task 'compile:extension_one' does not match /extension_two/ - And binary extension 'extension_one' do exist in 'lib' - And binary extension 'extension_two' do not exist in 'lib' + And binary extension 'extension_one' must exist in 'lib' + And binary extension 'extension_two' must not exist in 'lib' -- cgit v1.2.1