1 | require File.dirname(__FILE__) + '/../../../../../../spec_helper'
|
---|
2 | include OpenEHR::AM::Archetype::ConstraintModel::Primitive
|
---|
3 | include OpenEHR::AssumedLibraryTypes
|
---|
4 |
|
---|
5 | describe CInteger do
|
---|
6 | before(:each) do
|
---|
7 | @c_integer = CInteger.new(:default_value => 3,
|
---|
8 | :assumed_value => 2,
|
---|
9 | :list => [1,2])
|
---|
10 | end
|
---|
11 |
|
---|
12 | it 'should be an instance of CInteger' do
|
---|
13 | @c_integer.should be_an_instance_of CInteger
|
---|
14 | end
|
---|
15 |
|
---|
16 | it 'should raise ArgumentError if both range and list are nil' do
|
---|
17 | lambda {
|
---|
18 | @c_integer.list = nil
|
---|
19 | }.should raise_error ArgumentError
|
---|
20 | end
|
---|
21 |
|
---|
22 | describe 'list method' do
|
---|
23 | it 'constructor should assign list properly' do
|
---|
24 | @c_integer.list.should == [1,2]
|
---|
25 | end
|
---|
26 |
|
---|
27 | it 'list method should re-assign properly' do
|
---|
28 | @c_integer.list = [2,3]
|
---|
29 | @c_integer.list.should == [2,3]
|
---|
30 | end
|
---|
31 |
|
---|
32 | it 'should be raise ArgumentError if both list and range are not nil' do
|
---|
33 | lambda {
|
---|
34 | @c_integer.range = Interval.new(:lower => 1,:upper =>3)
|
---|
35 | }.should raise_error ArgumentError
|
---|
36 | end
|
---|
37 | end
|
---|
38 |
|
---|
39 | describe 'range mathod' do
|
---|
40 | before(:each) do
|
---|
41 | @c_integer =
|
---|
42 | CInteger.new(:default_value => 2,
|
---|
43 | :assumed_value => 3,
|
---|
44 | :range => Interval.new(:lower => 0, :upper => 5))
|
---|
45 | end
|
---|
46 |
|
---|
47 | it 'constructor should assign range properly' do
|
---|
48 | @c_integer.range.lower.should be_equal 0
|
---|
49 | end
|
---|
50 |
|
---|
51 | it 'range method should re-assigne properly' do
|
---|
52 | @c_integer.range = Interval.new(:lower => 20)
|
---|
53 | @c_integer.range.lower.should be_equal 20
|
---|
54 | end
|
---|
55 |
|
---|
56 | it 'should raise ArgumentError if bhot range and list are not nil' do
|
---|
57 | lambda {
|
---|
58 | @c_integer.list = [10,100]
|
---|
59 | }.should raise_error ArgumentError
|
---|
60 | end
|
---|
61 | end
|
---|
62 | end
|
---|