speedtest_net 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/speedtest_net.rb +2 -2
- data/lib/speedtest_net/error.rb +1 -0
- data/lib/speedtest_net/server.rb +14 -1
- data/lib/speedtest_net/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2e3230080f72a74bec40dabe93d6bd1f07bfad6f311a8a44d309d0cbe8ae5f4c
|
4
|
+
data.tar.gz: abf00585535f9a6582bcb6f20c969f38c5fb0af269c0e747d1eae2dd03f00554
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f942548d62c04d6be8a63720e923f315849685468f21e99edda0e03f5906ca303d00c6d566c4a2d14231688920a6ea6cac190ecd07374660c9578cc686d9bbf6
|
7
|
+
data.tar.gz: 2a482c31e6d54f4c245c24bfc77d31655519cc4b9638e0189e40e1a8b4ea7a4df92ac2a813c9cdca6b6beadab614673c3286d7d72cd72382053fce7ab4a0615c
|
data/lib/speedtest_net.rb
CHANGED
@@ -7,9 +7,9 @@ require 'speedtest_net/upload'
|
|
7
7
|
require 'speedtest_net/result'
|
8
8
|
|
9
9
|
module SpeedtestNet
|
10
|
-
def self.run
|
10
|
+
def self.run(id = nil)
|
11
11
|
config = SpeedtestNet::Config.fetch
|
12
|
-
server = SpeedtestNet::Server.
|
12
|
+
server = SpeedtestNet::Server.select_server(id)
|
13
13
|
download_results = SpeedtestNet::Download.measure(server)
|
14
14
|
upload_results = SpeedtestNet::Upload.measure(server)
|
15
15
|
|
data/lib/speedtest_net/error.rb
CHANGED
data/lib/speedtest_net/server.rb
CHANGED
@@ -38,6 +38,12 @@ module SpeedtestNet
|
|
38
38
|
servers.sort_by { |s| [s.distance, s.id] }
|
39
39
|
end
|
40
40
|
|
41
|
+
def select_server(id = nil)
|
42
|
+
id.nil? ? best_server : pick_server(id)
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
|
41
47
|
def best_server
|
42
48
|
servers = list
|
43
49
|
closest_servers = servers.first(10)
|
@@ -48,7 +54,14 @@ module SpeedtestNet
|
|
48
54
|
sorted_servers.first
|
49
55
|
end
|
50
56
|
|
51
|
-
|
57
|
+
def pick_server(id)
|
58
|
+
servers = list
|
59
|
+
server = servers.find { |s| s.id == id }
|
60
|
+
raise InvalidServerIdError if server.nil?
|
61
|
+
|
62
|
+
server.measure_latency
|
63
|
+
server
|
64
|
+
end
|
52
65
|
|
53
66
|
def create_instance(server)
|
54
67
|
config = SpeedtestNet::Config.fetch
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: speedtest_net
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryo Nakano
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -245,7 +245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
245
245
|
- !ruby/object:Gem::Version
|
246
246
|
version: '0'
|
247
247
|
requirements: []
|
248
|
-
rubygems_version: 3.
|
248
|
+
rubygems_version: 3.1.2
|
249
249
|
signing_key:
|
250
250
|
specification_version: 4
|
251
251
|
summary: Library for testing internet bandwidth using speedtest.net
|