class MSpecRun
Public Class Methods
new()
click to toggle source
Calls superclass method
MSpecScript.new
# File lib/mspec/commands/mspec-run.rb, line 11 def initialize super config[:files] = [] end
Public Instance Methods
options(argv=ARGV)
click to toggle source
# File lib/mspec/commands/mspec-run.rb, line 17 def options(argv=ARGV) options = MSpecOptions.new "mspec run [options] (FILE|DIRECTORY|GLOB)+", 30, config options.doc " Ask yourself:" options.doc " 1. What specs to run?" options.doc " 2. How to modify the execution?" options.doc " 3. How to modify the guard behavior?" options.doc " 4. How to display the output?" options.doc " 5. What action to perform?" options.doc " 6. When to perform it?" options.doc "\n What specs to run" options.filters options.doc "\n How to modify the execution" options.chdir options.prefix options.configure { |f| load f } options.name options.randomize options.repeat options.pretend options.background options.interrupt options.doc "\n How to modify the guard behavior" options.unguarded options.verify options.doc "\n How to display their output" options.formatters options.verbose options.doc "\n What action to perform" options.actions options.doc "\n When to perform it" options.action_filters options.doc "\n Help!" options.debug options.version MSpec::VERSION options.help options.doc "\n Custom options" custom_options options options.doc "\n How might this work in the real world?" options.doc "\n 1. To simply run some specs" options.doc "\n $ mspec path/to/the/specs" options.doc " mspec path/to/the_file_spec.rb" options.doc "\n 2. To run specs tagged with 'fails'" options.doc "\n $ mspec -g fails path/to/the_file_spec.rb" options.doc "\n 3. To start the debugger before the spec matching 'this crashes'" options.doc "\n $ mspec --spec-debug -S 'this crashes' path/to/the_file_spec.rb" options.doc "\n 4. To run some specs matching 'this crashes'" options.doc "\n $ mspec -e 'this crashes' path/to/the_file_spec.rb" options.doc "" patterns = options.parse argv patterns = config[:files] if patterns.empty? patterns = ["spec/"] if patterns.empty? and File.directory? "./spec" if patterns.empty? puts options puts "No files specified." exit 1 end @files = files patterns end
run()
click to toggle source
# File lib/mspec/commands/mspec-run.rb, line 88 def run MSpec.register_mode :no_ruby_bug MSpec.register_tags_patterns config[:tags_patterns] MSpec.register_files @files MSpec.process exit MSpec.exit_code end