# File lib/rubygems/commands/check_command.rb, line 31
  def execute
    if options[:test]
      version = options[:version] || Gem::Requirement.default
      gem_spec = Gem::SourceIndex.from_installed_gems.search(get_one_gem_name, version).first
      Gem::Validator.new.unit_test(gem_spec)
    end

    if options[:alien]
      say "Performing the 'alien' operation"
      Gem::Validator.new.alien.each do |key, val|
        if(val.size > 0)
          say "#{key} has #{val.size} problems"
          val.each do |error_entry|
            say "\t#{error_entry.path}:"
            say "\t#{error_entry.problem}"
            say
          end
        else  
          say "#{key} is error-free"
        end
        say
      end
    end

    if options[:verify]
      gem_name = options[:verify]
      unless gem_name
        alert_error "Must specify a .gem file with --verify NAME"
        return
      end
      unless File.exist?(gem_name)
        alert_error "Unknown file: #{gem_name}."
        return
      end
      say "Verifying gem: '#{gem_name}'"
      begin
        Gem::Validator.new.verify_gem_file(gem_name)
      rescue Exception => e
        alert_error "#{gem_name} is invalid."
      end
    end
  end