rubyc 0.0.14 → 0.0.16

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.
data/.gitignore CHANGED
@@ -2,3 +2,4 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
+ .DS_Store
data/README.rdoc CHANGED
@@ -1,11 +1,11 @@
1
- = Description
2
- Adds Ruby's powers to the command line.
1
+ = Description {<img src="https://secure.travis-ci.org/martinos/rubyc.png" />}[http://travis-ci.org/martinos/rubyc]
2
+ Adds Ruby's power to the command line.
3
3
  Supports many enumerator methods applied to STDIN. The current line is represented by the "line" variable name or it's shorter alias 'l'.
4
4
 
5
5
  To get help:
6
6
  rubyc help
7
7
 
8
- == Example
8
+ == Examples
9
9
  $ ls | rubyc map 'line.upcase'
10
10
  GEMFILE
11
11
  RAILS_VERSION
@@ -18,9 +18,8 @@ To get help:
18
18
  Here are the currently supported methods:
19
19
  compact # Remove empty lines
20
20
  count_by # Count the number of lines that have the same property. The property is defined by the return value of the given the block.
21
- grep # Enumerable#grep
22
- help [TASK] # Describe available tasks or one specific task
23
- map # Apply Enumerable#map on each line
21
+ grep # Enumerable#grep the first argument is the pattern matcher and the second is the block executed on each line.
22
+ map # Apply Enumerable#map on each line and outputs the results of the block by calling to_s on the returned object.
24
23
  merge # Merge consecutive lines
25
24
  scan # String#scan
26
25
  select # Enumerable#select
data/Rakefile CHANGED
@@ -3,8 +3,15 @@ Bundler::GemHelper.install_tasks
3
3
  Bundler.require(:default, :development)
4
4
  require 'rake/testtask'
5
5
 
6
- task :default => :test
6
+ require 'cucumber'
7
+ require 'cucumber/rake/task'
8
+
7
9
  Rake::TestTask.new do |t|
8
- t.pattern = "spec/*_spec.rb"
10
+ t.pattern = "spec/*_spec.rb"
11
+ end
12
+
13
+ Cucumber::Rake::Task.new(:features) do |t|
14
+ t.fork = false
9
15
  end
10
16
 
17
+ task :default => [:test, :features]
data/bin/rubyc CHANGED
@@ -1,113 +1,4 @@
1
- require 'thor'
2
- require 'yaml'
1
+ #!/usr/bin/env ruby
3
2
 
4
- module ::Enumerable
5
- def count_by
6
- self.inject({}) do |memo, elem|
7
- key = yield elem
8
- memo[key] ||= 0
9
- memo[key] += 1
10
- memo
11
- end
12
- end
13
-
14
- # This method was borrowed from ActiveSupport code
15
- def group_by
16
- self.inject({}) do |memo, elem|
17
- key = yield elem
18
- memo[key] ||= []
19
- memo[key] << elem
20
- memo
21
- end
22
- end
23
-
24
- # File activesupport/lib/active_support/core_ext/enumerable.rb, line 57
25
- def sum(identity = 0, &block)
26
- if block_given?
27
- map(&block).sum(identity)
28
- else
29
- inject { |sum, element| sum + element } || identity
30
- end
31
- end
32
- end
33
-
34
- class Rubyc < Thor
35
- $stdout.sync = true
36
- desc :map, "Apply Enumerable#map on each line"
37
- def map(code)
38
- proc = eval( "Proc.new{|line| l = line; #{code}}" )
39
- $stdin.each do |line|
40
- puts proc.call(line.chomp).to_s
41
- end
42
- end
43
-
44
- desc :sum, "Calculate the sum of Numeric expressed on each line"
45
- def sum(code = nil)
46
- code ||= "line"
47
- proc = eval("Proc.new{|line| l = line; #{code}}")
48
- sum = $stdin.sum do |line|
49
- proc.call(line.chomp).to_f
50
- end
51
- puts sum
52
- end
53
-
54
- desc :select, "Apply Enumerable#select on each line"
55
- def select(code)
56
- proc = eval("Proc.new{|line| l = line; #{code}}")
57
- $stdin.each do |line|
58
- puts line if proc.call(line.chomp)
59
- end
60
- end
61
-
62
- desc :count_by, "Count the number of lines that have the same property. The property is defined by the return value of the given the block"
63
- def count_by(code = nil)
64
- code ||= "line"
65
- proc = eval("Proc.new{|line| l = line; #{code}}")
66
- counts = $stdin.count_by do |line|
67
- proc.call(line.chomp)
68
- end
69
- puts counts.to_yaml
70
- end
71
-
72
- desc :sort_by, "Sort by"
73
- def sort_by(code = nil)
74
- code ||= "line"
75
- proc = eval("Proc.new{|line| l = line; #{code}}")
76
- counts = $stdin.sort_by do |line|
77
- proc.call(line.chomp)
78
- end
79
- puts counts
80
- end
81
-
82
- desc :grep, "Grep"
83
- def grep(pattern, code = nil)
84
- pattern = eval(pattern)
85
- proc = code ? eval("Proc.new{|line| l = line; #{code}}") : nil
86
- puts $stdin.grep(pattern, &proc)
87
- end
88
-
89
- desc :scan, "Scan"
90
- def scan(pattern, code = nil)
91
- pattern = eval(pattern)
92
- proc = code ? eval("Proc.new{|*match| m = match; #{code}}") : nil
93
- str = $stdin.read
94
- str.scan(pattern, &proc)
95
- end
96
-
97
- desc :uniq, "uniq"
98
- def uniq
99
- puts STDIN.to_a.uniq
100
- end
101
-
102
- desc :compact, "Remove empty lines"
103
- def compact
104
- STDIN.each{|line| puts line if line.chomp! != ""}
105
- end
106
-
107
- desc :merge, "Merge consecutive lines"
108
- def merge(nb_lines, sep = ",")
109
- STDIN.each_slice(nb_lines.to_i){|chunk| puts chunk.map{|elem| elem.strip}.join(sep)}
110
- end
111
- end
112
-
113
- Rubyc.start
3
+ require 'rubyc/cli'
4
+ Rubyc::CLI.start
@@ -0,0 +1,18 @@
1
+ Feature: My bootstrapped app kinda works
2
+ In order to get going on coding my awesome app
3
+ I want to have aruba and cucumber setup
4
+ So I don't have to do it myself
5
+
6
+ Scenario: App just runs
7
+ When I get help for "rubyc"
8
+ Then the exit status should be 0
9
+ And the following options should be documented:
10
+ |map|
11
+ |select|
12
+ |sum|
13
+ |sort_by|
14
+ |grep|
15
+ |compact|
16
+ |count_by|
17
+ |uniq|
18
+ |merge|
@@ -0,0 +1,104 @@
1
+ module Methadone
2
+ # By <tt>require</tt>'ing <tt>methadone/cucumber</tt> in your Cucumber setup (e.g. in <tt>env.rb</tt>), you
3
+ # gain access to the steps defined in this file. They provide you with the following:
4
+ #
5
+ # * Run <tt>command_to_run --help</tt> using aruba
6
+ #
7
+ # When I get help for "command_to_run"
8
+ #
9
+ # * Make sure that each option shows up in the help and has *some* sort of documentation
10
+ #
11
+ # Then the following options should be documented:
12
+ # |--force|
13
+ # |-x |
14
+ #
15
+ # * Check an individual option for documentation:
16
+ #
17
+ # Then the option "--force" should be documented
18
+ #
19
+ # * Checks that the help has a proper usage banner
20
+ #
21
+ # Then the banner should be present
22
+ #
23
+ # * Checks that the banner includes the version
24
+ #
25
+ # Then the banner should include the version
26
+ #
27
+ # * Checks that the usage banner indicates it takes options via <tt>[options]</tt>
28
+ #
29
+ # Then the banner should document that this app takes options
30
+ #
31
+ # * Do the opposite; check that you don't indicate options are accepted
32
+ #
33
+ # Then the banner should document that this app takes no options
34
+ #
35
+ # * Checks that the app's usage banner documents that its arguments are <tt>args</tt>
36
+ #
37
+ # Then the banner should document that this app's arguments are
38
+ # |foo|which is optional|
39
+ # |bar|which is required|
40
+ #
41
+ # * Do the opposite; check that your app doesn't take any arguments
42
+ #
43
+ # Then the banner should document that this app takes no arguments
44
+ #
45
+ # * Check for a usage description which occurs after the banner and a blank line
46
+ #
47
+ # Then there should be a one line summary of what the app does
48
+ #
49
+ module Cucumber
50
+ end
51
+ end
52
+ When /^I get help for "([^"]*)"$/ do |app_name|
53
+ @app_name = app_name
54
+ step %(I run `#{app_name} --help`)
55
+ end
56
+
57
+ Then /^the following options should be documented:$/ do |options|
58
+ options.raw.each do |option|
59
+ step %(the option "#{option[0]}" should be documented)
60
+ end
61
+ end
62
+
63
+ Then /^the option "([^"]*)" should be documented$/ do |option|
64
+ step %(the output should match /\\s*#{Regexp.escape(option)}[\\s\\W]+\\w\\w\\w+/)
65
+ end
66
+
67
+ Then /^the banner should be present$/ do
68
+ step %(the output should match /Usage: #{@app_name}/)
69
+ end
70
+
71
+ Then /^the banner should document that this app takes options$/ do
72
+ step %(the output should match /\[options\]/)
73
+ step %(the output should contain "Options")
74
+ end
75
+
76
+ Then /^the banner should document that this app's arguments are:$/ do |table|
77
+ expected_arguments = table.raw.map { |row|
78
+ option = row[0]
79
+ option = "[#{option}]" if row[1] == 'optional' || row[1] == 'which is optional'
80
+ option
81
+ }.join(' ')
82
+ step %(the output should contain "#{expected_arguments}")
83
+ end
84
+
85
+ Then /^the banner should document that this app takes no options$/ do
86
+ step %(the output should not contain "[options]")
87
+ step %(the output should not contain "Options")
88
+ end
89
+
90
+ Then /^the banner should document that this app takes no arguments$/ do
91
+ step %(the output should match /Usage: #{@app_name}\\s*\(\\[options\\]\)?$/)
92
+ end
93
+
94
+ Then /^the banner should include the version$/ do
95
+ step %(the output should match /v\\d+\\.\\d+\\.\\d+/)
96
+ end
97
+
98
+ Then /^there should be a one line summary of what the app does$/ do
99
+ output_lines = all_output.split(/\n/)
100
+ output_lines.should have_at_least(3).items
101
+ # [0] is our banner, which we've checked for
102
+ output_lines[1].should match(/^\s*$/)
103
+ output_lines[2].should match(/^\w+\s+\w+/)
104
+ end
@@ -0,0 +1,15 @@
1
+ require 'aruba/cucumber'
2
+
3
+ ENV['PATH'] = "#{File.expand_path(File.dirname(__FILE__) + '/../../bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
4
+ LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'..','..','lib')
5
+
6
+ Before do
7
+ # Using "announce" causes massive warnings on 1.9.2
8
+ @puts = true
9
+ @original_rubylib = ENV['RUBYLIB']
10
+ ENV['RUBYLIB'] = LIB_DIR + File::PATH_SEPARATOR + ENV['RUBYLIB'].to_s
11
+ end
12
+
13
+ After do
14
+ ENV['RUBYLIB'] = @original_rubylib
15
+ end
data/lib/rubyc/cli.rb ADDED
@@ -0,0 +1,122 @@
1
+ require 'yaml'
2
+ require 'thor'
3
+
4
+ module Rubyc
5
+ module ::Enumerable
6
+ def count_by
7
+ self.inject({}) do |memo, elem|
8
+ key = yield elem
9
+ memo[key] ||= 0
10
+ memo[key] += 1
11
+ memo
12
+ end
13
+ end
14
+
15
+ # This method was borrowed from ActiveSupport code
16
+ def group_by
17
+ self.inject({}) do |memo, elem|
18
+ key = yield elem
19
+ memo[key] ||= []
20
+ memo[key] << elem
21
+ memo
22
+ end
23
+ end
24
+
25
+ # File activesupport/lib/active_support/core_ext/enumerable.rb, line 57
26
+ def sum(identity = 0, &block)
27
+ if block_given?
28
+ map(&block).sum(identity)
29
+ else
30
+ inject { |sum, element| sum + element } || identity
31
+ end
32
+ end
33
+ end
34
+
35
+ class CLI < Thor
36
+ class_option :require, :aliases => '-r'
37
+
38
+ def initialize(*args)
39
+ super
40
+ libs = options[:require] ? options[:require].strip.split(":") : []
41
+ libs.each {|lib| require lib}
42
+ end
43
+
44
+
45
+ $stdout.sync = true
46
+ desc :map, "Apply Enumerable#map on each line"
47
+ def map(code)
48
+ proc = eval( "Proc.new{|line| l = line; #{code}}" )
49
+ $stdin.each do |line|
50
+ puts proc.call(line.chomp).to_s
51
+ end
52
+ end
53
+
54
+ desc :sum, "Calculate the sum of Numeric expressed on each line"
55
+ def sum(code = nil)
56
+ code ||= "line"
57
+ proc = eval("Proc.new{|line| l = line; #{code}}")
58
+ sum = $stdin.sum do |line|
59
+ proc.call(line.chomp).to_f
60
+ end
61
+ puts sum
62
+ end
63
+
64
+ desc :select, "Apply Enumerable#select on each line"
65
+ def select(code)
66
+ proc = eval("Proc.new{|line| l = line; #{code}}")
67
+ $stdin.each do |line|
68
+ puts line if proc.call(line.chomp)
69
+ end
70
+ end
71
+
72
+ desc :count_by, "Count the number of lines that have the same property. The property is defined by the return value of the given the block"
73
+ def count_by(code = nil)
74
+ code ||= "line"
75
+ proc = eval("Proc.new{|line| l = line; #{code}}")
76
+ counts = $stdin.count_by do |line|
77
+ proc.call(line.chomp)
78
+ end
79
+ puts counts.to_yaml
80
+ end
81
+
82
+ desc :sort_by, "Sort by"
83
+ def sort_by(code = nil)
84
+ code ||= "line"
85
+ proc = eval("Proc.new{|line| l = line; #{code}}")
86
+ counts = $stdin.sort_by do |line|
87
+ proc.call(line.chomp)
88
+ end
89
+ puts counts
90
+ end
91
+
92
+ desc :grep, "Grep"
93
+ def grep(pattern, code = nil)
94
+ pattern = eval(pattern)
95
+ proc = code ? eval("Proc.new{|line| l = line; #{code}}") : nil
96
+ puts $stdin.grep(pattern, &proc)
97
+ end
98
+
99
+ desc :scan, "Scan"
100
+ def scan(pattern, code = nil)
101
+ pattern = eval(pattern)
102
+ proc = code ? eval("Proc.new{|*match| m = match; #{code}}") : nil
103
+ str = $stdin.read
104
+ str.scan(pattern, &proc)
105
+ end
106
+
107
+ desc :uniq, "uniq"
108
+ def uniq
109
+ puts $stdin.to_a.uniq
110
+ end
111
+
112
+ desc :compact, "Remove empty lines"
113
+ def compact
114
+ $stdin.each{ |line| puts line if line.chomp! != ""}
115
+ end
116
+
117
+ desc :merge, "Merge consecutive lines"
118
+ def merge(nb_lines, sep = ",")
119
+ $stdin.each_slice(nb_lines.to_i){|chunk| puts chunk.map{|elem| elem.strip}.join(sep)}
120
+ end
121
+ end
122
+ end
data/lib/rubyc/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rubyc
2
- VERSION = "0.0.14"
2
+ VERSION = "0.0.16"
3
3
  end
data/rubyc.gemspec CHANGED
@@ -15,7 +15,9 @@ Gem::Specification.new do |s|
15
15
 
16
16
  s.add_dependency "thor"
17
17
  s.add_development_dependency 'rake'
18
- s.add_development_dependency("bundler", "~> 1.0")
18
+ s.add_development_dependency "bundler", "~> 1.0"
19
+ s.add_development_dependency 'minitest'
20
+ s.add_development_dependency 'aruba'
19
21
 
20
22
  s.files = `git ls-files`.split("\n")
21
23
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -0,0 +1,111 @@
1
+ ROOT_PATH = File.expand_path('../..', __FILE__)
2
+ require File.expand_path('../spec_helper', __FILE__)
3
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
4
+ require 'rubyc/cli'
5
+
6
+ include SpecHelper
7
+ # require 'colorize'
8
+ #
9
+ # module ColorizeIO
10
+ # def puts(str = "")
11
+ # red = "\\e[31m"
12
+ # blank = "\\e[0m"
13
+ # green = "\\e[32m"
14
+ # blue = "\\e[34m"
15
+ # magenta = "\\e[35m"
16
+ # #
17
+ # url_regex = %r{(\\S*.rb):(\\d+)(.*)}
18
+ # str.each_line do |line|
19
+ # if line =~ url_regex
20
+ # file_name = $1
21
+ # line_number = $2
22
+ # complement = $3
23
+ # if File.exist? file_name
24
+ # full_path = File.expand_path(file_name)
25
+ # app_trace = full_path.match(ROOT_PATH) && full_path !~ /vendor/
26
+ # new_line = "#{blue}txmt://open?url=file://#{File.dirname(full_path)}/#{red if app_trace }#{File.basename(full_path)}#{blank}&line=#{line_number
27
+ # }#{complement}"
28
+ # else
29
+ # new_line = line
30
+ # end
31
+ # else
32
+ # new_line = line
33
+ # end
34
+ # super(new_line + "\\n")
35
+ # end
36
+ # end
37
+ # end
38
+ #
39
+ # MiniTest::Unit.output.extend ColorizeIO
40
+
41
+ describe "A rubyc cli" do
42
+ before do
43
+ @cli = Rubyc::CLI.new
44
+ end
45
+
46
+ it "should map stdin to stdout" do
47
+ out_str = local_io("first\nsecond") do
48
+ @cli.map('l.upcase')
49
+ end
50
+ out_str.must_equal "FIRST\nSECOND\n"
51
+ end
52
+
53
+ it "should select line from stdin and send it to stdout" do
54
+ out_str = local_io("first\nsecond\nthird") do
55
+ @cli.select('l =~ /third/')
56
+ end
57
+ out_str.must_equal "third\n"
58
+ end
59
+
60
+ it "should sum line from stdin and send it to stdout" do
61
+ out_str = local_io("1\n2\nthird\n4") do
62
+ @cli.sum('l.to_i * 2')
63
+ end
64
+ out_str.must_equal "14.0\n"
65
+ end
66
+
67
+ it "should sort by stdin and send the result to stdout" do
68
+ out_str = local_io("a\nbbb\ncc\ndddd") do
69
+ @cli.sort_by('l.length')
70
+ end
71
+ out_str.must_equal "a\ncc\nbbb\ndddd\n"
72
+ end
73
+
74
+ it "should grep stdin and send the result to stdout" do
75
+ out_str = local_io("bbbb\nbbb\ncc\ndddd") do
76
+ @cli.grep('/^b/', 'l.upcase')
77
+ end
78
+ out_str.must_equal "BBBB\nBBB\n"
79
+ end
80
+
81
+ it "should count_by an algorithm and output to stdout" do
82
+ out_str = local_io("bbbb\nbbb\ncc\ndddd") do
83
+ @cli.count_by('l =~ /^(..)/;$1')
84
+ end
85
+ expected = {"bb" => 2, "cc" => 1, "dd" => 1}
86
+
87
+ YAML.load(out_str).must_equal expected
88
+ end
89
+
90
+ it "should remove empty lines from stdin and output to stdout" do
91
+ out_str = local_io("bbbb\n\ncc\n") do
92
+ @cli.compact
93
+ end
94
+ out_str.must_equal "bbbb\ncc\n"
95
+ end
96
+
97
+ it "should keep unique lines from stdin and output them to stdout" do
98
+ out_str = local_io("1\n2\n2\n3") do
99
+ @cli.uniq
100
+ end
101
+ out_str.must_equal "1\n2\n3\n"
102
+ end
103
+
104
+ it "should merge lines in group of n output them to stdout" do
105
+ out_str = local_io("1\n2\n3\n4\n5\n6\n7\n8") do
106
+ @cli.merge(3, ",")
107
+ end
108
+ out_str.must_equal "1,2,3\n4,5,6\n7,8\n"
109
+ end
110
+ end
111
+
@@ -0,0 +1,17 @@
1
+ $:.unshift File.expand_path('..', __FILE__)
2
+ $:.unshift File.expand_path('../../lib', __FILE__)
3
+ require 'rubyc'
4
+ require 'minitest/spec'
5
+ require 'minitest/autorun'
6
+
7
+ module SpecHelper
8
+ def local_io(in_str)
9
+ old_stdin, old_stdout = $stdin, $stdout
10
+ $stdin = StringIO.new(in_str)
11
+ $stdout = StringIO.new
12
+ yield
13
+ out_str = $stdout.string
14
+ $stdin, $stdout = old_stdin, old_stdout
15
+ out_str
16
+ end
17
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyc
3
3
  version: !ruby/object:Gem::Version
4
- hash: 3
4
+ hash: 63
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 14
10
- version: 0.0.14
9
+ - 16
10
+ version: 0.0.16
11
11
  platform: ruby
12
12
  authors:
13
13
  - Martin Chabot
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-01-06 00:00:00 Z
18
+ date: 2012-09-04 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  prerelease: false
@@ -29,8 +29,8 @@ dependencies:
29
29
  - 0
30
30
  version: "0"
31
31
  requirement: *id001
32
- type: :runtime
33
32
  name: thor
33
+ type: :runtime
34
34
  - !ruby/object:Gem::Dependency
35
35
  prerelease: false
36
36
  version_requirements: &id002 !ruby/object:Gem::Requirement
@@ -43,8 +43,8 @@ dependencies:
43
43
  - 0
44
44
  version: "0"
45
45
  requirement: *id002
46
- type: :development
47
46
  name: rake
47
+ type: :development
48
48
  - !ruby/object:Gem::Dependency
49
49
  prerelease: false
50
50
  version_requirements: &id003 !ruby/object:Gem::Requirement
@@ -58,8 +58,36 @@ dependencies:
58
58
  - 0
59
59
  version: "1.0"
60
60
  requirement: *id003
61
- type: :development
62
61
  name: bundler
62
+ type: :development
63
+ - !ruby/object:Gem::Dependency
64
+ prerelease: false
65
+ version_requirements: &id004 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 3
71
+ segments:
72
+ - 0
73
+ version: "0"
74
+ requirement: *id004
75
+ name: minitest
76
+ type: :development
77
+ - !ruby/object:Gem::Dependency
78
+ prerelease: false
79
+ version_requirements: &id005 !ruby/object:Gem::Requirement
80
+ none: false
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ hash: 3
85
+ segments:
86
+ - 0
87
+ version: "0"
88
+ requirement: *id005
89
+ name: aruba
90
+ type: :development
63
91
  description: Adds Ruby's powers to the command line
64
92
  email:
65
93
  - chabotm@gmail.com
@@ -75,9 +103,16 @@ files:
75
103
  - README.rdoc
76
104
  - Rakefile
77
105
  - bin/rubyc
106
+ - features/rubyc.feature
107
+ - features/step_definitions/.rubyc_steps.rb.swp
108
+ - features/step_definitions/rubyc_steps.rb
109
+ - features/support/env.rb
78
110
  - lib/rubyc.rb
111
+ - lib/rubyc/cli.rb
79
112
  - lib/rubyc/version.rb
80
113
  - rubyc.gemspec
114
+ - spec/rubyc_spec.rb
115
+ - spec/spec_helper.rb
81
116
  homepage: https://github.com/martinos/rubyc
82
117
  licenses: []
83
118
 
@@ -111,5 +146,10 @@ rubygems_version: 1.8.11
111
146
  signing_key:
112
147
  specification_version: 3
113
148
  summary: Adds Ruby's powers to the command line
114
- test_files: []
115
-
149
+ test_files:
150
+ - features/rubyc.feature
151
+ - features/step_definitions/.rubyc_steps.rb.swp
152
+ - features/step_definitions/rubyc_steps.rb
153
+ - features/support/env.rb
154
+ - spec/rubyc_spec.rb
155
+ - spec/spec_helper.rb