stanford-mods 3.3.4 → 3.3.6
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 +4 -4
 - data/lib/stanford-mods/imprint.rb +6 -4
 - data/lib/stanford-mods/version.rb +1 -1
 - data/lib/stanford-mods.rb +1 -0
 - data/spec/imprint_spec.rb +3 -0
 - data/spec/origin_info_spec.rb +16 -0
 - metadata +3 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 7028a87a57f12536c2d9aad2271ce920e738a11edd16fe1403d9958476a8c5e3
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: f4f6bcd19a21be08ac71f5bf09dc703957deea569f9479b1df5564540c97aad9
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 15e15c55737607e91482c2898bed91e41e659a6c809c5652183be561dd5ea0a2de576538a793be156d8eae4458c82b4950b1eaf64ed4c7b5fe61d721df3a5f1a
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 22e36b2e62be2db59fbe576c7177b7460ed021656b17769f7175bf847b405763ee8e7c3f603d3c6f818a0c37d6c7cc05cf876f0138acecb36bf5c4f296afecf2
         
     | 
| 
         @@ -142,9 +142,9 @@ module Stanford 
     | 
|
| 
       142 
142 
     | 
    
         
             
                      @value = value
         
     | 
| 
       143 
143 
     | 
    
         
             
                    end
         
     | 
| 
       144 
144 
     | 
    
         | 
| 
       145 
     | 
    
         
            -
                    # True if the element text isn't blank or  
     | 
| 
       146 
     | 
    
         
            -
                    def  
     | 
| 
       147 
     | 
    
         
            -
                      text.present? && !['9999', '0000-00-00', 'uuuu'].include?(text.strip)
         
     | 
| 
      
 145 
     | 
    
         
            +
                    # True if the element text isn't blank or one of a set of unparseable values.
         
     | 
| 
      
 146 
     | 
    
         
            +
                    def parseable?
         
     | 
| 
      
 147 
     | 
    
         
            +
                      text.present? && !['9999', '0000-00-00', 'uuuu', '[uuuu]'].include?(text.strip)
         
     | 
| 
       148 
148 
     | 
    
         
             
                    end
         
     | 
| 
       149 
149 
     | 
    
         | 
| 
       150 
150 
     | 
    
         
             
                    def key_date?
         
     | 
| 
         @@ -160,6 +160,8 @@ module Stanford 
     | 
|
| 
       160 
160 
     | 
    
         
             
                    end
         
     | 
| 
       161 
161 
     | 
    
         | 
| 
       162 
162 
     | 
    
         
             
                    def sort_key
         
     | 
| 
      
 163 
     | 
    
         
            +
                      return unless date
         
     | 
| 
      
 164 
     | 
    
         
            +
             
     | 
| 
       163 
165 
     | 
    
         
             
                      year = if date.is_a?(EDTF::Interval)
         
     | 
| 
       164 
166 
     | 
    
         
             
                        date.from.year
         
     | 
| 
       165 
167 
     | 
    
         
             
                      else
         
     | 
| 
         @@ -339,7 +341,7 @@ module Stanford 
     | 
|
| 
       339 
341 
     | 
    
         | 
| 
       340 
342 
     | 
    
         
             
                  def parse_dates(elements)
         
     | 
| 
       341 
343 
     | 
    
         
             
                    # convert to DateValue objects and keep only valid ones
         
     | 
| 
       342 
     | 
    
         
            -
                    dates = elements.map(&:as_object).flatten.map { |element| DateValue.new(element) }.select(&: 
     | 
| 
      
 344 
     | 
    
         
            +
                    dates = elements.map(&:as_object).flatten.map { |element| DateValue.new(element) }.select(&:parseable?)
         
     | 
| 
       343 
345 
     | 
    
         | 
| 
       344 
346 
     | 
    
         
             
                    # join any date ranges into DateRange objects
         
     | 
| 
       345 
347 
     | 
    
         
             
                    point_dates, dates = dates.partition(&:point)
         
     | 
    
        data/lib/stanford-mods.rb
    CHANGED
    
    
    
        data/spec/imprint_spec.rb
    CHANGED
    
    
    
        data/spec/origin_info_spec.rb
    CHANGED
    
    | 
         @@ -442,6 +442,22 @@ describe "computations from /originInfo field" do 
     | 
|
| 
       442 
442 
     | 
    
         
             
                  end
         
     | 
| 
       443 
443 
     | 
    
         
             
                end
         
     | 
| 
       444 
444 
     | 
    
         | 
| 
      
 445 
     | 
    
         
            +
                context 'with a date not handled by EDTF' do
         
     | 
| 
      
 446 
     | 
    
         
            +
                  let(:modsxml) do
         
     | 
| 
      
 447 
     | 
    
         
            +
                    <<-EOF
         
     | 
| 
      
 448 
     | 
    
         
            +
                      <mods xmlns="http://www.loc.gov/mods/v3">
         
     | 
| 
      
 449 
     | 
    
         
            +
                        <originInfo>
         
     | 
| 
      
 450 
     | 
    
         
            +
                          <dateIssued encoding="marc">1uuu</dateIssued>
         
     | 
| 
      
 451 
     | 
    
         
            +
                        </originInfo>
         
     | 
| 
      
 452 
     | 
    
         
            +
                      </mods>
         
     | 
| 
      
 453 
     | 
    
         
            +
                    EOF
         
     | 
| 
      
 454 
     | 
    
         
            +
                  end
         
     | 
| 
      
 455 
     | 
    
         
            +
             
     | 
| 
      
 456 
     | 
    
         
            +
                  it 'ignores the date' do
         
     | 
| 
      
 457 
     | 
    
         
            +
                    expect(record.pub_year_sort_str).to eq nil
         
     | 
| 
      
 458 
     | 
    
         
            +
                  end
         
     | 
| 
      
 459 
     | 
    
         
            +
                end
         
     | 
| 
      
 460 
     | 
    
         
            +
             
     | 
| 
       445 
461 
     | 
    
         
             
                context 'when it has an open-ended date range' do
         
     | 
| 
       446 
462 
     | 
    
         
             
                  let(:modsxml) do
         
     | 
| 
       447 
463 
     | 
    
         
             
                    <<-EOF
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: stanford-mods
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 3.3. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 3.3.6
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Naomi Dushay
         
     | 
| 
         @@ -9,7 +9,7 @@ authors: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            autorequire:
         
     | 
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
            date: 2023-09 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2023-10-09 00:00:00.000000000 Z
         
     | 
| 
       13 
13 
     | 
    
         
             
            dependencies:
         
     | 
| 
       14 
14 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       15 
15 
     | 
    
         
             
              name: mods
         
     | 
| 
         @@ -214,7 +214,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       214 
214 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       215 
215 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       216 
216 
     | 
    
         
             
            requirements: []
         
     | 
| 
       217 
     | 
    
         
            -
            rubygems_version: 3. 
     | 
| 
      
 217 
     | 
    
         
            +
            rubygems_version: 3.4.14
         
     | 
| 
       218 
218 
     | 
    
         
             
            signing_key:
         
     | 
| 
       219 
219 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       220 
220 
     | 
    
         
             
            summary: Stanford specific wrangling of MODS metadata
         
     |