25: def options(argv=ARGV)
26: options = MSpecOptions.new "mkspec [options]", 32
27:
28: options.on("-c", "--constant", "CONSTANT",
29: "Class or Module to generate spec stubs for") do |name|
30: config[:constants] << name
31: end
32: options.on("-b", "--base", "DIR",
33: "Directory to generate specs into") do |directory|
34: config[:base] = File.expand_path directory
35: end
36: options.on("-r", "--require", "LIBRARY",
37: "A library to require") do |file|
38: config[:requires] << file
39: end
40: options.on("-V", "--version-guard", "VERSION",
41: "Specify version for ruby_version_is guards") do |version|
42: config[:version] = version
43: end
44: options.version MSpec::VERSION
45: options.help
46:
47: options.doc "\n How might this work in the real world?\n"
48: options.doc " 1. To create spec stubs for every class or module in Object\n"
49: options.doc " $ mkspec\n"
50: options.doc " 2. To create spec stubs for Fixnum\n"
51: options.doc " $ mkspec -c Fixnum\n"
52: options.doc " 3. To create spec stubs for Complex in 'superspec/complex'\n"
53: options.doc " $ mkspec -c Complex -r complex -b superspec"
54: options.doc ""
55:
56: options.parse argv
57: end