cocina-models 0.78.0 → 0.79.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '09a3e28b24593aeb0e75c0318067e72fc8e10bb98e189d00b3f166357b198cab'
4
- data.tar.gz: 688dbfe3ef449fe8caccd5c3518a6cd059cff2920ad9af3d9fb11553516b520e
3
+ metadata.gz: 193f5886756d2fd6432e90ab5323f6ed5a11c699cb97f49d61394bc5fafd5f53
4
+ data.tar.gz: ecb1493a56b7b20f9733084c8a9a115e3a3c6639a8072bc371f53a51d69d0a2c
5
5
  SHA512:
6
- metadata.gz: 3bc1bce3e8624fa829ce0f41b69362d723e77549d102d561b41245c462c178cbcac5733fcd0816fd7750fa7bf736611e46de503e1e6b93dfce009ae6bd33eea4
7
- data.tar.gz: 5cb526603a08485e0c04abccfa962b92b890fbf9d966d5dc00cb5ddd9aec64b24ebb4aa555397d769d5814edb914960d7d83a1b7f5c23be6752252f34b64a033
6
+ metadata.gz: 8cc210b897872f3b90fd59e12f381f049b1389b0cf3d798a0375eea57282cf456c6591a8d474c5c612253123bca01ed9a9b931129c89153b8a8dae3ad713254b
7
+ data.tar.gz: f1a23590223b7760780e3b547b053355a1ba600fdc468ce563aef20a4c38cd3571345bde621f3f9f23248d27c29f0f3b5a829dd0c7d5c08d95d27efec472453d
@@ -391,6 +391,8 @@ identifier:
391
391
  - value: record id
392
392
  - value: Senate Number
393
393
  - value: Series
394
+ - value: SICI
395
+ code: sici
394
396
  - value: SIRSI
395
397
  - value: Source ID
396
398
  - value: sourceID
@@ -199,8 +199,6 @@ module Cocina
199
199
  xml.affiliation note.value
200
200
  when 'description'
201
201
  xml.description note.value
202
- when 'citation status'
203
- xml.description UNCITED_DESCRIPTION if note.value == 'false'
204
202
  end
205
203
  end
206
204
  end
@@ -11,7 +11,7 @@ module Cocina
11
11
 
12
12
  def initialize(clazz, attributes)
13
13
  @clazz = clazz
14
- @attributes = attributes.deep_symbolize_keys
14
+ @attributes = attributes
15
15
  @error_paths = []
16
16
  end
17
17
 
@@ -29,9 +29,7 @@ module Cocina
29
29
  attr_reader :clazz, :attributes, :error_paths
30
30
 
31
31
  def meets_preconditions?
32
- resources.any? do |resource|
33
- titles_with_associated_name_note_for(resource).present?
34
- end
32
+ [Cocina::Models::Description, Cocina::Models::RequestDescription].include?(clazz)
35
33
  end
36
34
 
37
35
  def valid?(resource)
@@ -11,7 +11,7 @@ module Cocina
11
11
 
12
12
  def initialize(clazz, attributes)
13
13
  @clazz = clazz
14
- @attributes = attributes.deep_symbolize_keys
14
+ @attributes = attributes
15
15
  @error_paths = []
16
16
  end
17
17
 
@@ -30,8 +30,7 @@ module Cocina
30
30
  attr_reader :clazz, :attributes, :error_paths
31
31
 
32
32
  def meets_preconditions?
33
- attributes.key?(:description) || [Cocina::Models::Description,
34
- Cocina::Models::RequestDescription].include?(clazz)
33
+ [Cocina::Models::Description, Cocina::Models::RequestDescription].include?(clazz)
35
34
  end
36
35
 
37
36
  def validate_hash(hash, path)
@@ -11,7 +11,7 @@ module Cocina
11
11
 
12
12
  def initialize(clazz, attributes)
13
13
  @clazz = clazz
14
- @attributes = attributes.deep_symbolize_keys
14
+ @attributes = attributes
15
15
  @error_paths = []
16
16
  end
