1 | require File.dirname(__FILE__) + '/../../../spec_helper'
|
---|
2 | include OpenEHR::AssumedLibraryTypes
|
---|
3 |
|
---|
4 | describe Interval do
|
---|
5 | before(:each) do
|
---|
6 | @interval = Interval.new(:upper => 10,
|
---|
7 | :lower => 1)
|
---|
8 | end
|
---|
9 |
|
---|
10 | it 'should be an instance of Interval' do
|
---|
11 | @interval.should be_an_instance_of Interval
|
---|
12 | end
|
---|
13 |
|
---|
14 | it 's upper should be greater than lower' do
|
---|
15 | @interval.upper.should be > @interval.lower
|
---|
16 | end
|
---|
17 |
|
---|
18 | it 's upper should be equal 10' do
|
---|
19 | @interval.upper.should == 10
|
---|
20 | end
|
---|
21 |
|
---|
22 | it 's lower should be equal 1' do
|
---|
23 | @interval.lower.should == 1
|
---|
24 | end
|
---|
25 |
|
---|
26 | it 'should raise ArgumentError with smaller upper' do
|
---|
27 | lambda {@interval.upper = -1}.should raise_error ArgumentError
|
---|
28 | end
|
---|
29 |
|
---|
30 | it 'should raise ArgumentError with greater lower' do
|
---|
31 | lambda {@interval.lower = 11}.should raise_error ArgumentError
|
---|
32 | end
|
---|
33 |
|
---|
34 | it 'should have 5' do
|
---|
35 | @interval.has?(5).should be_true
|
---|
36 | end
|
---|
37 |
|
---|
38 | it 'should not have 11' do
|
---|
39 | @interval.has?(11).should_not be_true
|
---|
40 | end
|
---|
41 |
|
---|
42 | it 'should not have -1' do
|
---|
43 | @interval.has?(-1).should_not be_true
|
---|
44 | end
|
---|
45 |
|
---|
46 | it 'should not have 10' do
|
---|
47 | @interval.has?(10).should_not be_true
|
---|
48 | end
|
---|
49 |
|
---|
50 | it 'should not have 1' do
|
---|
51 | @interval.has?(1).should_not be_true
|
---|
52 | end
|
---|
53 |
|
---|
54 | describe Interval, 'when lower included' do
|
---|
55 | before do
|
---|
56 | @interval.lower_included = true
|
---|
57 | end
|
---|
58 |
|
---|
59 | it 'should be lower_included' do
|
---|
60 | @interval.should be_lower_included
|
---|
61 | end
|
---|
62 |
|
---|
63 | it 'should have 1 when lower included' do
|
---|
64 | @interval.has?(1).should be_true
|
---|
65 | end
|
---|
66 |
|
---|
67 | after do
|
---|
68 | @interval.lower_included = false
|
---|
69 | end
|
---|
70 | end
|
---|
71 |
|
---|
72 | describe Interval, 'when upper included' do
|
---|
73 | before do
|
---|
74 | @interval.upper_included = true
|
---|
75 | end
|
---|
76 |
|
---|
77 | it 'should be upper uncluded' do
|
---|
78 | @interval.should be_upper_included
|
---|
79 | end
|
---|
80 |
|
---|
81 | it 'should have 10 when upper included' do
|
---|
82 | @interval.has?(10).should be_true
|
---|
83 | end
|
---|
84 |
|
---|
85 | after do
|
---|
86 | @interval.upper_included = false
|
---|
87 | end
|
---|
88 | end
|
---|
89 |
|
---|
90 | describe Interval, 'when upper unbounded' do
|
---|
91 | before do
|
---|
92 | @interval.upper = nil
|
---|
93 | end
|
---|
94 |
|
---|
95 | it 'should be upper unbounded' do
|
---|
96 | @interval.should be_upper_unbounded
|
---|
97 | end
|
---|
98 |
|
---|
99 | it 'should have 11' do
|
---|
100 | @interval.has?(11).should be_true
|
---|
101 | end
|
---|
102 |
|
---|
103 | it 'should raise ArgumentError, when upper_included is assigned' do
|
---|
104 | lambda{
|
---|
105 | @interval.upper_included = true
|
---|
106 | }.should raise_error ArgumentError
|
---|
107 | end
|
---|
108 |
|
---|
109 | after do
|
---|
110 | @interval.upper = 10
|
---|
111 | end
|
---|
112 | end
|
---|
113 |
|
---|
114 | describe Interval, 'when lower unbounded' do
|
---|
115 | before do
|
---|
116 | @interval.lower = nil
|
---|
117 | end
|
---|
118 |
|
---|
119 | it 'should be lower unbounded' do
|
---|
120 | @interval.should be_lower_unbounded
|
---|
121 | end
|
---|
122 |
|
---|
123 | it 'should have -10' do
|
---|
124 | @interval.has?(-10).should be_true
|
---|
125 | end
|
---|
126 |
|
---|
127 | it 'should raise ArgumentError, when lower_included is assigned' do
|
---|
128 | lambda{
|
---|
129 | @interval.lower_included = true
|
---|
130 | }.should raise_error ArgumentError
|
---|
131 | end
|
---|
132 | end
|
---|
133 |
|
---|
134 | it 'should raise ArgumentError both upper and lower is nil' do
|
---|
135 | lambda {
|
---|
136 | Interval.new
|
---|
137 | }.should raise_error ArgumentError
|
---|
138 | end
|
---|
139 | end
|
---|
140 |
|
---|