Rakefile 646 B

123456789101112131415161718192021222324252627282930
  1. include FileUtils::Verbose
  2. namespace :test do
  3. desc "Run the XLForm Tests"
  4. task :ios do
  5. run_tests('XLForm Tests', 'iphonesimulator10.2')
  6. tests_failed unless $?.success?
  7. end
  8. end
  9. task :test do
  10. Rake::Task['test:ios'].invoke
  11. end
  12. task :default => 'test'
  13. private
  14. def run_tests(scheme, sdk)
  15. sh("xcodebuild -workspace 'Tests/XLForm Tests.xcworkspace' -scheme '#{scheme}' -sdk '#{sdk}' -destination 'OS=10.1,name=iPhone 7' -configuration Release clean test | xcpretty -c ; exit ${PIPESTATUS[0]}") rescue nil
  16. end
  17. def tests_failed
  18. puts red("Unit tests failed")
  19. exit $?.exitstatus
  20. end
  21. def red(string)
  22. "\033[0;31m! #{string}"
  23. end