17
17
 
@@ -30,8 +30,7 @@ module Cocina
30
30
  attr_reader :clazz, :attributes, :error_paths
31
31
 
32
32
  def meets_preconditions?
33
- attributes.key?(:description) || [Cocina::Models::Description,
34
- Cocina::Models::RequestDescription].include?(clazz)
33
+ [Cocina::Models::Description, Cocina::Models::RequestDescription].include?(clazz)
35
34
  end
36
35
 
37
36
  def validate_hash(hash, path)
@@ -26,8 +26,7 @@ module Cocina
26
26
  # In the meantime, copying code.
27
27
  attributes_hash = deep_transform_values(attributes.to_h) do |value|
28
28
  value.class.name.starts_with?('Cocina::Models') ? value.to_h : value
29
- end.with_indifferent_access
30
-
29
+ end.deep_symbolize_keys.with_indifferent_access
31
30
  VALIDATORS.each { |validator| validator.validate(clazz, attributes_hash) }
32
31
  end
33
32
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Cocina
4
4
  module Models
5
- VERSION = '0.78.0'
5
+ VERSION = '0.79.0'
6
6
  end
7
7
  end
data/lib/cocina/models.rb CHANGED
@@ -119,7 +119,7 @@ module Cocina
119
119
  # @param [DROWithMetadata,CollectionWithMetadata,AdminPolicyWithMetadata] cocina_object
120
120
  # @return [DRO,Collection,AdminPolicy]
121
121
  def self.without_metadata(cocina_object)
122
- build(cocina_object.to_h.except(:created, :modified, :lock))
122
+ build(cocina_object.to_h.except(:created, :modified, :lock), validate: false)
123
123
  end
124
124
 
125
125
  # Adds metadata to a DRO, Collection, AdminPolicy
@@ -144,7 +144,7 @@ module Cocina
144
144
  else
145
145
  AdminPolicyWithMetadata
146
146
  end
147
- clazz.new(props)
147
+ clazz.new(props, false, false)
148
148
  end
149
149
 
150
150
  def self.type_for(dyn)
@@ -45,24 +45,31 @@ module Cocina
45
45
  type: Cocina::Models::ObjectType.object,
46
46
  id: 'druid:bc234fg5678',
47
47
  version: 1,
48
- label: 'test object',
49
- title: 'test object',
48
+ label: 'factory DRO label',
49
+ title: 'factory DRO title',
50
50
  source_id: 'sul:1234',
51
51
  admin_policy_id: 'druid:hv992ry2431'
52
52
  }.freeze
53
53
 
54
54
  REQUEST_DRO_DEFAULTS = DRO_DEFAULTS.except(:id)
55
55
 
56
- COLLECTION_DEFAULTS = DRO_DEFAULTS.except(:source_id).merge(type: Cocina::Models::ObjectType.collection)
56
+ COLLECTION_DEFAULTS = {
57
+ type: Cocina::Models::ObjectType.collection,
58
+ id: 'druid:bb222ff5555',
59
+ version: 1,
60
+ label: 'factory collection label',
61
+ title: 'factory collection title',
62
+ admin_policy_id: 'druid:hv992ry2431'
63
+ }.freeze
57
64
 
58
65
  REQUEST_COLLECTION_DEFAULTS = COLLECTION_DEFAULTS.except(:id)
59
66
 
60
67
  ADMIN_POLICY_DEFAULTS = {
61
68
  type: Cocina::Models::ObjectType.admin_policy,
62
- id: 'druid:bc234fg5678',
69
+ id: 'druid:cb432gf8765',
63
70
  version: 1,
64
- label: 'test admin policy',
65
- title: 'test admin policy',
71
+ label: 'factory APO label',
72
+ title: 'factory APO title',
66
73
  admin_policy_id: 'druid:hv992ry2431',
67
74
  agreement_id: 'druid:hp308wm0436'
68
75
  }.freeze
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocina-models
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.78.0
4
+ version: 0.79.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-05-04 00:00:00.000000000 Z
11
+ date: 2022-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport