running_track 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/running_track.rb +4 -33
- data/lib/running_track/data.rb +4 -9
- data/lib/running_track/table.rb +10 -11
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cdd0326722779420f2e50e8eac5bca59061a8072
|
4
|
+
data.tar.gz: 62c43e136f2296111b6e4ead9027f7f5b6159fbb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 32da896e080dc9ab17d28d522aba7e4d613f18efde57d3f725cf20c87003fe4638d5e221cbfdb961cf99f796066c1b938942a4b688279857f0c7e7b84c86f31c
|
7
|
+
data.tar.gz: 7b515a4732a94260360199d59d5dc00bfe0f52aea4480a3cb796a0c9ebefc4a2886c7be99f133a86510b42b7c33f5a10d69f9438468e0c44579e010ccd91e2ec
|
data/lib/running_track.rb
CHANGED
@@ -1,42 +1,13 @@
|
|
1
1
|
require_relative 'running_track/data'
|
2
2
|
require_relative 'running_track/table'
|
3
3
|
|
4
|
-
|
5
4
|
module RunningTrack
|
6
5
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
# # end
|
11
|
-
|
12
|
-
def self.print type = :web
|
13
|
-
# data(type).print
|
14
|
-
data(type).print
|
15
|
-
# @cache[type].print
|
16
|
-
end
|
17
|
-
|
18
|
-
# def self.show_cache
|
19
|
-
# @cache
|
20
|
-
# end
|
21
|
-
|
22
|
-
# def self.drop_cache!
|
23
|
-
# @cache = {}
|
24
|
-
# end
|
25
|
-
|
26
|
-
|
27
|
-
private
|
28
|
-
|
29
|
-
def self.data type
|
30
|
-
data = Data.import type
|
31
|
-
Table.new data
|
32
|
-
# @cache[type] ||= Table.new data
|
6
|
+
def self.print
|
7
|
+
data = Data.import
|
8
|
+
Table.new(data).print
|
33
9
|
end
|
34
10
|
|
35
11
|
end
|
36
12
|
|
37
|
-
#
|
38
|
-
# RunningTrack.drop_cache!
|
39
|
-
# RunningTrack.print :file
|
40
|
-
# p RunningTrack.show_cache.keys
|
41
|
-
|
42
|
-
|
13
|
+
# RunningTrack.print
|
data/lib/running_track/data.rb
CHANGED
@@ -1,18 +1,13 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
1
|
require 'open-uri'
|
4
2
|
|
5
3
|
module RunningTrack
|
6
4
|
module Data
|
7
5
|
|
8
|
-
|
9
|
-
DATA_URL = "http://data.mos.ru/datasets/download/899"
|
6
|
+
DATA_URL = "http://api.data.mos.ru/v1/datasets/899/rows"
|
10
7
|
|
11
|
-
def self.import
|
12
|
-
|
13
|
-
open path
|
8
|
+
def self.import
|
9
|
+
open DATA_URL
|
14
10
|
end
|
15
11
|
|
16
12
|
end
|
17
|
-
end
|
18
|
-
|
13
|
+
end
|
data/lib/running_track/table.rb
CHANGED
@@ -1,34 +1,33 @@
|
|
1
|
+
require 'json'
|
2
|
+
require 'active_support/core_ext/hash/slice'
|
1
3
|
require 'terminal-table'
|
2
4
|
|
3
5
|
module RunningTrack
|
4
6
|
class Table
|
5
7
|
|
6
|
-
|
7
|
-
|
8
|
-
attr_reader :rows
|
8
|
+
HEADINGS = ["District", "Address", "HelpPhone", "ObjectHasWifi"]
|
9
9
|
|
10
10
|
def initialize data
|
11
|
-
puts "[RunningTrack::Table]: Create running track table"
|
12
11
|
@rows = prepare data
|
13
12
|
end
|
14
13
|
|
15
14
|
def print
|
16
|
-
|
17
|
-
|
15
|
+
@table ||= create_table
|
16
|
+
puts @table
|
18
17
|
end
|
19
18
|
|
20
19
|
|
21
|
-
|
20
|
+
private
|
22
21
|
|
23
22
|
def prepare data
|
24
|
-
data.map
|
23
|
+
JSON.parse(data.read).map! do |row|
|
24
|
+
row['Cells'].slice(*HEADINGS).values
|
25
|
+
end
|
25
26
|
end
|
26
27
|
|
27
28
|
def create_table
|
28
|
-
puts "[RunningTrack::Table]: Create terminal table"
|
29
|
-
headings = @rows.shift
|
30
29
|
sep_rows = @rows.zip(Array.new(@rows.count - 1){ :separator }).flatten(1).compact
|
31
|
-
Terminal::Table.new
|
30
|
+
Terminal::Table.new rows: sep_rows, headings: HEADINGS
|
32
31
|
end
|
33
32
|
|
34
33
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: running_track
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evgeniy Fateev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-09-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: terminal-table
|