Sha256: 850832a382d5fa05c914de5c6fbefd0ffa38698cec9d8fa715a3c42f0cd27149

Contents?: true

Size: 1.15 KB

Versions: 3

Compression:

Stored size: 1.15 KB

Contents

# ticket 195
require File.dirname(__FILE__) + '/../../../../../../spec_helper'
require 'open_ehr/am/openehr_profile/data_types/basic'
include ::OpenEHR::AM::OpenEHRProfile::DataTypes::Basic
require 'set'

describe NonTerminalState do
  before(:each) do
    proposed_state = State.new(:name => 'PROPOSED')
    complete_state = TerminalState.new(:name => 'COMPLETED')
    finish = Transition.new(:event => 'finish', :next_state => complete_state)
    transitions = Set[finish]
    @non_terminal_state = NonTerminalState.new(:name => 'IN_EXECUTION',
                                               :transitions => transitions)
  end

  it 'is an instance of NonTerminalState' do
    @non_terminal_state.should be_an_instance_of NonTerminalState
  end

  it 'name is IN_EXECUTION' do
    @non_terminal_state.name.should == 'IN_EXECUTION'
  end

  it 'size of transitions is 2' do
    @non_terminal_state.transitions.size.should == 1
  end

  it 'raise error if traisitions is empty' do
    expect {@non_terminal_state.transitions = Set.new}.to raise_error
  end

  it 'raise error if transitions is nil' do
    expect {@non_terminal_state.transitions = nil}.to raise_error
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
open_ehr-1.0.2 spec/lib/open_ehr/am/openehr_profile/data_types/basic/non_terminal_state_spec.rb
open_ehr-1.0.1 spec/lib/open_ehr/am/openehr_profile/data_types/basic/non_terminal_state_spec.rb
open_ehr-1.0.0 spec/lib/open_ehr/am/openehr_profile/data_types/basic/non_terminal_state_spec.rb