adiwg-mdtranslator 1.4.0.beta8 → 1.4.0.beta9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (24) hide show
  1. checksums.yaml +4 -4
  2. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +2 -1
  3. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_contacts.rb +8 -0
  4. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_responsibleParty.rb +16 -15
  5. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_citation.rb +1 -1
  6. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_contacts.rb +2 -3
  7. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_dateTime.rb +1 -1
  8. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_distributionInfo.rb +1 -1
  9. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_metadata.rb +6 -1
  10. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_metadataInfo.rb +3 -3
  11. data/lib/adiwg/mdtranslator/readers/sbJson/modules_v0/module_resourceInfo.rb +6 -6
  12. data/lib/adiwg/mdtranslator/version.rb +1 -1
  13. data/lib/adiwg/mdtranslator/writers/mdJson/mdJson_writer.rb +41 -31
  14. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_citation.rb +1 -1
  15. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_resourceInfo.rb +2 -2
  16. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_responsibleParty.rb +1 -1
  17. data/lib/adiwg/mdtranslator/writers/sbJson/sections/sbJson_contact.rb +1 -0
  18. data/test/readers/mdJson/v1/tc_reader_mdjson_translation.rb +2 -0
  19. data/test/readers/mdJson/v1/tc_translation_19110.rb +1 -0
  20. data/test/readers/sbJson/v0/tc_reader_sbjson_translation.rb +2 -0
  21. data/test/readers/sbJson/v0/test.json +2 -2
  22. data/test/writers/mdJson/v1/tc_writer_mdJson.rb +2 -0
  23. data/test/writers/sbJson/v0/tc_writer_sbJson.rb +2 -0
  24. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0a561a8015225d2849aa09e5ce21000346a493e0
4
- data.tar.gz: 4499efd48369282b94137ad265509fec57658158
3
+ metadata.gz: 2f912542c0adac2bbf714499e51a64e7818941b2
4
+ data.tar.gz: 0ccf2affad60913562a3fe1f9b6335ae353812fb
5
5
  SHA512:
6
- metadata.gz: 03b73ea497272fae1f77f36a27f289ffcbae7ce27d55abda0165d0804ea3b6f5a2e7f40155d5f58eac4a7cd0afa3c213eeca16ff074441cf5981e183f064343b
7
- data.tar.gz: 40960e4a899fc09f009429a2dfda69fe3b70f74f75ab4383256b3b0cd72fec00ad99e9aa8a5afa4f97fa6a4bf72558cc6af2510155d58bdd520465a2fa6e4a93
6
+ metadata.gz: 07e290749a1ffe4d755d8d9e41e3e9de56699d7036296e0eb96d01427a6f93bdf63d80f86e903ba64a57bb6c45e82a1ac6f6be64afc93b0b522fc26b85149189
7
+ data.tar.gz: 7d9de3d3e2ecd01ec58ae6724f23d9be655b925bdf93315444a63a77e21192a86bdcb66479ac216f5575c22f44f3ad6bc57d2ef26ca16cb9f69f4902d668f0a1
@@ -93,7 +93,8 @@ class InternalMetadata
93
93
  address: {},
94
94
  onlineRes: [],
95
95
  contactInstructions: nil,
96
- internal: false
96
+ internal: false,
97
+ primaryRole: nil
97
98
  }
98
99
  end
99
100
 
@@ -81,6 +81,14 @@ module ADIWG
81
81
  end
82
82
  end
83
83
 
84
+ # primary role
85
+ if hContact.has_key?('primaryRole')
86
+ s = hContact['primaryRole']
87
+ if s != ''
88
+ intCont[:primaryRole] = s
89
+ end
90
+ end
91
+
84
92
  # online resources
85
93
  if hContact.has_key?('onlineResource')
86
94
  aOlRes = hContact['onlineResource']
@@ -32,27 +32,28 @@ module ADIWG
32
32
  # responsible party - contact
33
33
  if hRParty.has_key?('contactId')
