ptr = new HiddenMarkovModel(); START_SECTION((Size getNumberOfStates() const)) TEST_EQUAL(ptr->getNumberOfStates(), 0) END_SECTION START_SECTION((void addNewState(HMMState* state))) ptr->addNewState(state_ptr); TEST_EQUAL(ptr->getNumberOfStates(), 1) ptr->addNewState(state_ptr2); ptr->addNewState(state_ptr3); TEST_EQUAL(ptr->getNumberOfStates(), 3) END_SECTION START_SECTION((HMMState* getState(const String& name))) TEST_EQUAL(ptr->getState("state_name_hidden"), state_ptr) END_SECTION START_SECTION((const HMMState* getState(const String& name) const)) TEST_EQUAL(ptr->getState("state_name_hidden"), state_ptr) END_SECTION START_SECTION((double getTransitionProbability(const String& s1, const String& s2) const)) TEST_REAL_SIMILAR(ptr->getTransitionProbability("state_name_hidden", "state_name_emitting"), 0.0) END_SECTION START_SECTION((void setTransitionProbability(const String& s1, const String& s2, double prob))) ptr->setTransitionProbability("state_name_hidden", "state_name_emitting", 0.3); TEST_REAL_SIMILAR(ptr->getTransitionProbability("state_name_hidden", "state_name_emitting"), 0.3) the_hmm.setTransitionProbability("A", "A_2", 0.5);