mirage 1.1.0 → 1.2.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.
- data/README.md +1 -1
- data/bin/mirage +28 -18
- data/features/client/set.feature +2 -2
- data/features/server/command_line_iterface.feature +1 -1
- data/features/server/file_responses.feature +2 -3
- data/features/server/logging.feature +1 -1
- data/features/server/peek.feature +3 -2
- data/features/step_definitions/my_steps.rb +12 -8
- data/features/support/env.rb +35 -21
- data/lib/mirage/client.rb +2 -1
- data/lib/mirage/core.rb +3 -1
- data/lib/mirage/util.rb +5 -2
- data/lib/start_mirage.rb +2 -1
- data/mirage.gemspec +10 -4
- data/rakefile +2 -19
- metadata +22 -13
- data/features/resources/test.zip +0 -0
data/README.md
CHANGED
@@ -10,7 +10,7 @@ I hope you find it useful,
|
|
10
10
|
|
11
11
|
Leon
|
12
12
|
|
13
|
-
P.s.
|
13
|
+
P.s. Mirage runs on Linux,MacOSX and Windows; Rubies 1.8, 1.9 and JRuby.
|
14
14
|
|
15
15
|
Installation
|
16
16
|
------------
|
data/bin/mirage
CHANGED
@@ -2,28 +2,46 @@
|
|
2
2
|
require 'rubygems'
|
3
3
|
$LOAD_PATH.unshift("#{File.dirname(__FILE__)}/../lib")
|
4
4
|
require 'mirage'
|
5
|
+
require 'childprocess'
|
5
6
|
include Mirage::Util
|
6
|
-
RUBY_CMD = RUBY_PLATFORM == '
|
7
|
+
RUBY_CMD = RUBY_PLATFORM == 'java' ? 'jruby' : 'ruby'
|
7
8
|
|
8
9
|
|
9
10
|
def start_mirage(args, mirage)
|
10
11
|
puts "Starting Mirage"
|
11
|
-
|
12
|
+
|
13
|
+
if windows?
|
14
|
+
command = ["cmd", "/C", "start", "\"mirage server\"", RUBY_CMD, "#{File.dirname(__FILE__)}/../lib/start_mirage.rb"]
|
15
|
+
else
|
16
|
+
command = [RUBY_CMD, "#{File.dirname(__FILE__)}/../lib/start_mirage.rb"]
|
17
|
+
end
|
18
|
+
ChildProcess.build(*(command.concat(args))).start
|
19
|
+
|
12
20
|
wait_until do
|
13
21
|
mirage.running?
|
14
22
|
end
|
15
23
|
end
|
16
24
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
25
|
+
|
26
|
+
def stop_mirage
|
27
|
+
if windows?
|
28
|
+
process_id = `tasklist /V | findstr "mirage\\ server"`.split(' ')[1]
|
29
|
+
`taskkill /F /T /PID #{process_id}` if process_id
|
30
|
+
else
|
31
|
+
begin
|
32
|
+
["Mirage Server", 'mirage start', 'start_mirage'].each do |process_name|
|
33
|
+
process_id = `ps aux | grep "#{process_name}" | grep -v grep`.split(' ')[1]
|
34
|
+
system "kill -9 #{process_id}" if process_id
|
35
|
+
end
|
36
|
+
rescue
|
37
|
+
puts 'Mirage is not running'
|
38
|
+
end
|
39
|
+
end
|
22
40
|
end
|
23
41
|
|
24
42
|
if ARGV.include?('start')
|
25
43
|
|
26
|
-
options =
|
44
|
+
options = parse_options(ARGV)
|
27
45
|
mirage_client = Mirage::Client.new "http://localhost:#{options[:port]}/mirage"
|
28
46
|
|
29
47
|
if mirage_client.running?
|
@@ -38,17 +56,9 @@ if ARGV.include?('start')
|
|
38
56
|
puts "WARN: #{e.message}"
|
39
57
|
end
|
40
58
|
|
41
|
-
|
42
59
|
elsif ARGV.include?('stop')
|
43
|
-
puts "
|
44
|
-
|
45
|
-
mirage_process_ids.each do |id|
|
46
|
-
puts "killing #{id}"
|
47
|
-
`kill -9 #{id}`
|
48
|
-
end
|
49
|
-
rescue
|
50
|
-
puts 'Mirage is not running'
|
51
|
-
end
|
60
|
+
puts "Stopping Mirage"
|
61
|
+
stop_mirage
|
52
62
|
else
|
53
63
|
parse_options ['--help']
|
54
64
|
exit 1
|
data/features/client/set.feature
CHANGED
@@ -73,7 +73,7 @@ Feature: the Mirage client provides methods for setting responses and loading de
|
|
73
73
|
Scenario: Setting a file as a response
|
74
74
|
Given I run
|
75
75
|
"""
|
76
|
-
Mirage::Client.new.set('download', File.open('
|
76
|
+
Mirage::Client.new.set('download', File.open('README.md'))
|
77
77
|
"""
|
78
78
|
When I hit 'http://localhost:7001/mirage/get/download'
|
79
|
-
Then the response should be a file the same as '
|
79
|
+
Then the response should be a file the same as 'README.md'
|
@@ -1,9 +1,8 @@
|
|
1
1
|
Feature: Mirage can also be used to host files.
|
2
2
|
|
3
|
-
#TODO - generate zip file or move resources directory
|
4
3
|
Scenario: A file is set as a response
|
5
4
|
Given I hit 'http://localhost:7001/mirage/set/some/location/download' with parameters:
|
6
|
-
| response |
|
5
|
+
| response | README.md |
|
7
6
|
|
8
7
|
When I hit 'http://localhost:7001/mirage/get/some/location/download'
|
9
|
-
Then the response should be a file the same as '
|
8
|
+
Then the response should be a file the same as 'README.md'
|
@@ -4,4 +4,4 @@ Feature: Output from Mirage is stored in mirage.log.
|
|
4
4
|
Scenario: response is set.
|
5
5
|
Given I post to 'http://localhost:7001/mirage/set/greeting' with parameters:
|
6
6
|
| response | Hello |
|
7
|
-
Then
|
7
|
+
Then mirage.log should contain '/mirage/set/greeting?response=Hello'
|
@@ -12,9 +12,10 @@ Feature: If you want to see the content of a particular response without trigger
|
|
12
12
|
|
13
13
|
Scenario: Peeking a file based response
|
14
14
|
Given I hit 'http://localhost:7001/mirage/set/download' with parameters:
|
15
|
-
| response |
|
15
|
+
| response | README.md |
|
16
|
+
|
16
17
|
When I hit 'http://localhost:7001/mirage/peek/1'
|
17
|
-
Then the response should be a file the same as '
|
18
|
+
Then the response should be a file the same as 'README.md'
|
18
19
|
|
19
20
|
|
20
21
|
Scenario: Peeking a response that does not exist
|
@@ -37,7 +37,7 @@ end
|
|
37
37
|
|
38
38
|
Given /^I run '(.*)'$/ do |command|
|
39
39
|
path = ENV['mode'] == 'regression' ? '' : "../bin/"
|
40
|
-
@commandline_output = normalise(
|
40
|
+
@commandline_output = normalise(run("#{path}#{command}"))
|
41
41
|
end
|
42
42
|
|
43
43
|
Given /^Mirage (is|is not) running$/ do |running|
|
@@ -62,9 +62,9 @@ Given /^the file '(.*)' contains:$/ do |file_path, content|
|
|
62
62
|
file_path = "#{SCRATCH}/#{file_path}" unless file_path =~ /^\//
|
63
63
|
|
64
64
|
FileUtils.rm_rf(file_path) if File.exists?(file_path)
|
65
|
-
|
66
|
-
|
67
|
-
file = File.new("#{
|
65
|
+
FileUtils.mkdir_p(File.dirname(file_path))
|
66
|
+
|
67
|
+
file = File.new("#{file_path}", 'w')
|
68
68
|
file.write(content)
|
69
69
|
file.close
|
70
70
|
end
|
@@ -94,7 +94,7 @@ When /^I (hit|get|post to) '(http:\/\/localhost:7001\/mirage\/(.*?))' with param
|
|
94
94
|
parameters = {}
|
95
95
|
table.raw.each do |row|
|
96
96
|
parameter, value = row[0].to_sym, row[1]
|
97
|
-
value = File.exists?(value) ? File.open(value) : value
|
97
|
+
value = File.exists?(value) ? File.open(value, 'rb') : value
|
98
98
|
parameters[parameter]=value
|
99
99
|
end
|
100
100
|
|
@@ -113,15 +113,19 @@ Then /^'(.*)' should exist$/ do |path|
|
|
113
113
|
File.exists?("#{SCRATCH}/#{path}").should == true
|
114
114
|
end
|
115
115
|
|
116
|
-
Then /^
|
117
|
-
|
116
|
+
Then /^mirage.log should contain '(.*)'$/ do |content|
|
117
|
+
log_file_content = @mirage_log_file.readlines.to_s
|
118
|
+
fail("#{content} not found in mirage.log: #{log_file_content}") unless log_file_content.index(content)
|
118
119
|
end
|
120
|
+
|
119
121
|
Given /^I goto '(.*)'$/ do |url|
|
120
122
|
@page = Mechanize.new.get url
|
121
123
|
end
|
124
|
+
|
122
125
|
Then /^I should see '(.*)'$/ do |text|
|
123
126
|
@page.body.index(text).should_not == nil
|
124
127
|
end
|
128
|
+
|
125
129
|
When /^I click '(.*)'$/ do |thing|
|
126
|
-
@page = @page.links.find{|link| link.attributes['id'] == thing}.click
|
130
|
+
@page = @page.links.find { |link| link.attributes['id'] == thing }.click
|
127
131
|
end
|
data/features/support/env.rb
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
$LOAD_PATH.unshift("#{File.dirname(__FILE__)}/../../lib")
|
2
2
|
require 'rubygems'
|
3
|
-
#require 'bundler/setup'
|
4
|
-
#Bundler.setup(:test)
|
5
3
|
require 'mirage'
|
6
4
|
require 'cucumber'
|
7
5
|
require 'rspec'
|
@@ -9,6 +7,16 @@ require 'mechanize'
|
|
9
7
|
|
10
8
|
SCRATCH = './scratch'
|
11
9
|
RUBY_CMD = RUBY_PLATFORM == 'JAVA' ? 'jruby' : 'ruby'
|
10
|
+
$log_file_marker = 0
|
11
|
+
|
12
|
+
|
13
|
+
module CommandLine
|
14
|
+
def execute command
|
15
|
+
command_line_output_path = "#{SCRATCH}/commandline_output.txt"
|
16
|
+
system "cd #{SCRATCH} && #{command} > #{File.basename(command_line_output_path)}"
|
17
|
+
File.read(command_line_output_path)
|
18
|
+
end
|
19
|
+
end
|
12
20
|
|
13
21
|
|
14
22
|
module Web
|
@@ -22,7 +30,7 @@ module Web
|
|
22
30
|
|
23
31
|
def hit_mirage(url, parameters={})
|
24
32
|
start_time = Time.now
|
25
|
-
file = parameters.values.find{|value| value.is_a?(File)}
|
33
|
+
file = parameters.values.find { |value| value.is_a?(File) }
|
26
34
|
response = (file ? http_post(url, parameters) : http_get(url, parameters))
|
27
35
|
@response_time = Time.now - start_time
|
28
36
|
response
|
@@ -35,34 +43,36 @@ end
|
|
35
43
|
|
36
44
|
|
37
45
|
module Regression
|
46
|
+
include CommandLine
|
47
|
+
|
38
48
|
def stop_mirage
|
39
|
-
system "
|
49
|
+
system "cd #{SCRATCH} && mirage stop"
|
40
50
|
end
|
41
51
|
|
42
52
|
def start_mirage
|
43
|
-
system "
|
44
|
-
|
53
|
+
system "cd #{SCRATCH} && mirage start"
|
54
|
+
end
|
55
|
+
|
56
|
+
def run command
|
57
|
+
execute(command)
|
45
58
|
end
|
46
59
|
end
|
47
60
|
|
48
61
|
module IntelliJ
|
62
|
+
include CommandLine
|
49
63
|
include Mirage::Util
|
50
64
|
|
51
65
|
def stop_mirage
|
52
|
-
system "cd #{SCRATCH} && ../bin/mirage stop"
|
53
|
-
wait_until do
|
54
|
-
!$mirage.running?
|
55
|
-
end
|
66
|
+
system "cd #{SCRATCH} && #{RUBY_CMD} ../bin/mirage stop"
|
56
67
|
end
|
57
68
|
|
58
69
|
def start_mirage
|
59
70
|
puts "starting mirage"
|
60
|
-
system "
|
61
|
-
|
71
|
+
system "cd #{SCRATCH} && #{RUBY_CMD} ../bin/mirage start"
|
72
|
+
end
|
62
73
|
|
63
|
-
|
64
|
-
|
65
|
-
end
|
74
|
+
def run command
|
75
|
+
execute "#{RUBY_CMD} #{command}"
|
66
76
|
end
|
67
77
|
end
|
68
78
|
|
@@ -74,17 +84,21 @@ World(Web)
|
|
74
84
|
Before do
|
75
85
|
FileUtils.mkdir_p(SCRATCH)
|
76
86
|
$mirage = Mirage::Client.new
|
77
|
-
|
78
87
|
if $mirage.running?
|
79
88
|
$mirage.clear
|
80
89
|
else
|
81
90
|
start_mirage
|
82
91
|
end
|
83
|
-
|
84
|
-
|
85
|
-
|
92
|
+
|
93
|
+
Dir["#{SCRATCH}/*"].each do |file|
|
94
|
+
FileUtils.rm_rf(file) unless file == "#{SCRATCH}/mirage.log"
|
95
|
+
end
|
96
|
+
|
97
|
+
@mirage_log_file = File.open("#{SCRATCH}/mirage.log")
|
98
|
+
@mirage_log_file.seek(0,IO::SEEK_END)
|
86
99
|
end
|
87
100
|
|
101
|
+
|
88
102
|
at_exit do
|
89
|
-
stop_mirage
|
90
|
-
end
|
103
|
+
stop_mirage if $mirage.running?
|
104
|
+
end
|
data/lib/mirage/client.rb
CHANGED
@@ -22,6 +22,7 @@ module Mirage
|
|
22
22
|
|
23
23
|
class Client
|
24
24
|
include ::Mirage::Web
|
25
|
+
attr_reader :url
|
25
26
|
|
26
27
|
# Creates an instance of the MIrage client that can be used to interact with the Mirage Server
|
27
28
|
#
|
@@ -58,7 +59,7 @@ module Mirage
|
|
58
59
|
# Client.set('greeting', 'hello', :pattern => 'regex or plain text':)
|
59
60
|
# Client.set('greeting', 'hello', :delay => 5) # number of seconds
|
60
61
|
def set endpoint, response, params={}
|
61
|
-
params[:response] = response
|
62
|
+
params[:response] = response.is_a?(File) ? File.open(response.path, 'rb') : response
|
62
63
|
response(http_post("#{@url}/set/#{endpoint}", params))
|
63
64
|
end
|
64
65
|
|
data/lib/mirage/core.rb
CHANGED
@@ -91,6 +91,7 @@ module Mirage
|
|
91
91
|
pattern = request['pattern'] ? /#{request['pattern']}/ : :basic
|
92
92
|
name = args.join('/')
|
93
93
|
is_default = request['default'] == 'true'
|
94
|
+
the_request = request
|
94
95
|
|
95
96
|
response = MockResponse.new(name, response_value, pattern, delay.to_f, is_default)
|
96
97
|
|
@@ -196,7 +197,8 @@ module Mirage
|
|
196
197
|
def send_response(response, body='', request={}, query_string='')
|
197
198
|
if response.file?
|
198
199
|
tempfile, filename, type = response.value.values_at(:tempfile, :filename, :type)
|
199
|
-
|
200
|
+
tempfile.binmode
|
201
|
+
send_file(tempfile.path, type, "Content-Length: #{tempfile.size}; Content-Disposition: attachment; filename=#{filename}")
|
200
202
|
else
|
201
203
|
response.value(body, request, query_string)
|
202
204
|
end
|
data/lib/mirage/util.rb
CHANGED
@@ -2,7 +2,7 @@ require 'optparse'
|
|
2
2
|
module Mirage
|
3
3
|
module Util
|
4
4
|
|
5
|
-
def wait_until time=
|
5
|
+
def wait_until time=45
|
6
6
|
start_time = Time.now
|
7
7
|
until Time.now >= start_time + time
|
8
8
|
sleep 0.1
|
@@ -28,13 +28,16 @@ module Mirage
|
|
28
28
|
begin
|
29
29
|
opt_parser.parse args
|
30
30
|
rescue
|
31
|
-
puts "mirage start|stop [OPTIONS]"
|
32
31
|
puts opt_parser
|
33
32
|
exit 1
|
34
33
|
end
|
35
34
|
|
36
35
|
options
|
37
36
|
end
|
37
|
+
|
38
|
+
def windows?
|
39
|
+
ENV['OS'] == 'Windows_NT'
|
40
|
+
end
|
38
41
|
end
|
39
42
|
|
40
43
|
end
|
data/lib/start_mirage.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
require 'rubygems'
|
2
2
|
$0='Mirage Server'
|
3
|
-
$LOAD_PATH.unshift(
|
3
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
4
4
|
require 'mirage'
|
5
5
|
include Mirage::Util
|
6
6
|
|
7
|
+
#puts "ARGV is " + ARGV
|
7
8
|
options = parse_options(ARGV)
|
8
9
|
|
9
10
|
DEFAULT_RESPONSES_DIR = "#{options[:defaults_directory]}"
|
data/mirage.gemspec
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
|
+
|
3
|
+
windows = ENV['OS'] == 'Windows_NT'
|
2
4
|
s.name = 'mirage'
|
3
|
-
s.version = '1.
|
5
|
+
s.version = '1.2.0'
|
4
6
|
s.authors = ["Leon Davis"]
|
5
7
|
s.homepage = 'https://github.com/lashd/mirage'
|
6
8
|
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.'
|
@@ -22,9 +24,13 @@ For more information go to: https://github.com/lashd/mirage/wiki
|
|
22
24
|
|
23
25
|
s.has_rdoc = 'true'
|
24
26
|
|
25
|
-
s.add_dependency 'rack',
|
26
|
-
s.add_dependency 'ramaze',
|
27
|
-
s.add_dependency
|
27
|
+
s.add_dependency 'rack', '~> 1.1.0'
|
28
|
+
s.add_dependency 'ramaze', '>= 2011.01.30'
|
29
|
+
s.add_dependency 'mechanize', '>= 1.0.0'
|
30
|
+
s.add_dependency 'childprocess', '~> 0.1'
|
31
|
+
|
32
|
+
s.add_dependency 'jruby-openssl' if RUBY_PLATFORM == 'java'
|
33
|
+
|
28
34
|
|
29
35
|
s.add_development_dependency 'rake'
|
30
36
|
s.add_development_dependency 'cucumber'
|
data/rakefile
CHANGED
@@ -1,16 +1,11 @@
|
|
1
1
|
$LOAD_PATH.unshift('lib')
|
2
2
|
require 'rubygems'
|
3
|
-
require 'bundler/setup'
|
4
|
-
|
5
|
-
require 'mirage/client'
|
6
3
|
require 'rake'
|
7
|
-
require 'open-uri'
|
8
4
|
require 'cucumber'
|
9
5
|
require 'cucumber/rake/task'
|
10
|
-
require 'mechanize'
|
11
6
|
|
12
7
|
def run_command command
|
13
|
-
system "
|
8
|
+
system "#{command}"
|
14
9
|
end
|
15
10
|
|
16
11
|
task :gem => :clean do
|
@@ -25,19 +20,7 @@ Cucumber::Rake::Task.new(:features) do |t|
|
|
25
20
|
t.cucumber_opts = "mode=regression features --format pretty"
|
26
21
|
end
|
27
22
|
|
28
|
-
task :start_mirage => :stop_mirage do
|
29
|
-
run_command "mirage start"
|
30
|
-
task.reenable
|
31
|
-
end
|
32
|
-
|
33
|
-
task :stop_mirage do |task|
|
34
|
-
run_command "mirage stop"
|
35
|
-
task.reenable
|
36
|
-
end
|
37
|
-
|
38
|
-
|
39
23
|
task :clean do |task|
|
40
|
-
|
41
24
|
if run_command "gem list -i mirage"
|
42
25
|
puts "cleaning"
|
43
26
|
run_command "gem uninstall -x mirage"
|
@@ -47,4 +30,4 @@ task :clean do |task|
|
|
47
30
|
end
|
48
31
|
|
49
32
|
|
50
|
-
task :default => [:install
|
33
|
+
task :default => [:install,:features,:clean]
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: mirage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 1.
|
5
|
+
version: 1.2.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Leon Davis
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-04-04 00:00:00 +01:00
|
14
14
|
default_executable: mirage
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -47,18 +47,18 @@ dependencies:
|
|
47
47
|
type: :runtime
|
48
48
|
version_requirements: *id003
|
49
49
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
50
|
+
name: childprocess
|
51
51
|
prerelease: false
|
52
52
|
requirement: &id004 !ruby/object:Gem::Requirement
|
53
53
|
none: false
|
54
54
|
requirements:
|
55
|
-
- -
|
55
|
+
- - ~>
|
56
56
|
- !ruby/object:Gem::Version
|
57
|
-
version: "0"
|
58
|
-
type: :
|
57
|
+
version: "0.1"
|
58
|
+
type: :runtime
|
59
59
|
version_requirements: *id004
|
60
60
|
- !ruby/object:Gem::Dependency
|
61
|
-
name:
|
61
|
+
name: rake
|
62
62
|
prerelease: false
|
63
63
|
requirement: &id005 !ruby/object:Gem::Requirement
|
64
64
|
none: false
|
@@ -69,7 +69,7 @@ dependencies:
|
|
69
69
|
type: :development
|
70
70
|
version_requirements: *id005
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
|
-
name:
|
72
|
+
name: cucumber
|
73
73
|
prerelease: false
|
74
74
|
requirement: &id006 !ruby/object:Gem::Requirement
|
75
75
|
none: false
|
@@ -80,7 +80,7 @@ dependencies:
|
|
80
80
|
type: :development
|
81
81
|
version_requirements: *id006
|
82
82
|
- !ruby/object:Gem::Dependency
|
83
|
-
name:
|
83
|
+
name: rspec
|
84
84
|
prerelease: false
|
85
85
|
requirement: &id007 !ruby/object:Gem::Requirement
|
86
86
|
none: false
|
@@ -90,6 +90,17 @@ dependencies:
|
|
90
90
|
version: "0"
|
91
91
|
type: :development
|
92
92
|
version_requirements: *id007
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
name: bundler
|
95
|
+
prerelease: false
|
96
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ">="
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: "0"
|
102
|
+
type: :development
|
103
|
+
version_requirements: *id008
|
93
104
|
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.
|
94
105
|
email:
|
95
106
|
executables:
|
@@ -110,7 +121,6 @@ files:
|
|
110
121
|
- features/client/save_and_revert.feature
|
111
122
|
- features/client/set.feature
|
112
123
|
- features/client/track.feature
|
113
|
-
- features/resources/test.zip
|
114
124
|
- features/server/clear.feature
|
115
125
|
- features/server/command_line_iterface.feature
|
116
126
|
- features/server/file_responses.feature
|
@@ -144,7 +154,7 @@ licenses: []
|
|
144
154
|
|
145
155
|
post_install_message: "\n\
|
146
156
|
===============================================================================\n\
|
147
|
-
Thanks you for installing mirage-1.
|
157
|
+
Thanks you for installing mirage-1.2.0. \n\n\
|
148
158
|
Run Mirage with:\n\n\
|
149
159
|
mirage start \n\n\
|
150
160
|
For more information go to: https://github.com/lashd/mirage/wiki\n\
|
@@ -171,7 +181,7 @@ rubyforge_project:
|
|
171
181
|
rubygems_version: 1.6.1
|
172
182
|
signing_key:
|
173
183
|
specification_version: 3
|
174
|
-
summary: mirage-1.
|
184
|
+
summary: mirage-1.2.0
|
175
185
|
test_files:
|
176
186
|
- features/client/clear.feature
|
177
187
|
- features/client/get.feature
|
@@ -180,7 +190,6 @@ test_files:
|
|
180
190
|
- features/client/save_and_revert.feature
|
181
191
|
- features/client/set.feature
|
182
192
|
- features/client/track.feature
|
183
|
-
- features/resources/test.zip
|
184
193
|
- features/server/clear.feature
|
185
194
|
- features/server/command_line_iterface.feature
|
186
195
|
- features/server/file_responses.feature
|
data/features/resources/test.zip
DELETED
Binary file
|