[330] | 1 | require File.dirname(__FILE__) + '/../../../../../spec_helper'
|
---|
| 2 | include OpenEHR::RM::Common::Generic
|
---|
| 3 | include OpenEHR::RM::Support::Identification
|
---|
| 4 | include OpenEHR::RM::DataTypes::Quantity::DateTime
|
---|
| 5 |
|
---|
| 6 | describe RevisionHistory do
|
---|
| 7 | before(:each) do
|
---|
| 8 | version_id = stub(ObjectVersionID, :value => 'ABCD::EFGH::1')
|
---|
| 9 | committed_time = stub(DvDateTime, :value => '2009-11-02T22:19:34')
|
---|
| 10 | audit = stub(AuditDetails, :time_committed => committed_time)
|
---|
| 11 | audits = stub(Array, :first => audit)
|
---|
| 12 | last_item = stub(RevisionHistoryItem, :version_id => version_id,
|
---|
| 13 | :audits => audits)
|
---|
| 14 | items = stub(Array, :size => 128, :empty? => false, :last => last_item)
|
---|
| 15 | @revision_history = RevisionHistory.new(:items => items)
|
---|
| 16 | end
|
---|
| 17 |
|
---|
| 18 | it 'should be an instance of RevisionHistory' do
|
---|
| 19 | @revision_history.should be_an_instance_of RevisionHistory
|
---|
| 20 | end
|
---|
| 21 |
|
---|
| 22 | it 'items size should return size 128' do
|
---|
| 23 | @revision_history.items.size.should be_equal 128
|
---|
| 24 | end
|
---|
| 25 |
|
---|
| 26 | it 'should return the most recent version string' do
|
---|
| 27 | @revision_history.most_recent_version.should == 'ABCD::EFGH::1'
|
---|
| 28 | end
|
---|
| 29 |
|
---|
| 30 | it 'should return the most recent commited version time string' do
|
---|
| 31 | @revision_history.most_recent_version_time_committed == '2009-11-02T22:19:34'
|
---|
| 32 | end
|
---|
[334] | 33 |
|
---|
| 34 | it 'should raise ArgumentError when item is nil' do
|
---|
| 35 | lambda {
|
---|
| 36 | @revision_history.items = nil
|
---|
| 37 | }.should raise_error ArgumentError
|
---|
| 38 | end
|
---|
| 39 |
|
---|
| 40 | it 'should raise ArgumentError when item is empty' do
|
---|
| 41 | lambda {
|
---|
| 42 | @revision_history.items = Array.new
|
---|
| 43 | }.should raise_error ArgumentError
|
---|
| 44 | end
|
---|
[330] | 45 | end
|
---|