Sha256: 5a4a59f71e5f4d3074c8a54b19dc5469767f48741b941d936dcabd428f179d17

Contents?: true

Size: 1.02 KB

Versions: 4

Compression:

Stored size: 1.02 KB

Contents

require 'spec_helper'

require 'mspire/cv/param'
require 'cv/param'

describe Mspire::CV::Param do
  describe 'object creation from class methods' do

    it '::new allows full description' do
      param1 = Mspire::CV::Param.new('MS', 'MS:1000052', 'suspension')
      param1.value.should be_nil
      # just nonsense: 32 ng suspensions
      param2 = Mspire::CV::Param.new('MS', 'MS:1000052', 'suspension', 32, ::CV::Param.new('UO', 'UO:0000024', 'nanogram'))
      param2.cv_ref.should == 'MS'
      param2.value.should == 32
      param2.unit.accession.should == 'UO:0000024'
    end

    it '::[] requires shortcut accession strings' do
      param1 = Mspire::CV::Param['MS:1000052']
      param1.cv_ref.should == 'MS'
      param1.value.should be_nil

      # just nonsense: 32 ng suspensions
      param2 = Mspire::CV::Param['MS:1000052', 32, 'UO:0000024']
      param2.cv_ref.should == 'MS'
      param2.name.should == 'suspension'
      param2.value.should == 32
      param2.unit.accession.should == 'UO:0000024'
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mspire-0.7.5 spec/mspire/cv/param_spec.rb
mspire-0.7.4 spec/mspire/cv/param_spec.rb
mspire-0.7.3 spec/mspire/cv/param_spec.rb
mspire-0.7.2 spec/mspire/cv/param_spec.rb