Class: Cucumber::Mailcatcher::HttpClient
- Inherits:
-
Object
- Object
- Cucumber::Mailcatcher::HttpClient
- Defined in:
- lib/cucumber/mailcatcher/http_client.rb
Constant Summary collapse
- @@server_url =
nil
Class Method Summary collapse
Instance Method Summary collapse
- #do_delete(relative_url) ⇒ Object
- #do_get(relative_url) ⇒ Object
- #do_get_json(relative_url) ⇒ Object
-
#initialize ⇒ HttpClient
constructor
A new instance of HttpClient.
Constructor Details
#initialize ⇒ HttpClient
Returns a new instance of HttpClient.
20 21 22 23 24 25 26 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 20 def initialize error = "Please set the Mailcatcher server url e.g. Cucumber::Mailcatcher::HttpClient.server_url = 'http://localhost:1080'" valid = @@server_url =~ /\A#{URI.regexp(%w(http https))}\z/ raise error unless valid end |
Class Method Details
.server_url ⇒ Object
12 13 14 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 12 def self.server_url @@server_url end |
.server_url=(server_url) ⇒ Object
16 17 18 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 16 def self.server_url=server_url @@server_url = server_url end |
Instance Method Details
#do_delete(relative_url) ⇒ Object
37 38 39 40 41 42 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 37 def do_delete relative_url uri = URI("#{@@server_url}#{relative_url}") request = Net::HTTP.new(uri.host,uri.port) request.delete(uri.path).code end |
#do_get(relative_url) ⇒ Object
28 29 30 31 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 28 def do_get relative_url uri = URI("#{@@server_url}#{relative_url}") Net::HTTP.get_response(uri) end |
#do_get_json(relative_url) ⇒ Object
33 34 35 |
# File 'lib/cucumber/mailcatcher/http_client.rb', line 33 def do_get_json relative_url JSON.load((do_get relative_url).body) end |