proxy_rb 0.9.0 → 0.9.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 +4 -4
- data/History.md +14 -10
- data/README.md +49 -4
- data/lib/proxy_rb/cli.rb +1 -1
- data/lib/proxy_rb/initializer.rb +28 -23
- data/lib/proxy_rb/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db2b6b006763313a39081d93fc12f396121c3eed
|
4
|
+
data.tar.gz: db163862c51a5bac75d724b30de5e06606531bc9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c49f214fbf0d2934182d0b040dd955c495c64ed0ffe0e77d01bb1772acfd84401b829ef7a43772f4126d28e518bd053c742f5e1726b0f4f5984214bfac899e00
|
7
|
+
data.tar.gz: a35c9ea6dd29b1e260af715515be72eb923179c9df5c37ca63ca3cb654e24b26abf8e1e9b7b86e2f6e787461e4204c2cafb129da6632e917bc35bfd8d3a63166
|
data/History.md
CHANGED
@@ -4,41 +4,45 @@ Empty
|
|
4
4
|
|
5
5
|
# RELEASED
|
6
6
|
|
7
|
-
## [v0.9.
|
7
|
+
## [v0.9.1](https://github.com/fedux-org/proxy_rb/compare/v0.9.0...v0.9.1)
|
8
|
+
|
9
|
+
* Added initializer for cucumber which I forgot to add earlier
|
10
|
+
|
11
|
+
## [v0.9.0](https://github.com/fedux-org/proxy_rb/compare/v0.8.3...v0.9.0)
|
8
12
|
|
9
13
|
* Added some step definitions for cucumber
|
10
14
|
|
11
|
-
## [v0.8.3](https://github.com/
|
15
|
+
## [v0.8.3](https://github.com/fedux-org/proxy_rb/compare/v0.8.2...v0.8.3)
|
12
16
|
|
13
17
|
* Make warning appear once
|
14
18
|
|
15
|
-
## [v0.8.2](https://github.com/
|
19
|
+
## [v0.8.2](https://github.com/fedux-org/proxy_rb/compare/v0.8.1...v0.8.2)
|
16
20
|
|
17
21
|
* Added warning if one disables `strict`-mode which was
|
18
22
|
|
19
|
-
## [v0.8.1](https://github.com/
|
23
|
+
## [v0.8.1](https://github.com/fedux-org/proxy_rb/compare/v0.8.0...v0.8.1)
|
20
24
|
|
21
25
|
* Handle drivers - like `capybara-selenium` which currently not support
|
22
26
|
`#response_headers` on `page.driver.response_headers`.
|
23
27
|
|
24
|
-
## [v0.8.0](https://github.com/
|
28
|
+
## [v0.8.0](https://github.com/fedux-org/proxy_rb/compare/v0.7.1...v0.8.0)
|
25
29
|
|
26
30
|
* Introduce `strict` option to make it possible to be more relaxed in matchers
|
27
31
|
when the response is not readable, this can lead to status_code == 0
|
28
32
|
|
29
|
-
## [v0.7.1](https://github.com/
|
33
|
+
## [v0.7.1](https://github.com/fedux-org/proxy_rb/compare/v0.7.0...v0.7.1)
|
30
34
|
|
31
35
|
* Handle nil as input for `#simple_table`
|
32
36
|
|
33
|
-
## [v0.7.0](https://github.com/
|
37
|
+
## [v0.7.0](https://github.com/fedux-org/proxy_rb/compare/v0.6.0...v0.7.0)
|
34
38
|
|
35
39
|
* Make simple_table-formatter available as method
|
36
40
|
|
37
|
-
## [v0.6.0](https://github.com/
|
41
|
+
## [v0.6.0](https://github.com/fedux-org/proxy_rb/compare/v0.5.0...v0.6.0)
|
38
42
|
|
39
43
|
* Added announcer for response headers
|
40
44
|
|
41
|
-
## [v0.5.0](https://github.com/
|
45
|
+
## [v0.5.0](https://github.com/fedux-org/proxy_rb/compare/v0.4.0...v0.5.0)
|
42
46
|
|
43
47
|
* Added initializer to bootstrap `proxy_prb`
|
44
48
|
* Improved documentation
|
@@ -49,6 +53,6 @@ Empty
|
|
49
53
|
* Addd new matchers to output better error messages
|
50
54
|
|
51
55
|
|
52
|
-
## [v0.4.0](https://github.com/
|
56
|
+
## [v0.4.0](https://github.com/fedux-org/proxy_rb/compare/v0.1.0...v0.4.0)
|
53
57
|
|
54
58
|
* Added support for `poltergeist`, `selenium` and `webkit`
|
data/README.md
CHANGED
@@ -26,7 +26,13 @@ Or install it yourself as:
|
|
26
26
|
|
27
27
|
## Usage
|
28
28
|
|
29
|
-
|
29
|
+
Please have a look at the
|
30
|
+
["features/getting_started"](features/getting_started)-directory for more
|
31
|
+
information about that topic. You may need to adjust the specs/features
|
32
|
+
according to your setup. And please, also read [Caveats](#caveats) as there
|
33
|
+
some limitations - e.g. no support for NTML and Kerberos.
|
34
|
+
|
35
|
+
### Getting started with "proxy_rb" and "rspec"
|
30
36
|
|
31
37
|
The following steps are only a suggestion. If you normally use a different
|
32
38
|
workflow, this is ok. Just make sure, that the `proxy_rb/rspec`-file is
|
@@ -76,9 +82,48 @@ RSpec.describe 'My Proxy' do
|
|
76
82
|
end
|
77
83
|
~~~
|
78
84
|
|
79
|
-
|
80
|
-
|
81
|
-
|
85
|
+
*Run command*
|
86
|
+
|
87
|
+
Then run `rspec`.
|
88
|
+
|
89
|
+
### Getting started with "proxy_rb" and "cucumber"
|
90
|
+
|
91
|
+
The following steps are only a suggestion. If you normally use a different
|
92
|
+
workflow, this is ok. Just make sure, that the `proxy_rb/cucumber`-file is
|
93
|
+
required by `cucumber` directly or indirectly.
|
94
|
+
|
95
|
+
*Initialize cucumber*
|
96
|
+
|
97
|
+
~~~bash
|
98
|
+
bundle exec cucumber --init
|
99
|
+
~~~
|
100
|
+
|
101
|
+
*Load library*
|
102
|
+
|
103
|
+
Create a file named `features/support/proxy_rb.rb`.
|
104
|
+
|
105
|
+
~~~ruby
|
106
|
+
require 'proxy_rb/cucumber'
|
107
|
+
~~~
|
108
|
+
|
109
|
+
*Create first Tests*
|
110
|
+
|
111
|
+
Create a file named `features/result.feature`.
|
112
|
+
|
113
|
+
~~~ruby
|
114
|
+
Feature: Test the result code of a request
|
115
|
+
Scenario: Request is allowed
|
116
|
+
Given I use the following proxies:
|
117
|
+
| proxy |
|
118
|
+
| http://localhost:8080 |
|
119
|
+
Then the following requests are allowed to pass the proxy:
|
120
|
+
| url |
|
121
|
+
| http://example.com |
|
122
|
+
~~~
|
123
|
+
|
124
|
+
*Run command*
|
125
|
+
|
126
|
+
Then run `cucumber`.
|
82
127
|
|
83
128
|
### Getting on with "proxy_rb"
|
84
129
|
|
data/lib/proxy_rb/cli.rb
CHANGED
@@ -19,7 +19,7 @@ module ProxyRb
|
|
19
19
|
end
|
20
20
|
|
21
21
|
desc 'init', 'Initialize proxy_rb'
|
22
|
-
option :test_framework, default: 'rspec', enum: %w(rspec), desc: 'Choose which test framework to use'
|
22
|
+
option :test_framework, default: 'rspec', enum: %w(rspec cucumber), desc: 'Choose which test framework to use'
|
23
23
|
def init
|
24
24
|
ProxyRb::Initializer.new.call(options[:test_framework])
|
25
25
|
end
|
data/lib/proxy_rb/initializer.rb
CHANGED
@@ -34,29 +34,6 @@ module ProxyRb
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
37
|
-
# ProxyRb
|
38
|
-
module ProxyRb
|
39
|
-
# Initializers
|
40
|
-
module Initializers
|
41
|
-
# Default Initializer
|
42
|
-
#
|
43
|
-
# This handles invalid values for initializer.
|
44
|
-
#
|
45
|
-
# @private
|
46
|
-
class FailingInitializer
|
47
|
-
class << self
|
48
|
-
def match?(*)
|
49
|
-
true
|
50
|
-
end
|
51
|
-
|
52
|
-
def start(*)
|
53
|
-
raise ArgumentError, %(Unknown test framework. Please use "rspec" )
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
|
60
37
|
# ProxyRb
|
61
38
|
module ProxyRb
|
62
39
|
# Initializer
|
@@ -98,6 +75,33 @@ module ProxyRb
|
|
98
75
|
end
|
99
76
|
end
|
100
77
|
|
78
|
+
# ProxyRb
|
79
|
+
module ProxyRb
|
80
|
+
# Initializer
|
81
|
+
module Initializers
|
82
|
+
# Add proxy_rb + rspec to project
|
83
|
+
#
|
84
|
+
# @private
|
85
|
+
class CucumberInitializer < Thor::Group
|
86
|
+
include Thor::Actions
|
87
|
+
|
88
|
+
no_commands do
|
89
|
+
def self.match?(framework)
|
90
|
+
:cucumber == framework.downcase.to_sym
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
def create_helper; end
|
95
|
+
|
96
|
+
def create_support_file
|
97
|
+
create_file 'features/support/proxy_rb.rb', <<~EOS
|
98
|
+
require 'proxy_rb/cucumber'
|
99
|
+
EOS
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
101
105
|
# ProxyRb
|
102
106
|
module ProxyRb
|
103
107
|
# The whole initializer
|
@@ -115,6 +119,7 @@ module ProxyRb
|
|
115
119
|
def initialize
|
116
120
|
@initializers = []
|
117
121
|
@initializers << Initializers::RSpecInitializer
|
122
|
+
@initializers << Initializers::CucumberInitializer
|
118
123
|
end
|
119
124
|
|
120
125
|
# Create files etc.
|
data/lib/proxy_rb/version.rb
CHANGED