cap_proxy 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: bbc859cd43a3f1fdddb76eddfb6a9daa88742e2c
4
+ data.tar.gz: a2ce7969a04c062dbbd3c392dcf2857ec05d04e9
5
+ SHA512:
6
+ metadata.gz: ece313da94fa889b2ac30c78858774fa84c5f6da1d3a4c15777f5617e9f8c1fe873948f4c813c7d3ae6d4c0085bd366aa20be51583b6cfa186faaab8cc58a2a5
7
+ data.tar.gz: 2ece4dbe4afe5acdffb6638778536d72e0ff69c0f813c34aa9bb8eb50c0013d560546cbde9bed5b4481c1b68d1e3ace3b25ed314fa493c05acaaa5ce7bff9ce6
@@ -1,5 +1,4 @@
1
1
  require "eventmachine"
2
- require "uri"
3
2
  require "logger"
4
3
 
5
4
  module CapProxy
@@ -13,32 +12,41 @@ module CapProxy
13
12
  end
14
13
  end
15
14
 
16
- def self.run(test, bind_address, target)
15
+ def self.run(example, bind_address, target)
16
+ em_init = Queue.new
17
+ example_finished = EM::Queue.new
17
18
 
18
- EM.run do
19
+ Thread.new do
20
+ EM.run do
21
+ EM.error_handler do |error|
22
+ STDERR.puts error
23
+ STDERR.puts error.backtrace.map {|l| "\t#{l}" }
24
+ end
19
25
 
20
- proxy = nil
26
+ logger = Logger.new(STDERR)
27
+ logger.level = Logger::ERROR
28
+ proxy = Server.new(bind_address, target, logger)
29
+ proxy.run!
21
30
 
22
- EM.error_handler do |error|
23
- STDERR.puts error
24
- STDERR.puts error.backtrace.map {|l| "\t#{l}" }
25
- end
26
-
27
- logger = Logger.new(STDERR)
28
- logger.level = Logger::ERROR
29
- proxy = Server.new(bind_address, target, logger)
30
- proxy.run!
31
+ example_finished.pop do |q|
32
+ EM.stop_event_loop
33
+ q.push(nil)
34
+ end
31
35
 
32
- if block_given?
33
- yield proxy
36
+ em_init.push(proxy)
34
37
  end
38
+ end
35
39
 
36
- Thread.new do
37
- test.run
38
- end
39
- EM.stop_event_loop
40
+ proxy = em_init.pop
41
+ if block_given?
42
+ yield proxy
40
43
  end
41
44
 
45
+ example.run
46
+
47
+ q = Queue.new
48
+ example_finished.push(q)
49
+ q.pop
42
50
  end
43
51
  end
44
52
 
@@ -0,0 +1,3 @@
1
+ module CapProxy
2
+ VERSION = "0.1.1"
3
+ end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cap_proxy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
5
- prerelease:
4
+ version: 0.1.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ayose Cazorla
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-04-23 00:00:00.000000000 Z
11
+ date: 2014-04-24 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: eventmachine
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,39 +27,34 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: http_parser.rb
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: thread_safe
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,17 +69,15 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  description: HTTP proxy with the ability to capture requests and generate a fake response.
@@ -107,32 +96,32 @@ files:
107
96
  - lib/cap_proxy/server.rb
108
97
  - lib/cap_proxy/testkit.rb
109
98
  - lib/cap_proxy/testkit/em_wrapper.rb
99
+ - lib/cap_proxy/version.rb
110
100
  - spec/filters_spec.rb
111
101
  - spec/server_spec.rb
112
102
  - spec/spec_helper.rb
113
103
  homepage: https://github.com/ayosec/cap_proxy
114
104
  licenses:
115
105
  - MIT
106
+ metadata: {}
116
107
  post_install_message:
117
108
  rdoc_options: []
118
109
  require_paths:
119
110
  - lib
120
111
  required_ruby_version: !ruby/object:Gem::Requirement
121
- none: false
122
112
  requirements:
123
- - - ! '>='
113
+ - - '>='
124
114
  - !ruby/object:Gem::Version
125
115
  version: '0'
126
116
  required_rubygems_version: !ruby/object:Gem::Requirement
127
- none: false
128
117
  requirements:
129
- - - ! '>='
118
+ - - '>='
130
119
  - !ruby/object:Gem::Version
131
120
  version: '0'
132
121
  requirements: []
133
122
  rubyforge_project:
134
- rubygems_version: 1.8.23
123
+ rubygems_version: 2.0.14
135
124
  signing_key:
136
- specification_version: 3
125
+ specification_version: 4
137
126
  summary: HTTP Proxy with ability to capture and manipulate requests.
138
127
  test_files: []