34
34
  s = hRParty['contactId']
35
- if s != ''
36
- intResById[:contactId] = s
37
- if (!ADIWG::Mdtranslator::Readers::MdJson.findContact(s))
38
- responseObj[:readerExecutionPass] = false
39
- responseObj[:readerExecutionMessages] << "Responsible Party contact ID #{s} does not match with any contact provided\n"
40
- end
41
- else
35
+ end
36
+ if s && s != ''
37
+ intResById[:contactId] = s
38
+ contact = ADIWG::Mdtranslator::Readers::MdJson.findContact(s)
39
+ if (!contact)
42
40
  responseObj[:readerExecutionPass] = false
43
- responseObj[:readerExecutionMessages] << 'Responsible Party is missing the contact ID\n'
41
+ responseObj[:readerExecutionMessages] << "Responsible Party contact ID #{s} does not match with any contact provided\n"
44
42
  end
43
+ else
44
+ responseObj[:readerExecutionPass] = false
45
+ responseObj[:readerExecutionMessages] << 'Responsible Party is missing the contact ID\n'
45
46
  end
46
47
 
47
48
  # responsible party - role - required
48
49
  if hRParty.has_key?('role')
49
- s = hRParty['role']
50
- if s != ''
51
- intResById[:roleName] = s
52
- else
53
- responseObj[:readerExecutionPass] = false
54
- responseObj[:readerExecutionMessages] << 'Responsible Party is missing the contact role\n'
55
- end
50
+ rl = hRParty['role'] || contact[:primaryRole]
51
+ end
52
+ if rl && rl != ''
53
+ intResById[:roleName] = rl
54
+ else
55
+ responseObj[:readerExecutionPass] = false
56
+ responseObj[:readerExecutionMessages] << 'Responsible Party is missing the contact role\n'
56
57
  end
57
58
 
58
59
  return intResById
@@ -52,7 +52,7 @@ module ADIWG
52
52
  if hCitDate.has_key?('date')
53
53
  s = hCitDate['date']
54
54
  if s != ''
55
- intDateTime = DateTime.unpack(s, responseObj)
55
+ intDateTime = SbDateTime.unpack(s, responseObj)
56
56
  if hCitDate.has_key?('dateType')
57
57
  s = hCitDate['dateType']
58
58
  if s != ''
@@ -36,11 +36,10 @@ module ADIWG
36
36
  intCont[:position] = s if s != ''
37
37
  end
38
38
 
39
- # SB Role, store the role for later lookup, not used
40
- # internally
39
+ # SB Role
41
40
  if hContact.key?('type')
42
41
  s = hContact['type']
43
- intCont[:sbType] = s if s != ''
42
+ intCont[:primaryRole] = s if s != ''
44
43
  end
45
44
 
46
45
  # contact instructions
@@ -5,7 +5,7 @@ module ADIWG
5
5
  module Readers
6
6
  module SbJson
7
7
 
8
- module DateTime
8
+ module SbDateTime
9
9
 
10
10
  def self.unpack(sDateTime, responseObj)
11
11
 
@@ -16,7 +16,7 @@ module ADIWG
16
16
  # with a a role of "distributor", if none just use
17
17
  # the default SB contact
18
18
  aCust = {}
19
- dist = intObj[:contacts].find { |c| c[:sbType] == 'Distributor' }
19
+ dist = intObj[:contacts].find { |c| c[:primaryRole] == 'Distributor' }
20
20
 
21
21
  unless dist.nil?
22
22
  aCust['contactId'] = dist[:contactId]
@@ -1,4 +1,5 @@
1
1
  require 'uri'
2
+ require 'date'
2
3
  require ADIWG::Mdtranslator::Readers::SbJson.readerModule('module_metadataInfo')
3
4
  require ADIWG::Mdtranslator::Readers::SbJson.readerModule('module_resourceInfo')
4
5
  require ADIWG::Mdtranslator::Readers::SbJson.readerModule('module_distributionInfo')
