Dicom_UID 0.0.9 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dicom_uid.rb +12 -5
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: adc24bf89d5304fe5b569c6265b828b2942eaa8e60c5d5e1a560ff58534828c9
4
- data.tar.gz: 640b2f0d0f42a2f4a4419790c609c640dafc6e40cab158686ed3fe944ee3eaae
3
+ metadata.gz: 7bb0f9e5e27cedeefe6733c4d7d60aa663d0f1541b9fedacd52df47d860be73c
4
+ data.tar.gz: dfb290aa3fc165b704f7990d685501400a382419ca5906b09e3eb1afb812495d
5
5
  SHA512:
6
- metadata.gz: c010e4bcea0c9d193732fccbe3770605f72aa34611bd0b5586ffc5cc2b846b6c8998853d67bcece7e8ac1f0e9c693d0ca94a7fa3f0109e93c39f03e212be1b56
7
- data.tar.gz: fce7c3a9ffc3d6dd3d525307f6466eae2ae3c07ac50b6137fb966060ecca2613a26a8ccc9cd0a70eeafdfc08265d8df3c970eee446679dca388fc1227c4214f0
6
+ metadata.gz: 56931092fb2635777a0239f0689a9bf292a90c9f760300d40c06c2806519a32b03edffd4f19594b4cfcbcd2bfdfbd0c0272d9a0dde5305c6ba1dbc932a4a178d
7
+ data.tar.gz: 4c981202e999df919cd407f21c955b6babb49b142b7120139f8fd9ce2e210f1aaf5466af2c5dd1db1b3f98ca2645aff132cfcd4f796e883ffbf36489c421ea68
data/lib/dicom_uid.rb CHANGED
@@ -57,7 +57,7 @@ module DicomUID#:nodoc:
57
57
 
58
58
  # building the org root
59
59
  org_root = self.random_component(62, odd_byte_boundary) if org_root.empty?# UID needs at least an org root
60
- raise LeadingZeroError if org_root[0] == '0' and org_root.length != 1
60
+ raise LeadingZeroError if leading_zero? org_root
61
61
  raise OddByteError if !odd_byte_rule(org_root) and odd_byte_boundary
62
62
 
63
63
  # if the fixed size doesn't exist, a random one is created, but
@@ -66,7 +66,8 @@ module DicomUID#:nodoc:
66
66
  fixed_size -= 1 if add_missing_dot org_root
67
67
 
68
68
  raise OversizedUIDError if fixed_size > 64
69
- raise RangeError("Size of UID can't be negative") if fixed_size < 0
69
+ raise RangeError, 'Size of Org root larger than size provided' if fixed_size < org_root.length
70
+ raise RangeError, "Size of UID can't be negative" if fixed_size < 0
70
71
 
71
72
  # building the suffix
72
73
  self.rand_duid org_root, (fixed_size - org_root.length), odd_byte_boundary
@@ -74,11 +75,12 @@ module DicomUID#:nodoc:
74
75
 
75
76
 
76
77
 
78
+ # Return an array of UIDs, from a common org root
77
79
  def self.random_uids org_root, fixed_size, array_size, odd_byte_boundary = true
78
- uids = Array.new
80
+ uids = Array.new array_size
79
81
 
80
- array_size.times do
81
- uids << (self.random_dicom_uid org_root, fixed_size, odd_byte_boundary)
82
+ array_size.times do |i|
83
+ uids[i] = (self.random_dicom_uid org_root.dup, fixed_size, odd_byte_boundary)
82
84
  end
83
85
 
84
86
  uids
@@ -129,6 +131,11 @@ def odd_byte_rule comp
129
131
  end
130
132
 
131
133
 
134
+ def leading_zero? org_root
135
+ org_root[0] == '0' and org_root.length != 1
136
+ end
137
+
138
+
132
139
 
133
140
  # EXCEPTIONS
134
141
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Dicom_UID
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Repain Paul