cap_proxy 0.1.0 → 0.1.1
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.
- checksums.yaml +7 -0
- data/lib/cap_proxy/testkit/em_wrapper.rb +27 -19
- data/lib/cap_proxy/version.rb +3 -0
- metadata +14 -25
checksums.yaml
ADDED
@@ -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(
|
15
|
+
def self.run(example, bind_address, target)
|
16
|
+
em_init = Queue.new
|
17
|
+
example_finished = EM::Queue.new
|
17
18
|
|
18
|
-
|
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
|
-
|
26
|
+
logger = Logger.new(STDERR)
|
27
|
+
logger.level = Logger::ERROR
|
28
|
+
proxy = Server.new(bind_address, target, logger)
|
29
|
+
proxy.run!
|
21
30
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
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
|
-
|
33
|
-
yield proxy
|
36
|
+
em_init.push(proxy)
|
34
37
|
end
|
38
|
+
end
|
35
39
|
|
36
|
-
|
37
|
-
|
38
|
-
|
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
|
|
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.
|
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-
|
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:
|
123
|
+
rubygems_version: 2.0.14
|
135
124
|
signing_key:
|
136
|
-
specification_version:
|
125
|
+
specification_version: 4
|
137
126
|
summary: HTTP Proxy with ability to capture and manipulate requests.
|
138
127
|
test_files: []
|