Sha256: 1e75bb6c8a48db622108a177cfb72965fa2bed897b57c3b8bf938dceb69f887e

Contents?: true

Size: 1.4 KB

Versions: 18

Compression:

Stored size: 1.4 KB

Contents

# encoding: utf-8

require_relative "../spec_helper"
require "nake/argv"

describe Nake::ArgvParsingMixin do
  def parse(*args)
    args.extend(Nake::ArgvParsingMixin)
    args.extract!
  end

  describe "#parse!" do
    it "should returns Hash" do
      parse.should be_kind_of(Hash)
    end

    it "should parse --git-repository to {git_repository: true}" do
      options = parse("--git-repository")
      options[:git_repository].should be_true
    end

    it "should parse --no-github to {github: false}" do
      options = parse("--no-github")
      options[:github].should be_false
    end

    it "should parse --controller=posts to {controller: 'posts'}" do
      options = parse("--controller=posts")
      options[:controller].should eql("posts")
    end

    it "should parse --models=post,comment to {models: ['post', 'comment']}" do
      options = parse("--models=post,comment")
      options[:models].should eql(["post", "comment"])
    end

    it "should remove argument from ARGV if the argument was successfuly mapped to an option" do
      args = ["--user=botanicus"]
      args.extend(Nake::ArgvParsingMixin)
      args.extract!
      args.should be_empty
    end

    it "should not remove argument from ARGV if the argument wasn't mapped to an option" do
      args = ["one", "two", "three"]
      args.extend(Nake::ArgvParsingMixin)
      args.extract!
      args.length.should eql(3)
    end
  end
end

Version data entries

18 entries across 18 versions & 2 rubygems

Version Path
nake-0.1.1 spec/nake/argv_spec.rb
nake-0.1 spec/nake/argv_spec.rb
nake-0.0.9.5 spec/nake/argv_spec.rb
nake-0.0.9.4 spec/nake/argv_spec.rb
nake-0.0.9.3 spec/nake/argv_spec.rb
nake-0.0.9.2 spec/nake/argv_spec.rb
nake-0.0.9.pre spec/nake/argv_spec.rb
do_riak-0.10.1.pre gems/gems/nake-0.0.8/spec/nake/argv_spec.rb
nake-0.0.8.pre spec/nake/argv_spec.rb
nake-0.0.8 spec/nake/argv_spec.rb
nake-0.0.7 spec/nake/argv_spec.rb
nake-0.0.6 spec/nake/argv_spec.rb
nake-0.0.5 spec/nake/argv_spec.rb
nake-0.0.3 spec/nake/argv_spec.rb
nake-0.0.3.pre spec/nake/argv_spec.rb
nake-0.0.2 spec/nake/argv_spec.rb
nake-0.0.2.pre spec/nake/argv_spec.rb
nake-0.0.1 spec/nake/argv_spec.rb