rspec_editor 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: c8b6316137788bc95666da4a037b8f58f39ffc0a
4
+ data.tar.gz: 7222d4f778a0befe47c637b0f20ed2c29e1c3add
5
+ SHA512:
6
+ metadata.gz: 68b8b77cbf73ab9cab54aabba4437ec864de08387654414b4c1e7a5d4a9928dc1f9184680b4fdbb64d88aa448b90c8bf52df633c9ff51ce540092ec654f0ad1f
7
+ data.tar.gz: bfc5ac54818e9d3ce5881bc37cff4d456131a19d8a8570d88d5a7b9d68f7e6e6583b0e5279e45c08a85346502568452ab587ce4c58a2a79b0982874f25d204d4
data/.gitignore ADDED
@@ -0,0 +1,15 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+ /.rspec.error.log
11
+ *.bundle
12
+ *.so
13
+ *.o
14
+ *.a
15
+ mkmf.log
data/Gemfile ADDED
@@ -0,0 +1,15 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in rspec_editor.gemspec
4
+ # gemspec
5
+
6
+ group :development do
7
+ gem "pry", "~> 0.9"
8
+ gem "pry-debugger", "~> 0.2"
9
+ gem "rake", "~> 10.2"
10
+ gem "awesome_print", "~> 1.2"
11
+ gem "rspec", "~> 3.1"
12
+ gem "guard", "~> 2.6"
13
+ gem "guard-rspec", "~> 4.2"
14
+ gem "simplecov", "~> 0.9"
15
+ end
data/Guardfile ADDED
@@ -0,0 +1,8 @@
1
+ # -*- ruby -*-
2
+ guard 'rspec', cmd: 'bundle exec rspec --require rspec_editor -f d --format RspecEditor::Formatter' do
3
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
4
+ watch(%r{^spec/.*_spec.rb$})
5
+ watch(%r{spec_helper\.rb$}) { "spec" }
6
+ watch(%r{^spec/rspec\d+/.*_spec_example.rb$}) { "spec/rspec_spec.rb" }
7
+ end
8
+
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Kurt Stephens
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,38 @@
1
+ # RspecEditor
2
+
3
+ RSpec 2 and 3 Formatter that interfaces with your editor: emacs, vim,
4
+ etc.
5
+
6
+ Writes a file that can be interpreted as `grep -n` output.
7
+ Then invokes your editor.
8
+ Works well with emacs.
9
+
10
+ ## Installation
11
+
12
+ Add this line to your application's Gemfile:
13
+
14
+ ```ruby
15
+ gem 'rspec_editor'
16
+ ```
17
+
18
+ And then execute:
19
+
20
+ $ bundle
21
+
22
+ Or install it yourself as:
23
+
24
+ $ gem install rspec_editor
25
+
26
+ ## Usage
27
+
28
+ $ export RSPEC_EDITOR=emacsclient
29
+ $ export RSPEC_EDITOR_OUT=rspec.errors.log
30
+ $ rspec -require rspec_editor -f d -f RspecEditor::Formatter
31
+
32
+ ## Contributing
33
+
34
+ 1. Fork it ( https://github.com/kstephens/rspec_editor/fork )
35
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
36
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
37
+ 4. Push to the branch (`git push origin my-new-feature`)
38
+ 5. Create a new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,9 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ task :default => :spec
4
+
5
+ desc 'Run specs.'
6
+ task :spec do
7
+ sh %q[COVERAGE=1 bundle exec rspec]
8
+ end
9
+
@@ -0,0 +1,119 @@
1
+ require 'rspec_editor'
2
+
3
+ module RspecEditor
4
+ class Editor
5
+ attr_accessor :editor, :output_file
6
+
7
+ def check_enabled!
8
+ unless enabled?
9
+ log "set $RSPEC_EDITOR to enable."
10
+ end
11
+ self
12
+ end
13
+
14
+ def enabled?
15
+ ! ! editor
16
+ end
17
+
18
+ def editor
19
+ @editor ||= ENV['RSPEC_EDITOR']
20
+ end
21
+
22
+ def output_file
23
+ @output_file ||= ENV['RSPEC_EDITOR_OUT'] || '.rspec.error.log'
24
+ end
25
+
26
+ def current_directory
27
+ @current_directory ||= Dir.pwd
28
+ end
29
+
30
+ def open
31
+ return if @out
32
+ @log_already_exists = File.exist?(output_file)
33
+ @out = File.open(@tmp_file = "#{output_file}.tmp", "w")
34
+ puts "-*- mode: grep; mode: auto-revert; default-directory: \"#{current_directory}/\" -*-"
35
+ puts ""
36
+ end
37
+
38
+ def close *args
39
+ return self unless @out
40
+ @out.close rescue nil
41
+ @out = nil
42
+ File.rename(@tmp_file, output_file)
43
+ if @log_already_exists
44
+ log "# Refresh #{output_file} in your editor."
45
+ else
46
+ editor! output_file
47
+ end
48
+ self
49
+ ensure
50
+ @out = @log_already_exists = nil
51
+ end
52
+
53
+ def puts msg
54
+ @out.puts msg
55
+ end
56
+
57
+ def open_example! location
58
+ if location.to_s =~ /^([^:]+)(:(\d+))?$/
59
+ file, line = $1, $3
60
+ editor! file, line
61
+ else
62
+ raise ArgumentError, "Invalid location"
63
+ end
64
+ end
65
+
66
+ def editor! file, line = nil
67
+ cmd = editor_cmd(file, line)
68
+ log "Using editor: #{cmd}"
69
+ begin
70
+ system! cmd if cmd
71
+ rescue
72
+ $stderr.puts " #{self}: ERROR: #{cmd}: #{$!.inspect}"
73
+ end
74
+ end
75
+
76
+ def editor_cmd file, line = nil
77
+ file = File.expand_path(file)
78
+ line = nil if line && line.empty?
79
+ editor = self.editor
80
+ case editor
81
+ when ""
82
+ cmd = nil
83
+ when /emacs/
84
+ line &&= "+#{line}"
85
+ unless File.exist?(editor)
86
+ editor = emacsclient
87
+ end
88
+ cmd = "#{editor} -q -n #{line} #{file}"
89
+ when /vi/
90
+ line &&= "+#{line}"
91
+ cmd = "#{editor} --remote #{line} #{file}"
92
+ else
93
+ line &&= "--line #{line}"
94
+ cmd = "#{editor} #{line} #{file}"
95
+ end
96
+ cmd
97
+ end
98
+
99
+ def system! cmd
100
+ Process.fork do
101
+ system(cmd)
102
+ end
103
+ end
104
+
105
+ def log msg
106
+ $stderr.puts " #{self.class}: #{msg}"
107
+ end
108
+
109
+ def emacsclient
110
+ @emacsclient ||=
111
+ [
112
+ '/Applications/Aquamacs.app/Contents/MacOS/bin/emacsclient',
113
+ '/opt/local/bin/emacsclient',
114
+ '/usr/bin/emacsclient',
115
+ ].find{|f| File.executable? f} || 'emacsclient'
116
+ end
117
+ end
118
+ end
119
+
@@ -0,0 +1,14 @@
1
+ require 'rspec/version'
2
+
3
+ module RspecEditor
4
+ case RSpec::Version::STRING
5
+ when /^2\./
6
+ require 'rspec_editor/rspec2/formatter'
7
+ Formatter = Rspec2::Formatter
8
+ when /^3\./
9
+ require 'rspec_editor/rspec3/formatter'
10
+ Formatter = Rspec3::Formatter
11
+ else
12
+ raise "#{self}: RSpec VERSION #{RSpec::Version::STRING} is unsupported"
13
+ end
14
+ end
@@ -0,0 +1,55 @@
1
+ require "rspec/core/formatters/base_formatter"
2
+
3
+ module RspecEditor
4
+ module Rspec2
5
+ class Formatter < RSpec::Core::Formatters::BaseFormatter
6
+ def initialize *args, &blk
7
+ @editor = Editor.new
8
+ @editor.check_enabled!
9
+ super
10
+ end
11
+
12
+ def start_dump
13
+ result = super
14
+ if editor.enabled?
15
+ begin
16
+ editor.open
17
+ process_examples!
18
+ result
19
+ ensure
20
+ editor.close
21
+ end
22
+ end
23
+ result
24
+ end
25
+
26
+ private
27
+
28
+ attr_reader :editor
29
+
30
+ def process_examples!
31
+ failed_examples.each do | example |
32
+ write_example! example, editor
33
+ end
34
+ end
35
+
36
+ def write_example! example, editor
37
+ location = example.location
38
+ # location = File.expand_path(location)
39
+ editor.puts "#{location}: # #{example.full_description}"
40
+
41
+ exc = example.execution_result[:exception]
42
+ exc_desc = exc.inspect.gsub(/\n/, ' ')
43
+ editor.puts "#{location}: # #{exc_desc}"
44
+
45
+ i = 0
46
+ format_backtrace(exc.backtrace, example).each do |backtrace_info|
47
+ # backtrace_info = File.expand_path(backtrace_info)
48
+ editor.puts "%70s # %d" % [ backtrace_info.to_s, i += 1 ]
49
+ end
50
+
51
+ editor.puts ""
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,56 @@
1
+ require "rspec/core/formatters/base_text_formatter"
2
+
3
+ module RspecEditor
4
+ module Rspec3
5
+ class Formatter < RSpec::Core::Formatters::BaseTextFormatter
6
+ RSpec::Core::Formatters.register self, :open, :example_failed, :close
7
+
8
+ def initialize *args
9
+ super(nil)
10
+ @editor = Editor.new
11
+ @editor.check_enabled!
12
+ end
13
+ attr_reader :failed_examples
14
+
15
+ def open *args
16
+ if @editor.enabled?
17
+ @editor.open
18
+ end
19
+ end
20
+
21
+ def example_failed failure
22
+ return unless @editor.enabled?
23
+ @editor.open
24
+
25
+ example = failure.example
26
+ # location = File.expand_path(location)
27
+ location = example.location
28
+ editor.puts "#{location}: # #{example.full_description}"
29
+
30
+ exc = example.execution_result.exception
31
+ exc_desc = exc.inspect.gsub(/\n/, ' ')
32
+ editor.puts "#{location}: # #{exc_desc}"
33
+
34
+ i = 0
35
+ exc.backtrace.each do | bt |
36
+ bt = bt.to_s
37
+ next if bt =~ %r{/lib/rspec/core/}
38
+ break if bt =~ %r{/(?:bin|exe)/rspec:}
39
+ # next if bt =~ %r{/bin/rspec:}
40
+ # backtrace_info = File.expand_path(backtrace_info)
41
+ editor.puts "%70s # %d" % [ bt, i += 1 ]
42
+ end
43
+
44
+ editor.puts ""
45
+ end
46
+
47
+ def close *args
48
+ editor.close
49
+ end
50
+
51
+ private
52
+
53
+ attr_reader :editor
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,3 @@
1
+ module RspecEditor
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,9 @@
1
+ require "rspec_editor/version"
2
+
3
+ module RspecEditor
4
+ def self.root_dir
5
+ File.expand_path('../../', __FILE__)
6
+ end
7
+ end
8
+ require 'rspec_editor/editor'
9
+ require 'rspec_editor/formatter'
@@ -0,0 +1,27 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'rspec_editor/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "rspec_editor"
8
+ spec.version = RspecEditor::VERSION
9
+ spec.authors = ["Kurt Stephens"]
10
+ spec.email = ["ks.github@kurtstephens.com"]
11
+ spec.summary = %q{RSpec Formatter that interfaces with your editor.}
12
+ spec.description = %q{RSpec Formatter that interfaces with your editor.}
13
+ spec.homepage = "https://github.com/kstephens/rspec_editor"
14
+ spec.license = "MIT"
15
+
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_development_dependency "bundler", "~> 1.7"
22
+ spec.add_development_dependency "rake", "~> 10.0"
23
+ spec.add_development_dependency "rspec", "~> 3.1"
24
+ spec.add_development_dependency "guard", "~> 2.6"
25
+ spec.add_development_dependency "guard-rspec", "~> 4.2"
26
+ spec.add_development_dependency "simplecov", "~> 0.9"
27
+ end
@@ -0,0 +1,46 @@
1
+ require 'spec_helper'
2
+ require 'rspec_editor/editor'
3
+
4
+ module RspecEditor
5
+ class Editor
6
+ RSpec.describe Editor do
7
+ subject do
8
+ obj = Editor.new
9
+ obj.editor = editor
10
+ obj.output_file = output_file
11
+ def obj.system! cmd ; @system = cmd ; end
12
+ def obj.system ; @system ; end
13
+ obj
14
+ end
15
+ let(:output_file) { "tmp/test.#{$$}.log" }
16
+ after { File.unlink(output_file) rescue nil }
17
+ let(:output_file_content) { File.read(output_file) }
18
+
19
+ context "editor = emacs" do
20
+ let(:editor) { "emacs" }
21
+ it "writes an output file" do
22
+ subject.open
23
+ subject.puts "FOO"
24
+ subject.close
25
+
26
+ expect(output_file_content) .to include("-*- mode: grep")
27
+ expect(output_file_content) .to include("FOO")
28
+ expect(subject.system) .to match(%r{/emacsclient -q -n })
29
+ end
30
+ end
31
+
32
+ context "editor = vim" do
33
+ let(:editor) { "vim" }
34
+ it "writes an output file" do
35
+ subject.open
36
+ subject.puts "FOO"
37
+ subject.close
38
+
39
+ expect(output_file_content) .to include("-*- mode: grep")
40
+ expect(output_file_content) .to include("FOO")
41
+ expect(subject.system) .to match(%r{vim --remote })
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,5 @@
1
+ describe "RSpec 2" do
2
+ it "logs a failure" do
3
+ 1 .should == 2
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ RSpec.describe "RSpec 3" do
2
+ it "logs a failure" do
3
+ expect(1) .to eq 2
4
+ end
5
+ end
@@ -0,0 +1,67 @@
1
+ require 'spec_helper'
2
+ require 'rspec_editor'
3
+
4
+ RSpec.describe RspecEditor do
5
+ let(:output) { "tmp/test.#{$$}.log" }
6
+ let(:output_content) { File.read(output) }
7
+ after { File.unlink(output) rescue nil }
8
+
9
+ context "RSpec 2" do
10
+ let(:version) { '~> 2.99' }
11
+ let(:spec) { 'spec/rspec2/rspec2_spec_example.rb' }
12
+ it "should write to output file" do
13
+ run_rspec!
14
+ validate_output!
15
+ end
16
+ end
17
+
18
+ context "RSpec 3" do
19
+ let(:version) { '~> 3.0' }
20
+ let(:spec) { 'spec/rspec3/rspec3_spec_example.rb' }
21
+ it "should write to output file" do
22
+ run_rspec!
23
+ validate_output!
24
+ end
25
+ end
26
+
27
+ def validate_output!
28
+ expect(output_content) .to match(/mode: grep;/m)
29
+ expect(output_content) .to match(/mode: auto-revert;/m)
30
+ expect(output_content) .to match(/default-directory: /m)
31
+ expect(output_content) .to match(/_spec_example.rb:\d+: # RSpec \d logs a failure/m)
32
+ end
33
+
34
+ def run_rspec!
35
+ run_cmd! "rspec '_#{rspec_version}_' -I '#{RspecEditor.root_dir}/lib' --require rspec/version --require rspec_editor -f RspecEditor::Formatter #{spec}"
36
+ end
37
+
38
+ let(:rspec_version) { gem_version 'rspec', version }
39
+
40
+ def run_cmd! cmd
41
+ Bundler.with_clean_env do
42
+ ENV.keys.grep(/^BUNDLE_/).each{|k| ENV.delete(k)}
43
+ ENV['RSPEC_EDITOR'] = ''
44
+ ENV['RSPEC_EDITOR_OUT'] = output
45
+ $stderr.puts " Running: #{cmd}"
46
+ system cmd
47
+ end
48
+ end
49
+
50
+ def gem_version name, version
51
+ version = Gem::Requirement.new(version)
52
+ specs = all_installed_gems[name]
53
+ specs_matching = specs.select{|g| version.satisfied_by?(g.version)}
54
+ version = specs_matching.first.version.to_s
55
+ version
56
+ end
57
+
58
+ # http://stackoverflow.com/questions/5177634/list-of-installed-gems
59
+ def all_installed_gems
60
+ Gem::Specification.all = nil
61
+ result = Gem::Specification.sort_by{ |g| [g.version, g.name] }.reverse.group_by{ |g| g.name }
62
+ Gem::Specification.reset
63
+ result
64
+ end
65
+
66
+ end
67
+
@@ -0,0 +1,17 @@
1
+ if ENV['COVERAGE']
2
+ require 'simplecov'
3
+ SimpleCov.start do
4
+ add_filter '/spec/'
5
+ end
6
+ end
7
+
8
+ require 'rspec'
9
+ require 'pry'
10
+ require 'awesome_print'
11
+
12
+ RSpec.configure do |config|
13
+ config.run_all_when_everything_filtered = true
14
+ config.filter_run :focus
15
+ config.order = 'random'
16
+ end
17
+
data/tmp/.keep ADDED
File without changes
metadata ADDED
@@ -0,0 +1,152 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rspec_editor
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Kurt Stephens
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-12-23 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.7'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.7'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.1'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: guard
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.6'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.6'
69
+ - !ruby/object:Gem::Dependency
70
+ name: guard-rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '4.2'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '4.2'
83
+ - !ruby/object:Gem::Dependency
84
+ name: simplecov
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.9'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.9'
97
+ description: RSpec Formatter that interfaces with your editor.
98
+ email:
99
+ - ks.github@kurtstephens.com
100
+ executables: []
101
+ extensions: []
102
+ extra_rdoc_files: []
103
+ files:
104
+ - ".gitignore"
105
+ - Gemfile
106
+ - Guardfile
107
+ - LICENSE.txt
108
+ - README.md
109
+ - Rakefile
110
+ - lib/rspec_editor.rb
111
+ - lib/rspec_editor/editor.rb
112
+ - lib/rspec_editor/formatter.rb
113
+ - lib/rspec_editor/rspec2/formatter.rb
114
+ - lib/rspec_editor/rspec3/formatter.rb
115
+ - lib/rspec_editor/version.rb
116
+ - rspec_editor.gemspec
117
+ - spec/lib/rspec_editor/editor_spec.rb
118
+ - spec/rspec2/rspec2_spec_example.rb
119
+ - spec/rspec3/rspec3_spec_example.rb
120
+ - spec/rspec_spec.rb
121
+ - spec/spec_helper.rb
122
+ - tmp/.keep
123
+ homepage: https://github.com/kstephens/rspec_editor
124
+ licenses:
125
+ - MIT
126
+ metadata: {}
127
+ post_install_message:
128
+ rdoc_options: []
129
+ require_paths:
130
+ - lib
131
+ required_ruby_version: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: '0'
136
+ required_rubygems_version: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - ">="
139
+ - !ruby/object:Gem::Version
140
+ version: '0'
141
+ requirements: []
142
+ rubyforge_project:
143
+ rubygems_version: 2.2.2
144
+ signing_key:
145
+ specification_version: 4
146
+ summary: RSpec Formatter that interfaces with your editor.
147
+ test_files:
148
+ - spec/lib/rspec_editor/editor_spec.rb
149
+ - spec/rspec2/rspec2_spec_example.rb
150
+ - spec/rspec3/rspec3_spec_example.rb
151
+ - spec/rspec_spec.rb
152
+ - spec/spec_helper.rb