aemo 0.1.41 → 0.1.42

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/aemo/nem12.rb +10 -5
  3. data/lib/aemo/version.rb +1 -1
  4. metadata +5 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 119c2b42b2afe3058b3601efb0afa0fad4324490
4
- data.tar.gz: fbe58c540e711ac4b2e4d72f600974fb75c330a3
3
+ metadata.gz: 1bfb05a015a896492b4189fe74eba44bffd7de6c
4
+ data.tar.gz: f40e7e6b3f8208dd8626aa4eb2d528a3ca9924ae
5
5
  SHA512:
6
- metadata.gz: 2937b2efc24957e9db6fa8eea55e3f06dc851923a557bec9fae3e357211382ce0fd5306897a38cea3d016cf079446a478f1318acd3b32b98f7cede303d730cd8
7
- data.tar.gz: d19a35efd609e07aec6e2c310ec670b79747d3a072000b7184a3ffa03f68723aa10f3ec37c2066a5ffbfebe163092be0bbb1be6eb5704b71149f51a63cce8803
6
+ metadata.gz: 05cc47530528e759f77651407239550d45fa5cb36f24063a323750deb65cf3e9b084298867e6f5163bc470b1c273ba8b7f998aac35b164ae8a3d2d8290333c6d
7
+ data.tar.gz: f61f7405327ee846ea8a0b4806cb9e131e96b9b5ad8a889312999e36cdc0aea4c4857e249fa54839a00b33301158b510a0b3242c352936386fc0b2699334efb5
@@ -270,7 +270,6 @@ module AEMO
270
270
  @interval_data = []
271
271
  @interval_events = []
272
272
 
273
- attr_accessor :nmi, :file_contents
274
273
  attr_reader :data_details, :interval_data, :interval_events
275
274
  attr_accessor :file_contents, :header, :nmi_data_details, :nmi
276
275
 
@@ -280,7 +279,7 @@ module AEMO
280
279
  @data_details = []
281
280
  @interval_data = []
282
281
  @interval_events = []
283
- options.keys.each do |key|
282
+ options.each_key do |key|
284
283
  send 'key=', options[key]
285
284
  end
286
285
  end
@@ -321,18 +320,24 @@ module AEMO
321
320
 
322
321
  raise ArgumentError, 'RecordIndicator is not 200' if csv[0] != '200'
323
322
  raise ArgumentError, 'NMI is not valid' unless AEMO::NMI.valid_nmi?(csv[1])
324
- raise ArgumentError, 'NMIConfiguration is not valid' if csv[2].match(/.{1,240}/).nil?
323
+ if csv[2].nil? || csv[2].match(/.{1,240}/).nil?
324
+ raise ArgumentError, 'NMIConfiguration is not valid'
325
+ end
325
326
  if !csv[3].nil? && csv[3].match(/.{1,10}/).nil?
326
327
  raise ArgumentError, 'RegisterID is not valid'
327
328
  end
328
- raise ArgumentError, 'NMISuffix is not valid' if csv[4].match(/[A-HJ-NP-Z][1-9A-HJ-NP-Z]/).nil?
329
+ if csv[4].nil? || csv[4].match(/[A-HJ-NP-Z][1-9A-HJ-NP-Z]/).nil?
330
+ raise ArgumentError, 'NMISuffix is not valid'
331
+ end
329
332
  if !csv[5].nil? && !csv[5].empty? && !csv[5].match(/^\s*$/)
330
333
  raise ArgumentError, 'MDMDataStreamIdentifier is not valid' if csv[5].match(/[A-Z0-9]{2}/).nil?
331
334
  end
332
335
  if !csv[6].nil? && !csv[6].empty? && !csv[6].match(/^\s*$/)
333
336
  raise ArgumentError, 'MeterSerialNumber is not valid' if csv[6].match(/[A-Z0-9]{2}/).nil?
334
337
  end
335
- raise ArgumentError, 'UOM is not valid' if csv[7].upcase.match(/[A-Z0-9]{2}/).nil?
338
+ if csv[7].nil? || csv[7].upcase.match(/[A-Z0-9]{2}/).nil?
339
+ raise ArgumentError, 'UOM is not valid'
340
+ end
336
341
  raise ArgumentError, 'UOM is not valid' unless UOM.keys.map(&:upcase).include?(csv[7].upcase)
337
342
  raise ArgumentError, 'IntervalLength is not valid' unless %w[1 5 10 15 30].include?(csv[8])
338
343
  # raise ArgumentError, 'NextScheduledReadDate is not valid' if csv[9].match(/\d{8}/).nil? || csv[9] != Time.parse('#{csv[9]}').strftime('%Y%m%d')
@@ -24,7 +24,7 @@
24
24
  # @author Joel Courtney <euphemize@gmail.com>
25
25
  module AEMO
26
26
  # aemo version
27
- VERSION = '0.1.41'.freeze
27
+ VERSION = '0.1.42'
28
28
 
29
29
  # aemo version split amongst different revisions
30
30
  MAJOR_VERSION, MINOR_VERSION, REVISION = VERSION.split('.').map(&:to_i)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aemo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.41
4
+ version: 0.1.42
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Courtney
@@ -16,22 +16,16 @@ dependencies:
16
16
  name: json
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - "~>"
20
- - !ruby/object:Gem::Version
21
- version: '1.7'
22
19
  - - ">="
23
20
  - !ruby/object:Gem::Version
24
- version: 1.7.7
21
+ version: 1.7.5
25
22
  type: :runtime
26
23
  prerelease: false
27
24
  version_requirements: !ruby/object:Gem::Requirement
28
25
  requirements:
29
- - - "~>"
30
- - !ruby/object:Gem::Version
31
- version: '1.7'
32
26
  - - ">="
33
27
  - !ruby/object:Gem::Version
34
- version: 1.7.7
28
+ version: 1.7.5
35
29
  - !ruby/object:Gem::Dependency
36
30
  name: nokogiri
37
31
  requirement: !ruby/object:Gem::Requirement
@@ -101,7 +95,7 @@ dependencies:
101
95
  version: 4.2.6
102
96
  - - "<"
103
97
  - !ruby/object:Gem::Version
104
- version: '5.1'
98
+ version: '5.2'
105
99
  type: :runtime
106
100
  prerelease: false
107
101
  version_requirements: !ruby/object:Gem::Requirement
@@ -111,7 +105,7 @@ dependencies:
111
105
  version: 4.2.6
112
106
  - - "<"
113
107
  - !ruby/object:Gem::Version
114
- version: '5.1'
108
+ version: '5.2'
115
109
  - !ruby/object:Gem::Dependency
116
110
  name: awesome_print
117
111
  requirement: !ruby/object:Gem::Requirement