From f356520259cff7006465aa09ad050b1cd591d496 Mon Sep 17 00:00:00 2001 From: erick Date: Tue, 27 Oct 2009 21:20:18 +0000 Subject: first complete version of tutorialADT with tests, ready for review --- (limited to 'tests') diff --git a/tests/tutorialtests.py b/tests/tutorialtests.py index ca70e11..3be3415 100644 --- a/tests/tutorialtests.py +++ b/tests/tutorialtests.py @@ -210,14 +210,10 @@ class TutorialTest(unittest.TestCase): assert set(self.tutorial.get_state_dict().keys()) == set([Tutorial._INIT,Tutorial._END]) assert len(self.tutorial.get_action_dict()) == 0 assert len(self.tutorial.get_transition_dict()) == 1 - assert self.tutorial.get_previous_states_dict(Tutorial._INIT).keys() == None + assert self.tutorial.get_previous_states_dict(Tutorial._INIT) == {} assert self.tutorial.get_following_states_dict(Tutorial._INIT).keys() == [Tutorial._END] assert self.tutorial.get_previous_states_dict(Tutorial._END).keys() == [Tutorial._INIT] - assert self.tutorial.get_following_states_dict(Tutorial._END).keys() == None - - def test_initialize_tutorial_from_existing_dictionary(self): - # TODO: to be implemented - assert False + assert self.tutorial.get_following_states_dict(Tutorial._END) == {} #### State def test_add_default_state(self): @@ -237,11 +233,11 @@ class TutorialTest(unittest.TestCase): assert len(self.tutorial.get_transition_dict()) == 1 def test_add_state_with_transition(self): - state_name = self.tutorial.add_state(transition_list=[("event1",Tutorial._END]) + state_name = self.tutorial.add_state(transition_list=[("event1",Tutorial._END)]) assert state_name assert len(self.tutorial.get_state_dict()) == 3 assert set(self.tutorial.get_state_dict().keys()) == set([Tutorial._INIT,Tutorial._END, state_name]) - assert len(self.tutorial.get_action_dict()) == 1 + assert len(self.tutorial.get_action_dict()) == 0 assert len(self.tutorial.get_transition_dict()) == 2 def test_add_generate_unique_state_names(self): @@ -257,25 +253,25 @@ class TutorialTest(unittest.TestCase): assert set(self.tutorial.get_state_dict().keys()) == set([Tutorial._INIT,Tutorial._END]) assert len(self.tutorial.get_action_dict()) == 0 assert len(self.tutorial.get_transition_dict()) == 1 - assert self.tutorial.get_previous_states_dict(Tutorial._INIT).keys() == None + assert self.tutorial.get_previous_states_dict(Tutorial._INIT) == {} assert self.tutorial.get_following_states_dict(Tutorial._INIT).keys() == [Tutorial._END] assert self.tutorial.get_previous_states_dict(Tutorial._END).keys() == [Tutorial._INIT] - assert self.tutorial.get_following_states_dict(Tutorial._END).keys() == None + assert self.tutorial.get_following_states_dict(Tutorial._END) == {} def test_delete_linked_state(self): state_name1 = self.tutorial.add_state() self.tutorial.update_transition(Tutorial._INITIAL_TRANSITION_NAME, \ (Tutorial._AUTOMATIC_TRANSITION_EVENT, state_name1)) - transition_name1 = self.tutorial.add_transition(("event1", Tutorial._END)) + transition_name1 = self.tutorial.add_transition(state_name1,("event1", Tutorial._END)) self.tutorial.delete_state(state_name1) assert len(self.tutorial.get_state_dict()) == 2 assert set(self.tutorial.get_state_dict().keys()) == set([Tutorial._INIT,Tutorial._END]) assert len(self.tutorial.get_action_dict()) == 0 assert len(self.tutorial.get_transition_dict()) == 1 - assert self.tutorial.get_previous_states_dict(Tutorial._INIT).keys() == None + assert self.tutorial.get_previous_states_dict(Tutorial._INIT) == {} assert self.tutorial.get_following_states_dict(Tutorial._INIT).keys() == [Tutorial._END] assert self.tutorial.get_previous_states_dict(Tutorial._END).keys() == [Tutorial._INIT] - assert self.tutorial.get_following_states_dict(Tutorial._END).keys() == None + assert self.tutorial.get_following_states_dict(Tutorial._END) == {} #### Action def test_add_dummy_action(self): @@ -288,73 +284,61 @@ class TutorialTest(unittest.TestCase): def test_add_generate_unique_action_names(self): state_name = self.tutorial.add_state() - action_name1 = self.state.add_action(state_name,"action1") - action_name2 = self.state.add_action(state_name,"action2") + action_name1 = self.tutorial.add_action(state_name,"action1") + action_name2 = self.tutorial.add_action(state_name,"action2") assert action_name1 and action_name2 assert action_name1 != action_name2 def test_update_dummy_action(self): - action_name = self.state.add_action("action1") - self.state.update_action(action_name, "action2") - assert len(self.state.get_action_dict()) == 1 - assert self.state.get_action_dict().has_key(action_name) - assert self.state.get_action_dict()[action_name] == "action2" + state_name = self.tutorial.add_state() + action_name = self.tutorial.add_action(state_name,"action1") + self.tutorial.update_action(action_name, "action2") + assert len(self.tutorial.get_action_dict()) == 1 + assert self.tutorial.get_action_dict().has_key(action_name) + assert self.tutorial.get_action_dict()[action_name] == "action2" def test_delete_dummy_action(self): - action_name = self.state.add_action("action1") - assert len(self.state.get_action_dict()) == 1 - assert self.state.get_action_dict().has_key(action_name) - assert self.state.get_action_dict()[action_name] == "action1" - - self.state.delete_action(action_name) - assert len(self.state.get_action_dict()) == 0 - - def test_delete_all_dummy_actions(self): - action_name = self.state.add_action("action1") - assert len(self.state.get_action_dict()) == 1 - assert self.state.get_action_dict().has_key(action_name) - assert self.state.get_action_dict()[action_name] == "action1" + state_name = self.tutorial.add_state() + action_name = self.tutorial.add_action(state_name,"action1") + assert len(self.tutorial.get_action_dict()) == 1 + assert self.tutorial.get_action_dict().has_key(action_name) + assert self.tutorial.get_action_dict()[action_name] == "action1" - self.state.delete_actions() - assert len(self.state.get_action_dict()) == 0 + self.tutorial.delete_action(action_name) + assert len(self.tutorial.get_action_dict()) == 0 #### Transition def test_add_dummy_transition(self): - transition_name = self.state.add_transition("transition1") - assert len(self.state.get_transition_dict()) == 1 - assert self.state.get_transition_dict().has_key(transition_name) - assert self.state.get_transition_dict()[transition_name] == "transition1" + state_name = self.tutorial.add_state() + transition_name = self.tutorial.add_transition(state_name,"transition1") + assert len(self.tutorial.get_transition_dict()) == 2 + assert self.tutorial.get_transition_dict().has_key(transition_name) + assert self.tutorial.get_transition_dict()[transition_name] == "transition1" def test_add_generate_unique_transition_names(self): - transition_name1 = self.state.add_transition("transition1") - transition_name2 = self.state.add_transition("transition2") + state_name = self.tutorial.add_state() + transition_name1 = self.tutorial.add_transition(state_name,"transition1") + transition_name2 = self.tutorial.add_transition(state_name,"transition2") + assert transition_name1 and transition_name2 assert transition_name1 != transition_name2 def test_update_dummy_transition(self): - transition_name = self.state.add_transition("transition1") - self.state.update_transition(transition_name, "transition2") - assert len(self.state.get_transition_dict()) == 1 - assert self.state.get_transition_dict().has_key(transition_name) - assert self.state.get_transition_dict()[transition_name] == "transition2" + state_name = self.tutorial.add_state() + transition_name = self.tutorial.add_transition(state_name,"transition1") + self.tutorial.update_transition(transition_name, "transition2") + assert len(self.tutorial.get_transition_dict()) == 2 + assert self.tutorial.get_transition_dict().has_key(transition_name) + assert self.tutorial.get_transition_dict()[transition_name] == "transition2" def test_delete_dummy_transition(self): - transition_name = self.state.add_transition("transition1") - assert len(self.state.get_transition_dict()) == 1 - assert self.state.get_transition_dict().has_key(transition_name) - assert self.state.get_transition_dict()[transition_name] == "transition1" - - self.state.delete_transition(transition_name) - assert len(self.state.get_transition_dict()) == 0 - - def test_delete_all_dummy_transitions(self): - transition_name = self.state.add_transition("transition1") - assert len(self.state.get_transition_dict()) == 1 - assert self.state.get_transition_dict().has_key(transition_name) - assert self.state.get_transition_dict()[transition_name] == "transition1" - - self.state.delete_transitions() - assert len(self.state.get_transition_dict()) == 0 + state_name = self.tutorial.add_state() + transition_name = self.tutorial.add_transition(state_name,"transition1") + assert len(self.tutorial.get_transition_dict()) == 2 + assert self.tutorial.get_transition_dict().has_key(transition_name) + assert self.tutorial.get_transition_dict()[transition_name] == "transition1" + self.tutorial.delete_transition(transition_name) + assert len(self.tutorial.get_transition_dict()) == 1 ######################### Limit cases ################################### @@ -368,17 +352,14 @@ class TutorialTest(unittest.TestCase): ######################### Error cases ################################### #### Tutorial - def test_initialize_tutorial_from_wrong_dictionary(self): - # TODO: to be implemented - assert False - + #### State #### Action def test_update_unknown_action(self): name_error = None try: - self.state.update_action("unknown_name", "action") + self.tutorial.update_action("unknown_name", "action") except NameError, e: name_error = e @@ -388,7 +369,7 @@ class TutorialTest(unittest.TestCase): def test_delete_unknown_action(self): name_error = None try: - self.state.delete_action("unknown_name") + self.tutorial.delete_action("unknown_name") except NameError, e: name_error = e @@ -396,10 +377,10 @@ class TutorialTest(unittest.TestCase): #### Transition def test_add_existing_transition(self): - self.state.add_transition("transition") + self.tutorial.add_transition(Tutorial._INIT,("event","transition")) transition_exists_error = None try: - self.state.add_transition("transition") + self.tutorial.add_transition(Tutorial._INIT,("event","transition")) except TransitionAlreadyExists, e: transition_exists_error = e -- cgit v0.9.1