ce-bucketize 0.1.1 → 0.1.2

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: b2974902dc4e47c6ba875478e0b929cc67dbd9e0
4
- data.tar.gz: 7670b035a8907c647291c5f22a1ec24146001c25
3
+ metadata.gz: badfc713d027be682e490aa0508bbce6947d58d5
4
+ data.tar.gz: 8f7b6f00806a3b43347caf8190edd25963b2c2ac
5
5
  SHA512:
6
- metadata.gz: 3edfad7f5786dac77155e1adce06e37604d8f491f7c27a037055fe69e79807e6d55f97805355bcaf25c350c4435af3003471a8a1f6563fa4274f226a5448dbf8
7
- data.tar.gz: 60efeb0e33992ed40e58c1b82d1fb3b35934d56cdae2a79452e6db643edf04e4486b46e5ff74a32128243a6719cecb1908c3e6e299a1522fd659f6a1fa0b84f9
6
+ metadata.gz: a50d52f8d9a43b540d7a2a30ad1e97e1114f17a6d57524259b1700f454e48bf1133af5c92b255c0e0325011cb116a9f0a85fbaab3c7cd6c494011e445fc2bd77
7
+ data.tar.gz: 2f8a08643d25f36f2957f23dd8c7bf2dbda51a5c71cacf22b1cb2942491de5131b2fa3864c1a01598e1dd9432c84252873f946e04a8d015f5f4a9f77d9bda5a1
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
7
7
  spec.name = 'ce-bucketize'
8
8
  spec.version = Bucketize::VERSION
9
9
  spec.authors = ['TCSASSEMBLER','brandon.jahner']
10
- spec.email = ['TCSASSEMBLER@topcoder.com','bjahner@clearlyenergy.com']
10
+ spec.email = ['TCSASSEMBLER@topcoder.com','bjahner@gmail.com']
11
11
 
12
12
  spec.summary = %q{Aggregates consumption data and calculates costs based on predefined tariffs.}
13
13
 
@@ -16,6 +16,9 @@ module Bucketize
16
16
  # hour in seconds
17
17
  HOUR = 3600
18
18
 
19
+ # The maximum integer for the current machine.
20
+ MAX_INT = (2**((0.size * 8) - 1)) - 1
21
+
19
22
  # The length (in seconds) of the maximum allowed gap in input data.
20
23
  attr_accessor :max_gap_length
21
24
 
@@ -40,8 +43,8 @@ module Bucketize
40
43
  end
41
44
 
42
45
  @gb_data_description = gb_data_description
43
- @from = from
44
- @to = to
46
+ @from = from || Time.at(0)
47
+ @to = to || Time.at(MAX_INT)
45
48
  @max_gap_length = 4 * HOUR
46
49
  @readings = prepare_readings
47
50
  end
@@ -62,8 +65,8 @@ module Bucketize
62
65
  d0 = current_reading.time_duration.to_f # duration of the first reading
63
66
  # last reading time.
64
67
  tn = @readings.last.time_start + @readings.last.time_duration - HOUR
65
- hour_start = @from || t0 # will point to the current hour start
66
- last_hour_start = ((@to - HOUR) unless @to.nil?) || tn # the last hour_start
68
+ hour_start = [@from, t0].max # will point to the current hour start
69
+ last_hour_start = [@to - HOUR, tn].min # the last hour_start
67
70
  d = (t0 + d0 - hour_start).to_f # remaining seconds from the current reading.
68
71
  rem = (d/d0) * current_reading.value # remaining value from the current reading.
69
72
  hf = 1.to_f # remaining fraction of hour for the current hour value
@@ -191,7 +194,7 @@ module Bucketize
191
194
  return i
192
195
  end
193
196
  end
194
- raise ArgumentError, "#{time} is out of range"
197
+ nil
195
198
  end
196
199
 
197
200
  # Internal: interpolates the given gaps in the readings.
@@ -1,5 +1,5 @@
1
1
  # Copyright (C) 2015 TopCoder Inc., All Rights Reserved.
2
2
 
3
3
  module Bucketize
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.2"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ce-bucketize
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - TCSASSEMBLER
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2015-05-04 00:00:00.000000000 Z
12
+ date: 2015-05-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -116,7 +116,7 @@ description: |-
116
116
  subject to data completeness checks and multiply them with a single tariff number.
117
117
  email:
118
118
  - TCSASSEMBLER@topcoder.com
119
- - bjahner@clearlyenergy.com
119
+ - bjahner@gmail.com
120
120
  executables: []
121
121
  extensions: []
122
122
  extra_rdoc_files: []