random_org_http_api 0.0.3 → 0.0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 467e2abb74244f0f471b85fd48166f1e0c0261fd
4
- data.tar.gz: f26795a3c1ff117a12e6a228fd6c529c65d457c2
3
+ metadata.gz: 87cf6a543500185e6d40cf14dca165293ab0a10a
4
+ data.tar.gz: 20ed9d531372a7d75c311091b441f3bd77c4d021
5
5
  SHA512:
6
- metadata.gz: 47d7b7ffbbde6c941fb3e74dd926184b81ca39dd3cec6af4d8b88987b04499b110aedae61aebd75753c0fcfa5d987b7655958670d9b8483be2da64be9c2f827b
7
- data.tar.gz: 464d646843b502f4a20c08d6193953f04888c1b905d1939134f94f79059a358a77b6e333c207c07ff6672400fd6af234586f1b346b7d54042b51db682a885b7b
6
+ metadata.gz: 5ee6fccefdb7e4d2ad4bfe3bb51f971614321323876100ca50d81af235935fd9d5bde4131856e2c06d61f5dd9d1cf23766ebebf31d0a5fcf33f33315d80d04ab
7
+ data.tar.gz: 36aafa91b88db009501db467309e9fd148660bd83244d5f7109f18c7ade44990ab6ba3741c98dbaf8add1be3387bbdad76c4527095906cb7a5c8fd6d86e9fc77
data/.travis.yml CHANGED
@@ -1,8 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 1.9.3
4
- - 2.0.0
5
- - 2.1.1
3
+ - 2.2.4
6
4
  branches:
7
5
  only:
8
6
  - master
@@ -1,6 +1,6 @@
1
1
  module RandomOrgHttpApi
2
2
  module Configuration
3
- DOMAIN = 'www.random.org'
3
+ DOMAIN = 'https://www.random.org'
4
4
  DEFAULT_QUERY_PARAMS = {
5
5
  format: 'plain',
6
6
  base: '10',
@@ -16,15 +16,15 @@ module RandomOrgHttpApi
16
16
  # Query templates
17
17
  # Integer
18
18
  INTEGER_QUERY_KEYS = [:num, :min, :max, :col, :base, :format, :rnd]
19
- INTEGER_QUERY_TEMPLATE = "/integers/?num=%{num}&min=%{min}&max=%{max}&col=%{col}&base=%{base}&format=%{format}&rnd=%{rnd}"
19
+ INTEGER_QUERY_TEMPLATE = "integers/?num=%{num}&min=%{min}&max=%{max}&col=%{col}&base=%{base}&format=%{format}&rnd=%{rnd}"
20
20
 
21
21
  # String
22
22
  STRING_QUERY_KEYS = [:num, :len, :digits, :upperalpha, :loweralpha, :unique, :format, :rnd]
23
- STRING_QUERY_TEMPLATE = "/strings/?num=%{num}&len=%{len}&digits=%{digits}&upperalpha=%{upperalpha}&loweralpha=%{loweralpha}&unique=%{unique}&format=%{format}&rnd=%{rnd}"
23
+ STRING_QUERY_TEMPLATE = "strings/?num=%{num}&len=%{len}&digits=%{digits}&upperalpha=%{upperalpha}&loweralpha=%{loweralpha}&unique=%{unique}&format=%{format}&rnd=%{rnd}"
24
24
 
25
25
  # Sequence
26
26
  SEQUENCE_QUERY_KEYS = [:min, :max, :col, :format, :rnd]
27
- SEQUENCE_QUERY_TEMPLATE = "/sequences/?min=%{min}&max=%{max}&col=%{col}&format=%{format}&rnd=%{rnd}"
27
+ SEQUENCE_QUERY_TEMPLATE = "sequences/?min=%{min}&max=%{max}&col=%{col}&format=%{format}&rnd=%{rnd}"
28
28
 
29
29
  end
30
30
  end
@@ -20,7 +20,7 @@ module RandomOrgHttpApi
20
20
 
21
21
  # Quota Checker
22
22
  def quota
23
- quota_query = "/quota/?ip=#{ip}&format=plain"
23
+ quota_query = "quota/?ip=#{ip}&format=plain"
24
24
  request(DOMAIN, quota_query).first.to_i
25
25
  end
26
26
 
@@ -29,7 +29,10 @@ module RandomOrgHttpApi
29
29
  # Метод запроса на сайт random.org
30
30
  def request(domain, query)
31
31
  # Создаем запрос
32
- res = Net::HTTP.get_response(domain, query)
32
+ uri = URI.join(domain, query)
33
+ http = Net::HTTP.new(uri.host, uri.port)
34
+ http.use_ssl = true
35
+ res = http.get(uri.request_uri)
33
36
  # Если все хорошо, то возвращаем форматированный ответ,
34
37
  # если нет, то показываем ответ ошибки сервера.
35
38
  res.is_a?(Net::HTTPSuccess) ? res.body.split : res.body.strip
@@ -1,3 +1,3 @@
1
1
  module RandomOrgHttpApi
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.3.1"
3
3
  end
@@ -25,36 +25,36 @@ describe RandomOrgHttpApi::Generator do
25
25
  it 'should do generate right query for integer' do
26
26
  object_type = 'integer'
27
27
  params = {num: 4, max: 100}
28
- right_query = '/integers/?num=4&min=1&max=100&col=1&base=10&format=plain&rnd=new'
28
+ right_query = 'integers/?num=4&min=1&max=100&col=1&base=10&format=plain&rnd=new'
29
29
  expect(@generator.send(:query, object_type, params)).to eq(right_query)
30
30
  end
31
31
 
32
32
  it 'should do generate right query for string' do
33
33
  object_type = 'string'
34
34
  params = {min: 1, max: 10, num: 3, len: 5}
35
- right_query = '/strings/?num=3&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
35
+ right_query = 'strings/?num=3&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
36
36
  expect(@generator.send(:query, object_type, params)).to eq(right_query)
37
37
  end
38
38
 
39
39
  it 'should do generate right query for sequence' do
40
40
  object_type = 'sequence'
41
41
  params = {num: 5, len: 10, max: 10}
42
- right_query = '/sequences/?min=1&max=10&col=1&format=plain&rnd=new'
42
+ right_query = 'sequences/?min=1&max=10&col=1&format=plain&rnd=new'
43
43
  expect(@generator.send(:query, object_type, params)).to eq(right_query)
44
44
  end
45
45
  end
46
46
 
47
47
  describe '#request' do
48
- domain = 'www.random.org'
48
+ domain = 'https://www.random.org'
49
49
 
50
50
  it 'should do return string with error message if request have bad response' do
51
- bad_query = '/strings/?num=HelloWorld&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
51
+ bad_query = 'strings/?num=HelloWorld&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
52
52
  expect(@generator.send(:request, domain, bad_query).class).to eq(String)
53
53
  end
54
54
 
55
55
  it 'should do return array if request have good response' do
56
56
  if @generator.quota > 0
57
- good_query = '/strings/?num=3&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
57
+ good_query = 'strings/?num=3&len=5&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new'
58
58
  expect(@generator.send(:request, domain, good_query).class).to eq(Array)
59
59
  end
60
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: random_org_http_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Temur Fatkulin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-25 00:00:00.000000000 Z
11
+ date: 2016-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,7 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
94
  version: '0'
95
95
  requirements: []
96
96
  rubyforge_project:
97
- rubygems_version: 2.2.2
97
+ rubygems_version: 2.4.5.1
98
98
  signing_key:
99
99
  specification_version: 4
100
100
  summary: Realization of old HTTP API provided by the random.org service