mock-server 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,11 +6,9 @@ class MockServer
6
6
  use Rack::ShowExceptions
7
7
  end
8
8
 
9
- def initialize(port = 4000, &block)
9
+ def initialize(app, port = 4000, &block)
10
+ @app = app
10
11
  @port = port
11
-
12
- @app = Class.new(Sinatra::Base)
13
- @app.class_eval(&block)
14
12
  end
15
13
 
16
14
  def start
@@ -27,7 +25,9 @@ class MockServer
27
25
 
28
26
  module Methods
29
27
  def mock_server(*args, &block)
30
- @server = MockServer.new(*args, &block).start
28
+ app = Class.new(Sinatra::Base)
29
+ app.class_eval(&block)
30
+ @server = MockServer.new(app, *args, &block).start
31
31
  end
32
32
  end
33
33
 
@@ -4,15 +4,16 @@ require "test/unit"
4
4
  require "ruby-debug"
5
5
  require "open-uri"
6
6
 
7
- class MockServerTest < Test::Unit::TestCase
8
- @@server = MockServer.new do
9
- get "/" do
10
- "Hello"
11
- end
7
+ class HelloWorldSinatra < Sinatra::Base
8
+ get "/" do
9
+ "Hello"
12
10
  end
11
+ end
13
12
 
13
+ class MockServerTest < Test::Unit::TestCase
14
14
  def setup
15
- @@server.start
15
+ @server = MockServer.new(HelloWorldSinatra)
16
+ @server.start
16
17
  end
17
18
 
18
19
  def test_server
@@ -20,16 +21,32 @@ class MockServerTest < Test::Unit::TestCase
20
21
  end
21
22
  end
22
23
 
24
+ HelloWorldRackBuilder = Rack::Builder.new do
25
+ run lambda {|env|
26
+ [200, {"Content-Type" => "text/plain", "Content-Length" => "7"}, ["Rackup!"]]
27
+ }
28
+ end
29
+
30
+ class MockServerRackBuilderTest < Test::Unit::TestCase
31
+ def setup
32
+ @server = MockServer.new(HelloWorldRackBuilder, 4001)
33
+ @server.start
34
+ end
35
+
36
+ def test_server
37
+ assert_equal "Rackup!", open("http://localhost:4001").read
38
+ end end
39
+
23
40
  class MockServerMethodsTest < Test::Unit::TestCase
24
41
  extend MockServer::Methods
25
42
 
26
- mock_server(4001) {
43
+ mock_server(4002) {
27
44
  get "/" do
28
45
  "Goodbye"
29
46
  end
30
47
  }
31
48
 
32
49
  def test_server
33
- assert_equal "Goodbye", open("http://localhost:4001").read
50
+ assert_equal "Goodbye", open("http://localhost:4002").read
34
51
  end
35
52
  end
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mock-server
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 1
8
- - 1
9
- version: 0.1.1
4
+ prerelease:
5
+ version: 0.1.2
10
6
  platform: ruby
11
7
  authors:
12
8
  - Damian Janowski
@@ -14,7 +10,7 @@ autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
12
 
17
- date: 2010-10-20 00:00:00 -03:00
13
+ date: 2011-06-29 00:00:00 -03:00
18
14
  default_executable:
19
15
  dependencies:
20
16
  - !ruby/object:Gem::Dependency
@@ -25,8 +21,6 @@ dependencies:
25
21
  requirements:
26
22
  - - ">="
27
23
  - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
24
  version: "0"
31
25
  type: :runtime
32
26
  version_requirements: *id001
@@ -57,21 +51,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
57
51
  requirements:
58
52
  - - ">="
59
53
  - !ruby/object:Gem::Version
60
- segments:
61
- - 0
62
54
  version: "0"
63
55
  required_rubygems_version: !ruby/object:Gem::Requirement
64
56
  none: false
65
57
  requirements:
66
58
  - - ">="
67
59
  - !ruby/object:Gem::Version
68
- segments:
69
- - 0
70
60
  version: "0"
71
61
  requirements: []
72
62
 
73
63
  rubyforge_project:
74
- rubygems_version: 1.3.7
64
+ rubygems_version: 1.6.2
75
65
  signing_key:
76
66
  specification_version: 3
77
67
  summary: A quick way of mocking an external web service you want to consume.