Class: Hobby::Devtools::RSpec
- Inherits:
-
Object
- Object
- Hobby::Devtools::RSpec
- Defined in:
- lib/hobby/devtools/rspec.rb
Class Method Summary collapse
Instance Method Summary collapse
- #app(&block) ⇒ Object
- #format(format) ⇒ Object
-
#initialize(&block) ⇒ RSpec
constructor
A new instance of RSpec.
- #path(path) ⇒ Object
Constructor Details
#initialize(&block) ⇒ RSpec
Returns a new instance of RSpec.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/hobby/devtools/rspec.rb', line 8 def initialize &block @path = 'spec/http' instance_exec &block Dir["#{@path}/**/*.yml"].each do |file| test = Hobby::Test.from_file file, format: @format ::RSpec.describe [test, @app] do before :each do |example| test, app = described_class socket = "app.for.#{test}.socket" @pid = fork do server = Puma::Server.new app.call server.add_unix_listener socket server.run sleep end sleep 0.01 until File.exist? socket @report = test[socket] end after(:each) { `kill -9 #{@pid}` } it 'works' do assert { @report.ok? } end end end end |
Class Method Details
.describe(&block) ⇒ Object
4 5 6 |
# File 'lib/hobby/devtools/rspec.rb', line 4 def self.describe &block new &block end |
Instance Method Details
#app(&block) ⇒ Object
40 41 42 |
# File 'lib/hobby/devtools/rspec.rb', line 40 def app &block @app = block end |
#format(format) ⇒ Object
48 49 50 |
# File 'lib/hobby/devtools/rspec.rb', line 48 def format format @format = format end |
#path(path) ⇒ Object
44 45 46 |
# File 'lib/hobby/devtools/rspec.rb', line 44 def path path @path = path end |