middleman/features/step_definitions/builder_steps.rb

51 lines
No EOL
1.8 KiB
Ruby

require 'fileutils'
Given /^a built test app$/ do
target = File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "fixtures", "test-app")
build_cmd = File.expand_path(File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "bin", "mm-build"))
`cd #{target} && MM_DIR="#{target}" #{build_cmd}`
end
Given /^a built test app with flags "([^"]*)"$/ do |flags|
target = File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "fixtures", "test-app")
build_cmd = File.expand_path(File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "bin", "mm-build"))
`cd #{target} && MM_DIR="#{target}" #{build_cmd} #{flags}`
end
Given /^cleanup built test app$/ do
target = File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "fixtures", "test-app", "build")
FileUtils.rm_rf(target)
end
Then /^"([^"]*)" should exist and include "([^"]*)"$/ do |target_file, expected|
target = File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "fixtures", "test-app", "build", target_file)
File.exists?(target).should be_true
File.read(target).should include(expected)
end
Then /^"([^"]*)" should not exist$/ do |target_file|
target = File.join(File.dirname(File.dirname(File.dirname(__FILE__))), "fixtures", "test-app", "build", target_file)
File.exists?(target).should be_false
end
# require 'fileutils'
#
# describe "Builder" do
# def project_file(*parts)
# File.expand_path(File.join(File.dirname(__FILE__), "..", *parts))
# end
#
# before :all do
# @root_dir = project_file("spec", "fixtures", "sample")
# end
#
# before :each do
# build_cmd = project_file("bin", "mm-build")
# `cd #{@root_dir} && MM_DIR="#{@root_dir}" #{build_cmd}`
# end
#
# after :each do
# FileUtils.rm_rf(File.join(@root_dir, "build"))
# end