[393] | 1 | require File.dirname(__FILE__) + '/../../../../../../spec_helper'
|
---|
| 2 | include OpenEHR::AM::Archetype::ConstraintModel::Primitive
|
---|
| 3 | include OpenEHR::RM::DataTypes::Basic
|
---|
| 4 |
|
---|
| 5 | describe CBoolean do
|
---|
| 6 | before(:each) do
|
---|
| 7 | default_value = DvBoolean.new(:value => true)
|
---|
| 8 | @c_boolean = CBoolean.new(:default_value => true,
|
---|
| 9 | :true_valid => true,
|
---|
| 10 | :false_valid => true)
|
---|
| 11 | end
|
---|
| 12 |
|
---|
| 13 | it 'should be_an_instance_of CBoolean' do
|
---|
| 14 | @c_boolean.should be_an_instance_of CBoolean
|
---|
| 15 | end
|
---|
| 16 |
|
---|
| 17 | it 'true_valid should be assigned properly' do
|
---|
| 18 | @c_boolean.should be_true_valid
|
---|
| 19 | end
|
---|
| 20 |
|
---|
| 21 | it 'false_valid should be assigned properly' do
|
---|
| 22 | @c_boolean.should be_false_valid
|
---|
| 23 | end
|
---|
| 24 |
|
---|
| 25 | it 'should raise ArgumentError when both true_valid and false_valid are false' do
|
---|
| 26 | lambda {
|
---|
| 27 | @c_boolean.true_valid = false
|
---|
| 28 | @c_boolean.false_valid = false
|
---|
| 29 | }.should raise_error ArgumentError
|
---|
| 30 | end
|
---|
| 31 |
|
---|
| 32 | it 'should raise ArgumentError if both false_valid and true_valid are false' do
|
---|
| 33 | lambda {
|
---|
| 34 | @c_boolean.false_valid = false
|
---|
| 35 | @c_boolean.true_valid = false
|
---|
| 36 | }.should raise_error ArgumentError
|
---|
| 37 | end
|
---|
| 38 |
|
---|
| 39 | it 'should raise ArgumentError if default_value is false and false_valid is false' do
|
---|
| 40 | lambda {
|
---|
| 41 | @c_boolean.false_valid = false
|
---|
| 42 | @c_boolean.default_value = false
|
---|
| 43 | }.should raise_error ArgumentError
|
---|
| 44 | end
|
---|
| 45 |
|
---|
| 46 | it 'should raise ArgumentError if default_value is true and true_valid is false' do
|
---|
| 47 | lambda {
|
---|
| 48 | @c_boolean.true_valid = false
|
---|
| 49 | @c_boolean.default_value = true
|
---|
| 50 | }.should raise_error ArgumentError
|
---|
| 51 | end
|
---|
| 52 | end
|
---|