Skip to content

Commit 218e3a4

Browse files
committed
Update middlewares
1 parent 916ad59 commit 218e3a4

File tree

3 files changed

+17
-29
lines changed

3 files changed

+17
-29
lines changed

lib/cypress_on_rails/vcr/insert_eject_middleware.rb

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
require_relative 'base_middleware'
1+
require_relative 'middleware_helpers'
22

33
module CypressOnRails
44
module Vcr
55
# Middleware to handle vcr with insert/eject endpoints
6-
class InsertEjectMiddleware < BaseMiddleware
6+
class InsertEjectMiddleware
7+
include MiddlewareHelpers
8+
79
def initialize(app, vcr = nil)
8-
@app = app
9-
@vcr = vcr
10+
super(app, vcr)
1011
@first_call = false
1112
end
1213

Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
1-
require 'json'
2-
require 'rack'
31
require 'cypress_on_rails/middleware_config'
42

53
module CypressOnRails
64
module Vcr
7-
# Base abstract Middleware
8-
class BaseMiddleware
5+
# Provides helper methods for VCR middlewares
6+
module MiddlewareHelpers
97
include MiddlewareConfig
108

11-
def initialize(**_args)
12-
raise_not_implemented
13-
end
14-
15-
def call(_env)
16-
raise_not_implemented
9+
def initialize(app, vcr = nil)
10+
@app = app
11+
@vcr = vcr
1712
end
1813

1914
def vcr
2015
@vcr ||= configure_vcr
2116
end
2217

18+
def cassette_library_dir
19+
"#{configuration.install_folder}/fixtures/vcr_cassettes"
20+
end
21+
2322
private
2423

2524
def configure_vcr
@@ -29,15 +28,6 @@ def configure_vcr
2928
end
3029
VCR
3130
end
32-
33-
def cassette_library_dir
34-
"#{configuration.install_folder}/fixtures/vcr_cassettes"
35-
end
36-
37-
def raise_not_implemented
38-
raise NotImplementedError,
39-
'BaseMiddleware can not be initialized directly, use InsertEjectMiddleware or UseCassetteMiddleware'
40-
end
4131
end
4232
end
4333
end

lib/cypress_on_rails/vcr/use_cassette_middleware.rb

+3-6
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
require_relative 'base_middleware'
1+
require_relative 'middleware_helpers'
22

33
module CypressOnRails
44
module Vcr
55
# Middleware to handle vcr with use_cassette
6-
class UseCassetteMiddleware < BaseMiddleware
7-
def initialize(app, vcr = nil)
8-
@app = app
9-
@vcr = vcr
10-
end
6+
class UseCassetteMiddleware
7+
include MiddlewareHelpers
118

129
def call(env)
1310
return @app.call(env) if should_not_use_vcr?

0 commit comments

Comments
 (0)