+
+ cmd = "#{concatdir}/bin/concatfragments.rb " +
+ "-o \"#{concatdir}/#{safe_name}/fragments.concat.out\" " +
+ "-d \"#{concatdir}/#{safe_name}\""
+
+ # flag order: fragdir, warnflag, forceflag, orderflag, newlineflag
+ if p.has_key?(:warn)
+ case p[:warn]
+ when TrueClass
+ message = default_warn_message
+ when 'true', 'yes', 'on'
+ # should generate a stringified boolean warning
+ message = default_warn_message
+ when FalseClass
+ message = nil
+ when 'false', 'no', 'off'
+ # should generate a stringified boolean warning
+ message = nil
+ else
+ message = p[:warn]
+ end
+
+ unless message.nil?
+ cmd += " -w \'#{message}\'"
+ end
+ end
+
+ cmd += " -f" if p[:force]
+ cmd += " -n" if p[:order] == 'numeric'
+ cmd += " -l" if p[:ensure_newline] == true
+
+ it do
+ should contain_exec("concat_#{title}").with({
+ :alias => "concat_#{fragdir}",
+ :command => cmd,
+ :unless => "#{cmd} -t",
+ })
+ end