spec/spec_utils.rb in motion-sparkle-sandbox-2.0.1 vs spec/spec_utils.rb in motion-sparkle-sandbox-2.1.0

- old
+ new

@@ -11,10 +11,46 @@ @running_specs = 1 require 'motion/project/template/osx' require 'motion-sparkle-sandbox' +# necessary for us to be able to overwrite the `project_dir` +module Motion + module Project + class Config + attr_writer :project_dir + end + end +end + module SpecUtils + module SparkleSetup + # run from a before(:suite) + def self.initial_install + SpecUtils::TemporaryDirectory.setup + + FileUtils.mkdir_p("#{SpecUtils::TemporaryDirectory.directory}/resources") + FileUtils.mkdir_p("#{SpecUtils::TemporaryDirectory.directory}/vendor") + FileUtils.touch("#{SpecUtils::TemporaryDirectory.directory}/.gitignore") + + @config = App.config + @config.sparkle = nil + @config.project_dir = SpecUtils::TemporaryDirectory.directory.to_s + @config.instance_eval do + pods do + pod 'Sparkle', POD_VERSION + end + end + + Rake::Task['pod:install'].invoke + end + + # run from an after(:suite) + def self.final_deinstall + SpecUtils::TemporaryDirectory.teardown + end + end + module TemporaryDirectory TEMPORARY_DIRECTORY = ROOT + 'tmp' # rubocop:disable Style/StringConcatenation def self.directory TEMPORARY_DIRECTORY