stretchr 1.3.2 → 1.3.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f5ed062936791748c65cef6341361551120e5083
4
- data.tar.gz: af8ed81ecfcb1bcb2e49ee4e598a6160969c8cd2
3
+ metadata.gz: 203c8335adca97f6815a985d709bf41e02136f69
4
+ data.tar.gz: 50de345a6b0bf7331782cebbda0e468c2417fad3
5
5
  SHA512:
6
- metadata.gz: 1ced73ec60a5bdee90662048481b12510fd753091efeeaee796c6ea5a45cc829c3b9987200e5d055d122b9f4d5043f89669569c8437b4dc474632ba4f700ba8c
7
- data.tar.gz: 38eba9401d33aad6937994d3f0f09c3df00696d720dd1d8aa0a9cec33bc77660056317b8ded71eb4b7b5e671e2aa953c94b2eda40b39bfc7ea7138a3bc61bce3
6
+ metadata.gz: 3b398c4a540889222f4505de45763c588c7c8f5493544e9fb5cb285dbbad561097c3ad0bef6a996182a7be8459de68d78747cc27c83fa7163a0125d1ac63dc19
7
+ data.tar.gz: 8e527045abb7e9dcba51f163db573ac36cd898f7a30f207c67c858ecbbd0dbf9f22292dbb698c4fe8e12dbaa464165aabf76855fc90fce0ed7be8cfa755eac53
@@ -1,6 +1,6 @@
1
1
  module Stretchr
2
2
  class Client
3
- attr_accessor :transporter, :api_version, :project, :key, :hostname, :account
3
+ attr_accessor :transporter, :api_version, :project, :key, :hostname, :account, :use_ssl
4
4
  # Initializes a new stretchr client
5
5
  # This is the main entrypoint into working with stretchr
6
6
  #
@@ -16,6 +16,7 @@ module Stretchr
16
16
  self.key = options[:key]
17
17
  self.hostname = options[:hostname] || Stretchr.config["hostname"]
18
18
  self.account = options[:account]
19
+ self.use_ssl = options[:use_ssl] == false ? false : Stretchr.config["use_ssl"]
19
20
  end
20
21
 
21
22
  # Catches everything you can throw at client and passes it on to a new request object
@@ -1,5 +1,6 @@
1
1
  api_version: v1.1
2
2
  hostname: stretchr.com
3
+ use_ssl: true
3
4
  v1.1:
4
5
  status: ~status
5
6
  data: ~data
@@ -32,7 +32,11 @@ module Stretchr
32
32
 
33
33
  # Builds a URI object
34
34
  def to_uri
35
- URI::HTTPS.build(host: merge_host, path: merge_path, query: merge_query)
35
+ if self.client.use_ssl
36
+ URI::HTTPS.build(host: merge_host, path: merge_path, query: merge_query)
37
+ else
38
+ URI::HTTP.build(host: merge_host, path: merge_path, query: merge_query)
39
+ end
36
40
  end
37
41
 
38
42
  # Set params for the url
@@ -14,7 +14,7 @@ module Stretchr
14
14
  #convert to a json string unless the user already did it...
15
15
  request[:body] = request[:body].to_json unless request[:body].is_a?(String)
16
16
 
17
- Net::HTTP.start(request[:uri].host, request[:uri].port, {use_ssl: true}) do |http|
17
+ Net::HTTP.start(request[:uri].host, request[:uri].port, {use_ssl: request[:client].use_ssl}) do |http|
18
18
  http_request = generate_request(request)
19
19
  response = http.request http_request # Net::HTTPResponse object
20
20
  end
data/test/test_client.rb CHANGED
@@ -56,5 +56,21 @@ describe "Client" do
56
56
  assert_equal Stretchr::JSONTransporter, stretchr.transporter.class, "Should have defaulted to JSON transport"
57
57
  end
58
58
 
59
+ it "Should accept a new hostname as valid" do
60
+ stretchr = Stretchr::Client.new({account: "asdf", project: "asdf", key: "asdf", hostname: "stretchr.it"})
61
+ url = stretchr.collection.to_url
62
+ assert_equal "https://asdf.stretchr.it/api/v1.1/asdf/collection?key=asdf", url, "Expected the URLs to match"
63
+ end
64
+
65
+ it "Should let me use http" do
66
+ #default to true
67
+ stretchr = Stretchr::Client.new
68
+ assert_equal true, stretchr.use_ssl, "Should have default to true for ssl"
69
+ stretchr = Stretchr::Client.new({account: "asdf", project: "asdf", key: "asdf", use_ssl: false})
70
+ url = stretchr.collection.to_url
71
+ assert_equal false, stretchr.use_ssl, "Should have stored the ssl preference"
72
+ assert_equal "http://asdf.stretchr.com/api/v1.1/asdf/collection?key=asdf", url, "Should have set the url to http"
73
+ end
74
+
59
75
 
60
76
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stretchr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2
4
+ version: 1.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Quinn
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-09 00:00:00.000000000 Z
11
+ date: 2014-06-16 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A gem for interacting with your stretchr data
14
14
  email: ryan@mazondo.com
@@ -53,7 +53,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
53
53
  version: '0'
54
54
  requirements: []
55
55
  rubyforge_project:
56
- rubygems_version: 2.1.11
56
+ rubygems_version: 2.0.14
57
57
  signing_key:
58
58
  specification_version: 4
59
59
  summary: A gem for managing your stretchr data