wojtekmach-cli 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +29 -24
- data/bin/{rb-cli → cli} +0 -0
- data/lib/cli/version.rb +1 -2
- data/spec/cli/app_spec.rb +8 -14
- metadata +54 -57
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 92e7ab65a8f0c194b7fd3a03ee9a62c58c58a4dc
|
4
|
+
data.tar.gz: 0459078eb23c93ffee70e442dd03fcc4b450d212
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 5945788a09558bf107eeabb058cc71da4617dbc4babc41b061d01d374c453f34d0322357434a49078e6b65ee6a6495864e69e2fc5862b3a8c7d891ca34d30e02
|
7
|
+
data.tar.gz: 86fbee68c12aa3ea5a5f2587da7443c5eb033825574a59f0bedb7a9e8411178454452319df7864675b44c019d91f8ca17934804fda805fe26bf4a929be647f72
|
data/README.md
CHANGED
@@ -8,29 +8,32 @@ A CLI app framework
|
|
8
8
|
|
9
9
|
## Example
|
10
10
|
|
11
|
+
|
11
12
|
Let's say you have a file `hello.rb`:
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
14
|
+
```ruby
|
15
|
+
#!/usr/bin/env ruby
|
16
|
+
require "rubygems"
|
17
|
+
require "cli"
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
|
19
|
+
CLI.app do
|
20
|
+
name "hello"
|
21
|
+
version "0.0.1"
|
20
22
|
|
21
|
-
|
22
|
-
|
23
|
-
|
23
|
+
option "-m", "--message MSG" do |msg|
|
24
|
+
options[:msg] = msg
|
25
|
+
end
|
24
26
|
|
25
|
-
|
26
|
-
|
27
|
-
|
27
|
+
action "hi" do
|
28
|
+
puts "Hi, World!"
|
29
|
+
end
|
28
30
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
31
|
+
default do
|
32
|
+
str = options[:msg] || "Hello"
|
33
|
+
puts "#{str}, World!"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
```
|
34
37
|
|
35
38
|
You can now use it like this:
|
36
39
|
|
@@ -38,16 +41,18 @@ You can now use it like this:
|
|
38
41
|
% ruby hello.rb hi # => Hi, World!
|
39
42
|
% ruby hello.rb -m Bye # => Bye, World!
|
40
43
|
|
41
|
-
Alternatively, you can use the `
|
44
|
+
Alternatively, you can use the `cli` binary like that:
|
42
45
|
|
43
|
-
|
46
|
+
```ruby
|
47
|
+
#!/usr/bin/env cli
|
44
48
|
|
45
|
-
|
46
|
-
|
49
|
+
name "hello"
|
50
|
+
version "0.0.1"
|
47
51
|
|
48
|
-
|
49
|
-
|
50
|
-
|
52
|
+
default do
|
53
|
+
...
|
54
|
+
end
|
55
|
+
```
|
51
56
|
|
52
57
|
And run it:
|
53
58
|
|
data/bin/{rb-cli → cli}
RENAMED
File without changes
|
data/lib/cli/version.rb
CHANGED
data/spec/cli/app_spec.rb
CHANGED
@@ -21,17 +21,11 @@ module CLI
|
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
|
-
|
25
|
-
@app.binary.should eq("hello")
|
26
|
-
end
|
27
|
-
|
28
|
-
it "has a name" do
|
29
|
-
@app.name.should eq("Hello")
|
30
|
-
end
|
24
|
+
subject { @app }
|
31
25
|
|
32
|
-
|
33
|
-
|
34
|
-
|
26
|
+
its(:binary) { should eq("hello") }
|
27
|
+
its(:name) { should eq("Hello") }
|
28
|
+
its(:version) { should eq("0.0.1") }
|
35
29
|
|
36
30
|
it "runs an action" do
|
37
31
|
$stdout.should_receive(:puts).with("Hi!")
|
@@ -80,11 +74,11 @@ module CLI
|
|
80
74
|
end
|
81
75
|
end
|
82
76
|
|
83
|
-
describe App, "
|
77
|
+
describe App, "with only default action" do
|
84
78
|
before do
|
85
79
|
@app = App.new("hello") do
|
86
80
|
default do
|
87
|
-
puts args
|
81
|
+
puts args.join(" ")
|
88
82
|
end
|
89
83
|
end
|
90
84
|
end
|
@@ -93,12 +87,12 @@ module CLI
|
|
93
87
|
$stdout.should_receive(:puts).with("Hello, World!")
|
94
88
|
@app.run!(["Hello, World!"])
|
95
89
|
|
96
|
-
$stdout.should_receive(:puts).with("1")
|
90
|
+
$stdout.should_receive(:puts).with("1 2 3")
|
97
91
|
@app.run!(%w(1 2 3))
|
98
92
|
end
|
99
93
|
end
|
100
94
|
|
101
|
-
describe App, "
|
95
|
+
describe App, "with no actions" do
|
102
96
|
describe "run!" do
|
103
97
|
it "should fail" do
|
104
98
|
@app = App.new("blank") do
|
metadata
CHANGED
@@ -1,50 +1,51 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: wojtekmach-cli
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
version: 0.2.0
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
6
5
|
platform: ruby
|
7
|
-
authors:
|
6
|
+
authors:
|
8
7
|
- Wojciech Mach
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
dependencies:
|
16
|
-
- !ruby/object:Gem::Dependency
|
11
|
+
date: 2013-04-04 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
17
14
|
name: rspec
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version: "0"
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
25
20
|
type: :development
|
26
|
-
version_requirements: *id001
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: guard
|
29
21
|
prerelease: false
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: guard
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
36
34
|
type: :development
|
37
|
-
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
38
41
|
description: CLI apps framework.
|
39
|
-
email:
|
42
|
+
email:
|
40
43
|
- wojtekmach1@gmail.com
|
41
|
-
executables:
|
42
|
-
-
|
44
|
+
executables:
|
45
|
+
- cli
|
43
46
|
extensions: []
|
44
|
-
|
45
47
|
extra_rdoc_files: []
|
46
|
-
|
47
|
-
files:
|
48
|
+
files:
|
48
49
|
- .gitignore
|
49
50
|
- .rspec
|
50
51
|
- .yardopts
|
@@ -53,40 +54,36 @@ files:
|
|
53
54
|
- LICENSE
|
54
55
|
- README.md
|
55
56
|
- Rakefile
|
56
|
-
- bin/
|
57
|
+
- bin/cli
|
57
58
|
- cli.gemspec
|
58
59
|
- lib/cli.rb
|
59
60
|
- lib/cli/app.rb
|
60
61
|
- lib/cli/version.rb
|
61
62
|
- spec/cli/app_spec.rb
|
62
63
|
- spec/spec_helper.rb
|
63
|
-
|
64
|
-
homepage: ""
|
64
|
+
homepage: ''
|
65
65
|
licenses: []
|
66
|
-
|
66
|
+
metadata: {}
|
67
67
|
post_install_message:
|
68
68
|
rdoc_options: []
|
69
|
-
|
70
|
-
require_paths:
|
69
|
+
require_paths:
|
71
70
|
- lib
|
72
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: "0"
|
71
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - '>='
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
84
81
|
requirements: []
|
85
|
-
|
86
82
|
rubyforge_project: cli
|
87
|
-
rubygems_version:
|
83
|
+
rubygems_version: 2.0.0
|
88
84
|
signing_key:
|
89
|
-
specification_version:
|
90
|
-
summary: cli-0.
|
91
|
-
test_files:
|
92
|
-
|
85
|
+
specification_version: 4
|
86
|
+
summary: cli-0.3.0
|
87
|
+
test_files:
|
88
|
+
- spec/cli/app_spec.rb
|
89
|
+
- spec/spec_helper.rb
|