@@ -23,7 +24,7 @@ module ADIWG
23
24
  intMetadata[:resourceInfo] = ResourceInfo.unpack(hMetadata, responseObj, intObj)
24
25
 
25
26
  # metadata - distribution info
26
- if hMetadata.key?('webLinks')
27
+ if hMetadata.key?('distributionLinks')
27
28
  intMetadata[:distributorInfo] << DistributionInfo.unpack(hMetadata, responseObj, intObj)
28
29
  end
29
30
 
@@ -46,6 +47,10 @@ module ADIWG
46
47
  'resourceType' => hAddDoc['type'],
47
48
  'citation' => {
48
49
  'title' => hAddDoc['title'] || hAddDoc['typeLabel'],
50
+ 'date' => [{
51
+ 'date' => DateTime.now.iso8601,
52
+ 'dateType' => 'distribution'
53
+ }],
49
54
  'onlineResource' => [
50
55
  {
51
56
  'uri' => hAddDoc['uri'],
@@ -58,14 +58,14 @@ module ADIWG
58
58
  firstCont = intObj[:contacts][0]
59
59
  aCust = {}
60
60
  aCust['contactId'] = firstCont[:contactId]
61
- aCust['role'] = firstCont[:sbType]
61
+ aCust['role'] = firstCont[:primaryRole]
62
62
  intMetadataInfo[:metadataCustodians] << ResponsibleParty.unpack(aCust, responseObj)
63
63
 
64
64
  # metadata - creation date
65
65
  if hMetadataInfo.key?('provenance')
66
66
  s = hMetadataInfo['provenance']['dateCreated']
67
67
  if s != ''
68
- hDateTime = DateTime.unpack(s, responseObj)
68
+ hDateTime = SbDateTime.unpack(s, responseObj)
69
69
  hDateTime[:dateType] = 'creation'
70
70
  intMetadataInfo[:metadataCreateDate] = hDateTime
71
71
  end
@@ -75,7 +75,7 @@ module ADIWG
75
75
  if hMetadataInfo.key?('provenance')
76
76
  s = hMetadataInfo['provenance']['lastUpdated']
77
77
  if s != ''
78
- hDateTime = DateTime.unpack(s, responseObj)
78
+ hDateTime = SbDateTime.unpack(s, responseObj)
79
79
  hDateTime[:dateType] = 'lastUpdate'
80
80
  intMetadataInfo[:metadataUpdateDate] = hDateTime
81
81
  end
@@ -84,7 +84,7 @@ module ADIWG
84
84
  hResourceInfo['dates'].each do |date|
85
85
  s = date['dateString']
86
86
  next unless s != ''
87
- hDateTime = DateTime.unpack(s, responseObj)
87
+ hDateTime = SbDateTime.unpack(s, responseObj)
88
88
  hDateTime[:dateType] = date['type']
89
89
  hCitation[:citDate] << hDateTime
90
90
  end
@@ -119,7 +119,7 @@ module ADIWG
119
119
  firstCont = intObj[:contacts][0]
120
120
  aCust = {}
121
121
  aCust['contactId'] = firstCont[:contactId]
122
- aCust['role'] = firstCont[:sbType]
122
+ aCust['role'] = firstCont[:primaryRole]
123
123
  intResInfo[:pointsOfContact] << ResponsibleParty.unpack(aCust, responseObj)
124
124
 
125
125
  # resource information - abstract
@@ -137,13 +137,13 @@ module ADIWG
137
137
  # resource information - status
138
138
  # project status is sometimes available
139
139
  # otherwise just defaults to "published"
140
- if projectFacet.nil?
140
+ if not projectFacet.nil?
141
141
 
142
- if hResourceInfo.key?('status')
143
- s = hResourceInfo['status']
142
+ if projectFacet.key?('projectStatus')
143
+ status = projectFacet['projectStatus']
144
144
  end
145
- intResInfo[:status] = s.nil? ? 'published' : s
146
145
  end
146
+ intResInfo[:status] = status.nil? ? 'published' : status
147
147
 
148
148
  # resource information - has mappable location
149
149
  intResInfo[:hasMapLocation?] = hResourceInfo.key?('spatial')
@@ -61,6 +61,6 @@
61
61
  module ADIWG
62
62
  module Mdtranslator
63
63
  # current mdtranslator version
64
- VERSION = "1.4.0.beta8"
64
+ VERSION = "1.4.0.beta9"
65
65
  end
66
66
  end
@@ -5,38 +5,48 @@ require_relative 'sections/mdJson_metadata'
5
5
  require_relative 'sections/mdJson_dictionary'
6
6
 
7
7
  module ADIWG
8
- module Mdtranslator
9
- module Writers
10
- module MdJson
11
- def self.startWriter(_intObj, responseObj, _paramsObj)
12
- #set output flag for null properties
13
- Jbuilder::ignore_nil(!responseObj[:writerShowTags])
14
- # set the format of the output file based on the writer specified
15
- responseObj[:writerFormat] = 'json'
16
- responseObj[:writerVersion] = ADIWG::Mdtranslator::Writers::MdJson::VERSION
17
-
18
- # version
19
- metadata = Jbuilder.new do |json|
20
- json.version do
21
- json.name 'mdJson'
22
- json.version responseObj[:writerVersion]
23
- end
24
-
25
- json.contact _intObj[:contacts].map { |obj| Contact.build(obj).attributes!}
26
- json.metadata Metadata.build(_intObj[:metadata])
27
- json.dataDictionary _intObj[:dataDictionary].map { |obj| Dictionary.build(obj).attributes!}
28
- end
29
-
30
- # set writer pass to true if no messages
31
- # false or warning will be set by code that places the message
32
- responseObj[:writerPass] = true if responseObj[:writerMessages].empty?
33
-
34
- # j = JSON.parse(metadata.target!)
35
- # puts JSON.pretty_generate(j)
36
-
37
- metadata.target!
38
- end
8
+ module Mdtranslator
9
+ module Writers
10
+ module MdJson
11
+ def self.startWriter(_intObj, responseObj, _paramsObj)
12
+ @intObj = _intObj
13
+
14
+ # set output flag for null properties
15
+ Jbuilder.ignore_nil(!responseObj[:writerShowTags])
16
+ # set the format of the output file based on the writer specified
17
+ responseObj[:writerFormat] = 'json'
18
+ responseObj[:writerVersion] = ADIWG::Mdtranslator::Writers::MdJson::VERSION
19
+
20
+ # version
21
+ metadata = Jbuilder.new do |json|
22
+ json.version do
23
+ json.name 'mdJson'
24
+ json.version responseObj[:writerVersion]
39
25
  end
26
+
27
+ json.contact _intObj[:contacts].map { |obj| Contact.build(obj).attributes! }
28
+ json.metadata Metadata.build(_intObj[:metadata])
29
+ json.dataDictionary _intObj[:dataDictionary].map { |obj| Dictionary.build(obj).attributes! }
30
+ end
31
+
32
+ # set writer pass to true if no messages
33
+ # false or warning will be set by code that places the message
34
+ responseObj[:writerPass] = true if responseObj[:writerMessages].empty?
35
+
36
+ # j = JSON.parse(metadata.target!)
37
+ # puts JSON.pretty_generate(j)
38
+
39
+ metadata.target!
40
+ end
41
+
42
+ # find contact in contact array and return the contact hash
43
+ def self.getContact(contactID)
44
+ @intObj[:contacts].each do |hContact|
45
+ return hContact if hContact[:contactId] == contactID
46
+ end
47
+ {}
40
48
  end
49
+ end
41
50
  end
51
+ end
42
52
  end
@@ -17,7 +17,7 @@ module ADIWG
17
17
  Jbuilder.new do |json|
18
18
  json.title cite[:citTitle]
19
19
  json.alternateTitle cite[:citAltTitle]
20
- json.date json_map(cite[:citDate], DateTime)
20
+ json.date json_map(cite[:citDate], DateTime) unless cite[:citDate].empty?
21
21
  json.edition cite[:citEdition]
22
22
  json.identifier json_map(cite[:citResourceIds], ResourceIdentifier)
23
23
  json.responsibleParty json_map(cite[:citResponsibleParty], ResponsibleParty)
@@ -28,7 +28,7 @@ module ADIWG
28
28
  Jbuilder.new do |json|
29
29
  json.resourceType _info[:resourceType]
30
30
  json.citation Citation.build(_info[:citation])
31
- json.resourceTimePeriod TimePeriod.build(_info[:timePeriod]) # unless _info[:timePeriod].empty?
31
+ json.resourceTimePeriod TimePeriod.build(_info[:timePeriod]) unless _info[:timePeriod].empty?
32
32
  json.pointOfContact json_map(_info[:pointsOfContact], ResponsibleParty)
33
33
  json.abstract _info[:abstract]
34
34
  json.shortAbstract _info[:shortAbstract]
@@ -48,7 +48,7 @@ module ADIWG
48
48
  json.resourceSpecificUsage json_map(_info[:resourceUses], Usage)
49
49
  json.graphicOverview json_map(_info[:graphicOverview], GraphicOverview)
50
50
  json.constraint Constraint.build(_info[:useConstraints], _info[:legalConstraints], _info[:securityConstraints])
51
- json.taxonomy Taxonomy.build(_info[:taxonomy])
51
+ json.taxonomy Taxonomy.build(_info[:taxonomy]) unless _info[:taxonomy].empty?
52
52
  json.spatialReferenceSystem SpatialReference.build(_info[:spatialReferenceSystem])
53
53
  json.spatialResolution (_info[:spatialResolutions]) do |sr|
54
54
  json.equivalentScale sr[:equivalentScale]
@@ -8,7 +8,7 @@ module ADIWG
8
8
  def self.build(intObj)
9
9
  Jbuilder.new do |json|
10
10
  json.contactId intObj[:contactId]
11
- json.role intObj[:roleName]
11
+ json.role intObj[:roleName] || MdJson.getContact(intObj[:contactId])[:primaryRole]
12
12
  end
13
13
  end
14
14
  end
@@ -13,6 +13,7 @@ module ADIWG
13
13
  type = intObj[:indName].nil? ? 'organization' : 'person'
14
14
  json.name intObj[:indName] || intObj[:orgName]
15
15
  json.contactType type
16
+ json.type intObj[:primaryRole]
16
17
  json.email intObj[:address][:eMailList][0] unless intObj[:address].empty?
17
18
  json.organization type == 'person' ? {:displayText => intObj[:orgName]} : nil
18
19
  json.primaryLocation do
@@ -35,6 +35,7 @@ class TestTranslation_mdJson_v1 < MiniTest::Test
35
35
  assert_equal(version[0], metadata[:readerVersionUsed].split('.')[0])
36
36
 
37
37
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
38
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
38
39
  assert_equal(@@writer, metadata[:writerName])
39
40
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
40
41
  refute_nil metadata[:writerOutput]
@@ -56,6 +57,7 @@ class TestTranslation_mdJson_v1 < MiniTest::Test
56
57
  assert metadata[:readerStructurePass], metadata[:readerStructureMessages].join(',')
57
58
  assert_equal(@@reader, metadata[:readerRequested])
58
59
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
60
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
59
61
  assert_equal(@@writer, metadata[:writerName])
60
62
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
61
63
  refute_nil metadata[:writerOutput]
@@ -49,6 +49,7 @@ class TestTranslation_v1 < MiniTest::Test
49
49
  assert metadata[:readerStructurePass], metadata[:readerStructureMessages].join(',')
50
50
  assert_equal(@@reader, metadata[:readerRequested])
51
51
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
52
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
52
53
  assert_equal('iso19110', metadata[:writerName])
53
54
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
54
55
  refute_nil metadata[:writerOutput]
@@ -31,6 +31,7 @@ class TestTranslation_sbJson_v0 < MiniTest::Test
31
31
  assert_equal(version[0], metadata[:readerVersionUsed].split('.')[0])
32
32
 
33
33
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
34
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
34
35
  assert_equal(@@writer, metadata[:writerName])
35
36
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
36
37
  refute_nil metadata[:writerOutput]
@@ -52,6 +53,7 @@ class TestTranslation_sbJson_v0 < MiniTest::Test
52
53
  assert metadata[:readerStructurePass], metadata[:readerStructureMessages].join(',')
53
54
  assert_equal(@@reader, metadata[:readerRequested])
54
55
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
56
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
55
57
  assert_equal(@@writer, metadata[:writerName])
56
58
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
57
59
  refute_nil metadata[:writerOutput]
@@ -110,8 +110,8 @@
110
110
  "building": "COLUMBIA TECH CENTER",
111
111
  "buildingCode": "WWA",
112
112
  "roomNumber": "asdf",
113
- "officePhone": "asdf",
114
- "faxPhone": "asdfasdf",
113
+ "officePhone": "999-9999",
114
+ "faxPhone": "999-9999",
115
115
  "latitude": 12,
116
116
  "longitude": 12,
117
117
  "streetAddress": {
@@ -32,6 +32,7 @@ class Test_Write_mdJSONv1 < MiniTest::Test
32
32
  assert_equal(version[0], metadata[:readerVersionUsed].split('.')[0])
33
33
 
34
34
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
35
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
35
36
  assert_equal(@@writer, metadata[:writerName])
36
37
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
37
38
  refute_nil metadata[:writerOutput]
@@ -53,6 +54,7 @@ class Test_Write_mdJSONv1 < MiniTest::Test
53
54
  assert metadata[:readerStructurePass], metadata[:readerStructureMessages].join(',')
54
55
  assert_equal(@@reader, metadata[:readerRequested])
55
56
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
57
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
56
58
  assert_equal(@@writer, metadata[:writerName])
57
59
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
58
60
  refute_nil metadata[:writerOutput]
@@ -32,6 +32,7 @@ class Test_Write_sbJSONv0 < MiniTest::Test
32
32
  assert_equal(version[0], metadata[:readerVersionUsed].split('.')[0])
33
33
 
34
34
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
35
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
35
36
  assert_equal(@@writer, metadata[:writerName])
36
37
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
37
38
  refute_nil metadata[:writerOutput]
@@ -53,6 +54,7 @@ class Test_Write_sbJSONv0 < MiniTest::Test
53
54
  assert metadata[:readerStructurePass], metadata[:readerStructureMessages].join(',')
54
55
  assert_equal(@@reader, metadata[:readerRequested])
55
56
  assert metadata[:readerValidationPass], "reader validation failed: \n" + metadata[:readerValidationMessages].join(',')
57
+ assert metadata[:readerExecutionPass], "reader execution failed: \n" + metadata[:readerExecutionMessages].join(',')
56
58
  assert_equal(@@writer, metadata[:writerName])
57
59
  assert metadata[:writerPass], "writer validation failed: \n" + metadata[:writerMessages].join(',')
58
60
  refute_nil metadata[:writerOutput]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adiwg-mdtranslator
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0.beta8
4
+ version: 1.4.0.beta9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stan Smith
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-06-18 00:00:00.000000000 Z
12
+ date: 2016-06-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -563,7 +563,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
563
563
  version: 1.3.1
564
564
  requirements: []
565
565
  rubyforge_project:
566
- rubygems_version: 2.4.5
566
+ rubygems_version: 2.6.4
567
567
  signing_key:
568
568
  specification_version: 4
569
569
  summary: The mdtranslator (metadata translator) is a tool for translating metadata