mirage 2.4.1 → 2.4.2
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/Gemfile +0 -1
- data/Gemfile.lock +3 -4
- data/HISTORY +1 -0
- data/README.md +3 -0
- data/VERSION +1 -1
- data/lib/mirage/client/cli_bridge.rb +2 -4
- data/lib/mirage/client/client.rb +19 -3
- data/lib/mirage/client/runner.rb +16 -30
- data/mirage.gemspec +3 -5
- data/spec/client_spec.rb +38 -0
- data/spec/runner_spec.rb +15 -7
- metadata +30 -40
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -16,9 +16,9 @@ GEM
|
|
16
16
|
diff-lcs (1.1.3)
|
17
17
|
domain_name (0.5.1)
|
18
18
|
unf (~> 0.0.3)
|
19
|
-
eventmachine (1.0.0
|
20
|
-
eventmachine (1.0.0
|
21
|
-
eventmachine (1.0.0
|
19
|
+
eventmachine (1.0.0)
|
20
|
+
eventmachine (1.0.0-java)
|
21
|
+
eventmachine (1.0.0-x86-mingw32)
|
22
22
|
ffi (1.0.11)
|
23
23
|
ffi (1.0.11-java)
|
24
24
|
gherkin (2.7.2)
|
@@ -97,7 +97,6 @@ PLATFORMS
|
|
97
97
|
DEPENDENCIES
|
98
98
|
childprocess
|
99
99
|
cucumber
|
100
|
-
eventmachine (= 1.0.0.rc.4)
|
101
100
|
jeweler
|
102
101
|
jruby-openssl
|
103
102
|
mechanize
|
data/HISTORY
CHANGED
data/README.md
CHANGED
@@ -20,6 +20,7 @@ What's New?
|
|
20
20
|
-----------
|
21
21
|
### 2.4.0
|
22
22
|
---------
|
23
|
+
#### What do I get?
|
23
24
|
##### 1: Configure your client with defaults for each of your responses
|
24
25
|
Remove the repetition of setting things like the content-type each to time you put a response on to Mirage
|
25
26
|
|
@@ -31,6 +32,8 @@ Remove the repetition of setting things like the content-type each to time you p
|
|
31
32
|
end
|
32
33
|
|
33
34
|
client.put("greeting", "hello") -> template put on to Mirage with a delay of 0.5 seconds and content-type text/xml configured
|
35
|
+
#### What do I have to do to upgrade?
|
36
|
+
Nothing, this is a new feature. Let me know if you have any problems :)
|
34
37
|
|
35
38
|
|
36
39
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.4.
|
1
|
+
2.4.2
|
@@ -1,7 +1,6 @@
|
|
1
1
|
module Mirage
|
2
2
|
module CLIBridge
|
3
|
-
def mirage_process_ids
|
4
|
-
ports.flatten!
|
3
|
+
def mirage_process_ids ports
|
5
4
|
mirage_instances = {}
|
6
5
|
["Mirage Server", "mirage_server", "mirage server"].each do |process_name|
|
7
6
|
processes_with_name(process_name).lines.collect { |line| line.chomp }.each do |process_line|
|
@@ -11,7 +10,7 @@ module CLIBridge
|
|
11
10
|
end
|
12
11
|
end
|
13
12
|
|
14
|
-
return mirage_instances if ports.first.to_s
|
13
|
+
return mirage_instances if ports.first.to_s == "all" || ports.empty?
|
15
14
|
Hash[mirage_instances.find_all { |port, pid| ports.include?(port.to_i) }]
|
16
15
|
end
|
17
16
|
|
@@ -21,7 +20,6 @@ module CLIBridge
|
|
21
20
|
|
22
21
|
def processes_with_name name
|
23
22
|
if ChildProcess.windows?
|
24
|
-
|
25
23
|
`tasklist /V | findstr "#{name.gsub(" ", '\\ ')}"`
|
26
24
|
else
|
27
25
|
IO.popen("ps aux | grep '#{name}' | grep -v grep | grep -v #{$$}")
|
data/lib/mirage/client/client.rb
CHANGED
@@ -10,10 +10,22 @@ module Mirage
|
|
10
10
|
#
|
11
11
|
# Client.new => a client that is configured to connect to Mirage on http://localhost:7001/mirage (the default settings for Mirage)
|
12
12
|
# Client.new(URL) => a client that is configured to connect to an instance of Mirage running on the specified url.
|
13
|
+
# Client.new(hash) => a client that is configured to connect to an instance of Mirage running on the specified url or localhost port.
|
14
|
+
# e.g: Client.new(:url => url) or Client.new(:port => port)
|
13
15
|
#
|
14
16
|
# a block can be passed to configure the client with defaults: see configure
|
15
|
-
def initialize url
|
16
|
-
|
17
|
+
def initialize options={:url => "http://localhost:7001/mirage"}, &block
|
18
|
+
if options.is_a?(String) && options =~ URI.regexp
|
19
|
+
warn("Client.new(url): Deprecated usage, please use :url => url | :port => port")
|
20
|
+
@url = options
|
21
|
+
elsif options.kind_of?(Hash) && options[:port]
|
22
|
+
@url = "http://localhost:#{options[:port]}/mirage"
|
23
|
+
elsif options.kind_of?(Hash) && options[:url]
|
24
|
+
@url = options[:url]
|
25
|
+
else
|
26
|
+
raise "specify a valid URL or port"
|
27
|
+
end
|
28
|
+
|
17
29
|
reset
|
18
30
|
configure &block if block_given?
|
19
31
|
end
|
@@ -57,7 +69,7 @@ module Mirage
|
|
57
69
|
# end
|
58
70
|
def put endpoint, response_value, &block
|
59
71
|
response = Mirage::Response.new response_value
|
60
|
-
@defaults.each_pair{|key, value|response.send("#{key}=", value) if value}
|
72
|
+
@defaults.each_pair { |key, value| response.send("#{key}=", value) if value }
|
61
73
|
yield response if block_given?
|
62
74
|
|
63
75
|
build_response(http_put("#{@url}/templates/#{endpoint}", response.value, response.headers))
|
@@ -135,6 +147,10 @@ module Mirage
|
|
135
147
|
build_response(http_put("#{@url}/defaults", ''))
|
136
148
|
end
|
137
149
|
|
150
|
+
def == client
|
151
|
+
client.is_a?(Client) && @url == client.url
|
152
|
+
end
|
153
|
+
|
138
154
|
private
|
139
155
|
def build_response response
|
140
156
|
case response.code.to_i
|
data/lib/mirage/client/runner.rb
CHANGED
@@ -12,6 +12,7 @@ module Mirage
|
|
12
12
|
# Mirage.start :port => 9001 -> Configured MirageClient ready to use.
|
13
13
|
def start options={:port => 7001}
|
14
14
|
Runner.new.invoke(:start, [], options)
|
15
|
+
Mirage::Client.new(options)
|
15
16
|
end
|
16
17
|
|
17
18
|
# Stop locally running instance(s) of Mirage
|
@@ -20,7 +21,7 @@ module Mirage
|
|
20
21
|
# Mirage.stop -> Will stop mirage if there is only instance running. Can be running on any port.
|
21
22
|
# Mirage.stop :port => port -> stop mirage on a given port
|
22
23
|
# Mirage.stop :port => [port1, port2...] -> stops multiple running instances of Mirage
|
23
|
-
def stop options={}
|
24
|
+
def stop options={:port => []}
|
24
25
|
options = {:port => :all} if options == :all
|
25
26
|
|
26
27
|
if options[:port]
|
@@ -40,7 +41,7 @@ module Mirage
|
|
40
41
|
# Mirage.running? :port => port -> boolean indicating whether Mirage is running on *locally* on the given port
|
41
42
|
# Mirage.running? url -> boolean indicating whether Mirage is running on the given URL
|
42
43
|
def running? options_or_url = {:port => 7001}
|
43
|
-
url = options_or_url.
|
44
|
+
url = options_or_url.kind_of?(Hash) ? "http://localhost:#{options_or_url[:port]}/mirage" : options_or_url
|
44
45
|
http_get(url) and return true
|
45
46
|
rescue Errno::ECONNREFUSED
|
46
47
|
return false
|
@@ -59,15 +60,17 @@ module Mirage
|
|
59
60
|
method_option :debug, :type => :boolean, :default => false, :desc => "run in debug mode"
|
60
61
|
|
61
62
|
def start
|
62
|
-
|
63
|
-
|
63
|
+
port = options[:port]
|
64
|
+
process_ids = mirage_process_ids([port])
|
65
|
+
unless process_ids.empty?
|
66
|
+
warn "Mirage is already running: #{process_ids.values.join(",")}"
|
64
67
|
return
|
65
68
|
end
|
66
69
|
|
67
70
|
mirage_server_file = "#{File.dirname(__FILE__)}/../../../mirage_server.rb"
|
68
71
|
|
69
72
|
if ChildProcess.windows?
|
70
|
-
command = ["cmd", "/C", "start", "mirage server port #{
|
73
|
+
command = ["cmd", "/C", "start", "mirage server port #{port}", RUBY_CMD, mirage_server_file]
|
71
74
|
else
|
72
75
|
command = [RUBY_CMD, mirage_server_file]
|
73
76
|
end
|
@@ -76,41 +79,24 @@ module Mirage
|
|
76
79
|
command = command.concat(options.to_a).flatten.collect { |arg| arg.to_s }
|
77
80
|
ChildProcess.build(*command).start
|
78
81
|
|
79
|
-
|
80
|
-
wait_until(:timeout_after => 30.seconds) { mirage_client.running? }
|
82
|
+
wait_until(:timeout_after => 30.seconds) { Mirage.running?(options) }
|
81
83
|
|
82
84
|
begin
|
83
|
-
|
85
|
+
Mirage::Client.new(options).prime
|
84
86
|
rescue Mirage::InternalServerException => e
|
85
87
|
puts "WARN: #{e.message}"
|
86
88
|
end
|
87
|
-
mirage_client
|
88
89
|
end
|
89
90
|
|
90
91
|
desc "stop", "Stops mirage"
|
91
|
-
method_option :port, :aliases => "-p", :type => :array, :banner => "[port_1 port_2|all]", :desc => "port(s) of mirage instance(s). ALL stops all running instances"
|
92
|
+
method_option :port, :aliases => "-p", :type => :array, :default => [], :banner => "[port_1 port_2|all]", :desc => "port(s) of mirage instance(s). ALL stops all running instances"
|
92
93
|
|
93
94
|
def stop
|
94
|
-
ports = options[:port]
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
ports = case ports
|
101
|
-
when %w(all), [:all], []
|
102
|
-
[:all]
|
103
|
-
else
|
104
|
-
ports.collect { |port| port.to_i }
|
105
|
-
end
|
106
|
-
|
107
|
-
mirage_process_ids(ports).values.each do |process_id|
|
108
|
-
kill process_id
|
109
|
-
end
|
110
|
-
|
111
|
-
wait_until do
|
112
|
-
mirage_process_ids(ports).empty?
|
113
|
-
end
|
95
|
+
ports = options[:port].collect{|port| port=~/\d+/ ? port.to_i : port}
|
96
|
+
process_ids = mirage_process_ids(ports)
|
97
|
+
raise ClientError.new("Mirage is running on ports #{process_ids.keys.sort.join(", ")}. Please run mirage stop -p [PORT(s)] instead") if (process_ids.size > 1 && ports.empty?)
|
98
|
+
process_ids.values.each { |process_id| kill process_id }
|
99
|
+
wait_until { mirage_process_ids(options[:port]).empty? }
|
114
100
|
end
|
115
101
|
|
116
102
|
end
|
data/mirage.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "mirage"
|
8
|
-
s.version = "2.4.
|
8
|
+
s.version = "2.4.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Leon Davis"]
|
12
|
-
s.date = "2012-09-
|
12
|
+
s.date = "2012-09-20"
|
13
13
|
s.description = "Mirage aids testing of your applications by hosting mock responses so that your applications do not have to talk to real endpoints. Its accessible via HTTP and has a RESTful interface."
|
14
14
|
s.executables = ["mirage"]
|
15
15
|
s.extra_rdoc_files = [
|
@@ -69,6 +69,7 @@ Gem::Specification.new do |s|
|
|
69
69
|
"server/extensions/object.rb",
|
70
70
|
"server/mock_response.rb",
|
71
71
|
"spec/cli_bridge_spec.rb",
|
72
|
+
"spec/client_spec.rb",
|
72
73
|
"spec/runner_spec.rb",
|
73
74
|
"spec/spec_helper.rb",
|
74
75
|
"test.rb",
|
@@ -86,7 +87,6 @@ Gem::Specification.new do |s|
|
|
86
87
|
|
87
88
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
88
89
|
s.add_runtime_dependency(%q<sinatra>, [">= 0"])
|
89
|
-
s.add_runtime_dependency(%q<eventmachine>, ["= 1.0.0.rc.4"])
|
90
90
|
s.add_runtime_dependency(%q<childprocess>, [">= 0"])
|
91
91
|
s.add_runtime_dependency(%q<waitforit>, [">= 0"])
|
92
92
|
s.add_runtime_dependency(%q<thor>, [">= 0"])
|
@@ -101,7 +101,6 @@ Gem::Specification.new do |s|
|
|
101
101
|
s.add_development_dependency(%q<jruby-openssl>, [">= 0"])
|
102
102
|
else
|
103
103
|
s.add_dependency(%q<sinatra>, [">= 0"])
|
104
|
-
s.add_dependency(%q<eventmachine>, ["= 1.0.0.rc.4"])
|
105
104
|
s.add_dependency(%q<childprocess>, [">= 0"])
|
106
105
|
s.add_dependency(%q<waitforit>, [">= 0"])
|
107
106
|
s.add_dependency(%q<thor>, [">= 0"])
|
@@ -117,7 +116,6 @@ Gem::Specification.new do |s|
|
|
117
116
|
end
|
118
117
|
else
|
119
118
|
s.add_dependency(%q<sinatra>, [">= 0"])
|
120
|
-
s.add_dependency(%q<eventmachine>, ["= 1.0.0.rc.4"])
|
121
119
|
s.add_dependency(%q<childprocess>, [">= 0"])
|
122
120
|
s.add_dependency(%q<waitforit>, [">= 0"])
|
123
121
|
s.add_dependency(%q<thor>, [">= 0"])
|
data/spec/client_spec.rb
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'mirage/client'
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
describe Mirage::Client do
|
7
|
+
include Mirage
|
8
|
+
|
9
|
+
before :each do
|
10
|
+
@response = mock('response').as_null_object
|
11
|
+
end
|
12
|
+
|
13
|
+
|
14
|
+
it 'is configured to connect to local host port 7001 by default' do
|
15
|
+
client = Client.new
|
16
|
+
client.should_receive(:http_put).with(/localhost:7001/, anything, anything).and_return(@response)
|
17
|
+
client.put "greeting", "hello"
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'can be configured with a url pointing to Mirage' do
|
21
|
+
url = "http://url.for.mirage"
|
22
|
+
client = Client.new url
|
23
|
+
client.should_receive(:http_put).with(/#{url}/, anything, anything).and_return(@response)
|
24
|
+
client.put "greeting", "hello"
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'can be configured with a port refering to which port Mirage is running on on localhost' do
|
28
|
+
port = 9001
|
29
|
+
client = Client.new :port => port
|
30
|
+
client.should_receive(:http_put).with(/localhost:#{port}/, anything, anything).and_return(@response)
|
31
|
+
client.put "greeting", "hello"
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'raises an error if neither a port or url specified in the argument' do
|
35
|
+
expect{Client.new({})}.should raise_error()
|
36
|
+
expect{Client.new("rubbish")}.should raise_error()
|
37
|
+
end
|
38
|
+
end
|
data/spec/runner_spec.rb
CHANGED
@@ -13,7 +13,8 @@ describe Mirage do
|
|
13
13
|
|
14
14
|
it 'should start Mirage on port 7001 by default' do
|
15
15
|
@runner.should_receive(:invoke).with(:start, [], {:port => 7001})
|
16
|
-
Mirage.start
|
16
|
+
client = Mirage.start
|
17
|
+
client.should == Mirage::Client.new
|
17
18
|
end
|
18
19
|
|
19
20
|
it 'should start mirage on the given port' do
|
@@ -47,24 +48,31 @@ describe Mirage do
|
|
47
48
|
|
48
49
|
describe Mirage::Runner do
|
49
50
|
it 'should stop the running instance of Mirage' do
|
50
|
-
|
51
|
+
options = {:port => []}
|
51
52
|
runner = Mirage::Runner.new
|
52
|
-
runner.
|
53
|
+
runner.options = options
|
54
|
+
|
55
|
+
runner.should_receive(:mirage_process_ids).with([]).any_number_of_times.and_return({"7001" => "18901"})
|
53
56
|
|
54
57
|
runner.should_receive(:kill).with("18901") do
|
55
58
|
runner.rspec_reset
|
56
|
-
runner.should_receive(:mirage_process_ids).with([
|
59
|
+
runner.should_receive(:mirage_process_ids).with([]).any_number_of_times.and_return({})
|
57
60
|
end
|
58
61
|
|
59
|
-
runner
|
62
|
+
Mirage::Runner.should_receive(:new).and_return(runner)
|
63
|
+
runner.invoke(:stop, [], options)
|
60
64
|
end
|
61
65
|
|
62
66
|
it 'should not stop any instances when more than one is running' do
|
67
|
+
options = {:port => []}
|
63
68
|
runner = Mirage::Runner.new
|
64
|
-
runner.
|
69
|
+
runner.options = options
|
70
|
+
|
71
|
+
runner.should_receive(:mirage_process_ids).with([]).any_number_of_times.and_return({"7001" => "18901", "7002" => "18902", "7003" => "18903"})
|
65
72
|
runner.should_not_receive(:kill)
|
73
|
+
Mirage::Runner.should_receive(:new).and_return(runner)
|
66
74
|
|
67
|
-
lambda { runner.stop }.should raise_error(Mirage::ClientError)
|
75
|
+
lambda { runner.invoke(:stop, [], options) }.should raise_error(Mirage::ClientError)
|
68
76
|
end
|
69
77
|
|
70
78
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mirage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.4.
|
4
|
+
version: 2.4.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-09-
|
12
|
+
date: 2012-09-20 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sinatra
|
16
|
-
requirement: &
|
16
|
+
requirement: &25392540 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,21 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: eventmachine
|
27
|
-
requirement: &17770580 !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
|
-
requirements:
|
30
|
-
- - =
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: 1.0.0.rc.4
|
33
|
-
type: :runtime
|
34
|
-
prerelease: false
|
35
|
-
version_requirements: *17770580
|
24
|
+
version_requirements: *25392540
|
36
25
|
- !ruby/object:Gem::Dependency
|
37
26
|
name: childprocess
|
38
|
-
requirement: &
|
27
|
+
requirement: &25391440 !ruby/object:Gem::Requirement
|
39
28
|
none: false
|
40
29
|
requirements:
|
41
30
|
- - ! '>='
|
@@ -43,10 +32,10 @@ dependencies:
|
|
43
32
|
version: '0'
|
44
33
|
type: :runtime
|
45
34
|
prerelease: false
|
46
|
-
version_requirements: *
|
35
|
+
version_requirements: *25391440
|
47
36
|
- !ruby/object:Gem::Dependency
|
48
37
|
name: waitforit
|
49
|
-
requirement: &
|
38
|
+
requirement: &25390580 !ruby/object:Gem::Requirement
|
50
39
|
none: false
|
51
40
|
requirements:
|
52
41
|
- - ! '>='
|
@@ -54,10 +43,10 @@ dependencies:
|
|
54
43
|
version: '0'
|
55
44
|
type: :runtime
|
56
45
|
prerelease: false
|
57
|
-
version_requirements: *
|
46
|
+
version_requirements: *25390580
|
58
47
|
- !ruby/object:Gem::Dependency
|
59
48
|
name: thor
|
60
|
-
requirement: &
|
49
|
+
requirement: &25389580 !ruby/object:Gem::Requirement
|
61
50
|
none: false
|
62
51
|
requirements:
|
63
52
|
- - ! '>='
|
@@ -65,10 +54,10 @@ dependencies:
|
|
65
54
|
version: '0'
|
66
55
|
type: :runtime
|
67
56
|
prerelease: false
|
68
|
-
version_requirements: *
|
57
|
+
version_requirements: *25389580
|
69
58
|
- !ruby/object:Gem::Dependency
|
70
59
|
name: thin
|
71
|
-
requirement: &
|
60
|
+
requirement: &25384880 !ruby/object:Gem::Requirement
|
72
61
|
none: false
|
73
62
|
requirements:
|
74
63
|
- - ! '>='
|
@@ -76,10 +65,10 @@ dependencies:
|
|
76
65
|
version: '0'
|
77
66
|
type: :development
|
78
67
|
prerelease: false
|
79
|
-
version_requirements: *
|
68
|
+
version_requirements: *25384880
|
80
69
|
- !ruby/object:Gem::Dependency
|
81
70
|
name: rake
|
82
|
-
requirement: &
|
71
|
+
requirement: &25383820 !ruby/object:Gem::Requirement
|
83
72
|
none: false
|
84
73
|
requirements:
|
85
74
|
- - ! '>='
|
@@ -87,10 +76,10 @@ dependencies:
|
|
87
76
|
version: '0'
|
88
77
|
type: :development
|
89
78
|
prerelease: false
|
90
|
-
version_requirements: *
|
79
|
+
version_requirements: *25383820
|
91
80
|
- !ruby/object:Gem::Dependency
|
92
81
|
name: cucumber
|
93
|
-
requirement: &
|
82
|
+
requirement: &25382520 !ruby/object:Gem::Requirement
|
94
83
|
none: false
|
95
84
|
requirements:
|
96
85
|
- - ! '>='
|
@@ -98,10 +87,10 @@ dependencies:
|
|
98
87
|
version: '0'
|
99
88
|
type: :development
|
100
89
|
prerelease: false
|
101
|
-
version_requirements: *
|
90
|
+
version_requirements: *25382520
|
102
91
|
- !ruby/object:Gem::Dependency
|
103
92
|
name: rspec
|
104
|
-
requirement: &
|
93
|
+
requirement: &25381620 !ruby/object:Gem::Requirement
|
105
94
|
none: false
|
106
95
|
requirements:
|
107
96
|
- - ! '>='
|
@@ -109,10 +98,10 @@ dependencies:
|
|
109
98
|
version: '0'
|
110
99
|
type: :development
|
111
100
|
prerelease: false
|
112
|
-
version_requirements: *
|
101
|
+
version_requirements: *25381620
|
113
102
|
- !ruby/object:Gem::Dependency
|
114
103
|
name: jeweler
|
115
|
-
requirement: &
|
104
|
+
requirement: &25380220 !ruby/object:Gem::Requirement
|
116
105
|
none: false
|
117
106
|
requirements:
|
118
107
|
- - ! '>='
|
@@ -120,10 +109,10 @@ dependencies:
|
|
120
109
|
version: '0'
|
121
110
|
type: :development
|
122
111
|
prerelease: false
|
123
|
-
version_requirements: *
|
112
|
+
version_requirements: *25380220
|
124
113
|
- !ruby/object:Gem::Dependency
|
125
114
|
name: sinatra-contrib
|
126
|
-
requirement: &
|
115
|
+
requirement: &25379320 !ruby/object:Gem::Requirement
|
127
116
|
none: false
|
128
117
|
requirements:
|
129
118
|
- - ! '>='
|
@@ -131,10 +120,10 @@ dependencies:
|
|
131
120
|
version: '0'
|
132
121
|
type: :development
|
133
122
|
prerelease: false
|
134
|
-
version_requirements: *
|
123
|
+
version_requirements: *25379320
|
135
124
|
- !ruby/object:Gem::Dependency
|
136
125
|
name: mechanize
|
137
|
-
requirement: &
|
126
|
+
requirement: &25378420 !ruby/object:Gem::Requirement
|
138
127
|
none: false
|
139
128
|
requirements:
|
140
129
|
- - ! '>='
|
@@ -142,10 +131,10 @@ dependencies:
|
|
142
131
|
version: '0'
|
143
132
|
type: :development
|
144
133
|
prerelease: false
|
145
|
-
version_requirements: *
|
134
|
+
version_requirements: *25378420
|
146
135
|
- !ruby/object:Gem::Dependency
|
147
136
|
name: nokogiri
|
148
|
-
requirement: &
|
137
|
+
requirement: &25377700 !ruby/object:Gem::Requirement
|
149
138
|
none: false
|
150
139
|
requirements:
|
151
140
|
- - ! '>='
|
@@ -153,10 +142,10 @@ dependencies:
|
|
153
142
|
version: '0'
|
154
143
|
type: :development
|
155
144
|
prerelease: false
|
156
|
-
version_requirements: *
|
145
|
+
version_requirements: *25377700
|
157
146
|
- !ruby/object:Gem::Dependency
|
158
147
|
name: jruby-openssl
|
159
|
-
requirement: &
|
148
|
+
requirement: &25375700 !ruby/object:Gem::Requirement
|
160
149
|
none: false
|
161
150
|
requirements:
|
162
151
|
- - ! '>='
|
@@ -164,7 +153,7 @@ dependencies:
|
|
164
153
|
version: '0'
|
165
154
|
type: :development
|
166
155
|
prerelease: false
|
167
|
-
version_requirements: *
|
156
|
+
version_requirements: *25375700
|
168
157
|
description: Mirage aids testing of your applications by hosting mock responses so
|
169
158
|
that your applications do not have to talk to real endpoints. Its accessible via
|
170
159
|
HTTP and has a RESTful interface.
|
@@ -228,6 +217,7 @@ files:
|
|
228
217
|
- server/extensions/object.rb
|
229
218
|
- server/mock_response.rb
|
230
219
|
- spec/cli_bridge_spec.rb
|
220
|
+
- spec/client_spec.rb
|
231
221
|
- spec/runner_spec.rb
|
232
222
|
- spec/spec_helper.rb
|
233
223
|
- test.rb
|
@@ -249,7 +239,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
249
239
|
version: '0'
|
250
240
|
segments:
|
251
241
|
- 0
|
252
|
-
hash: -
|
242
|
+
hash: -1894067030623386639
|
253
243
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
254
244
|
none: false
|
255
245
|
requirements:
|