rtime 0.1.1 → 1.0.0
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 +4 -4
- data/.reek +5 -0
- data/bin/rtime +4 -1
- data/lib/rtime/rts.rb +20 -13
- data/lib/rtime/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29e7070738d47b058a1a87cb0d474da0a35cf6ed
|
4
|
+
data.tar.gz: a1ac810a1e2fca23c7167d31b59b69046c0bab85
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7435ae4e13f9b54e41579df1e712f463921d584c2458eaae36f698d344c57270e9beb8205f46b980245475282ed7e0eb4bd2d1151e67f2a8cb80fb6ef4caf5d5
|
7
|
+
data.tar.gz: b389061a8211ccb7d2e3dffc0c6ff3f2845dd024f54fe77794ee5d5cf8235cb04954e13ca05b657ee934c25a7b0b0fec8dbcf78722bfde5e3e80b57d5e6adb61
|
data/.reek
ADDED
data/bin/rtime
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
require "bundler/setup"
|
2
3
|
require "thor"
|
3
4
|
require "rtime"
|
4
5
|
|
@@ -18,7 +19,9 @@ module RTime
|
|
18
19
|
|
19
20
|
if date_matcher =~ date1 && date_matcher =~ date2 && coverage_match
|
20
21
|
timestamps = RTime::RTS.timestamps(
|
21
|
-
date1,
|
22
|
+
{ start: date1, end: date2 },
|
23
|
+
coverage_match[:coverage].to_f / 100,
|
24
|
+
options
|
22
25
|
)
|
23
26
|
timestamps.each { |timestamp| puts "\n#{timestamp}" }
|
24
27
|
else
|
data/lib/rtime/rts.rb
CHANGED
@@ -12,8 +12,9 @@ module RTime
|
|
12
12
|
(0..23).to_a.sample
|
13
13
|
end
|
14
14
|
|
15
|
-
|
16
|
-
|
15
|
+
time_unit_sample = (0..59).to_a.sample
|
16
|
+
minute = time_unit_sample
|
17
|
+
second = time_unit_sample
|
17
18
|
|
18
19
|
[hour, minute, second]
|
19
20
|
end
|
@@ -21,6 +22,8 @@ module RTime
|
|
21
22
|
# Parses date from `YYYYMMDD` format
|
22
23
|
#
|
23
24
|
# Returns a time segment
|
25
|
+
#--
|
26
|
+
# TODO: investigate :reek:FeatureEnvy
|
24
27
|
def _parse_date date
|
25
28
|
match = /^(?<year>\d{4})(?<month>\d{2})(?<day>\d{2})$/.match date
|
26
29
|
|
@@ -42,19 +45,23 @@ module RTime
|
|
42
45
|
end
|
43
46
|
|
44
47
|
# Returns all the timestamp in a range
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
start_date, end_date =
|
48
|
+
#--
|
49
|
+
# TODO: investigate :reek:FeatureEnvy
|
50
|
+
def _timestamps_in_range date_range, options
|
51
|
+
start_date = Time.new(*_parse_date(date_range[:start]))
|
52
|
+
end_date = Time.new(*_parse_date(date_range[:end]))
|
53
|
+
start_date, end_date =
|
54
|
+
if start_date < end_date
|
55
|
+
[start_date, end_date]
|
56
|
+
else
|
57
|
+
[end_date, start_date]
|
58
|
+
end
|
51
59
|
range = []
|
52
60
|
tmp_date = start_date
|
53
|
-
while tmp_date <= end_date
|
54
61
|
|
55
|
-
|
62
|
+
while tmp_date <= end_date
|
56
63
|
range.push Time.new(
|
57
|
-
tmp_date.year, tmp_date.month, tmp_date.day,
|
64
|
+
tmp_date.year, tmp_date.month, tmp_date.day, *_time_for(options)
|
58
65
|
)
|
59
66
|
tmp_date += 60 * 60 * 24 # 1 day
|
60
67
|
end
|
@@ -63,8 +70,8 @@ module RTime
|
|
63
70
|
end
|
64
71
|
|
65
72
|
# Returns a specified percentage of random timestamp in a range
|
66
|
-
def timestamps
|
67
|
-
all_timestamps = _timestamps_in_range
|
73
|
+
def timestamps date_range, coverage, options = { night_only: false }
|
74
|
+
all_timestamps = _timestamps_in_range date_range, options
|
68
75
|
selection_count =
|
69
76
|
_selections_for_coverage all_timestamps.count, coverage
|
70
77
|
all_timestamps.sample(selection_count).sort
|
data/lib/rtime/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rtime
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tahmid Shakil
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-06-
|
11
|
+
date: 2017-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -104,6 +104,7 @@ extra_rdoc_files: []
|
|
104
104
|
files:
|
105
105
|
- ".codeclimate.yml"
|
106
106
|
- ".gitignore"
|
107
|
+
- ".reek"
|
107
108
|
- ".rubocop.yml"
|
108
109
|
- ".travis.yml"
|
109
110
|
- Gemfile
|