Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar/tutorius/tests/coretests.py
diff options
context:
space:
mode:
authorVincent Vinet <vince.vinet@gmail.com>2009-03-31 16:59:10 (GMT)
committer Vincent Vinet <vince.vinet@gmail.com>2009-04-02 15:13:50 (GMT)
commit1bc406d0fb8704a7a71dcdf52f54dc6f5b4e5921 (patch)
treed1f8ed17da95b38eb0a3eaae58a210a519b363c3 /src/sugar/tutorius/tests/coretests.py
parent7f030fd302c0be7ca7dc38863e1d9250df00ca31 (diff)
Ajout de tests
Diffstat (limited to 'src/sugar/tutorius/tests/coretests.py')
-rw-r--r--src/sugar/tutorius/tests/coretests.py65
1 files changed, 8 insertions, 57 deletions
diff --git a/src/sugar/tutorius/tests/coretests.py b/src/sugar/tutorius/tests/coretests.py
index ec730f2..f9125ce 100644
--- a/src/sugar/tutorius/tests/coretests.py
+++ b/src/sugar/tutorius/tests/coretests.py
@@ -18,18 +18,24 @@
Core Tests
This module contains all the tests that pertain to the usage of the Tutorius
-Core. This means that the Event Filters, the Finite State Machine and all the
+Core. This means that the the Finite State Machine, States and all the
related elements and interfaces are tested here.
+Usage of actions and event filters is tested, but not the concrete actions
+and event filters. Those are in their separate test module
+
"""
import unittest
import logging
-from sugar.tutorius.actions import Action, OnceWrapper
+from sugar.tutorius.actions import Action
from sugar.tutorius.core import *
from sugar.tutorius.filters import *
+
+from actiontests import CountAction
+
# Helper classes to help testing
class SimpleTutorial(Tutorial):
"""
@@ -60,19 +66,6 @@ class TrueWhileActiveAction(Action):
self.active = False
-class CountAction(Action):
- """
- This action counts how many times it's do and undo methods get called
- """
- def __init__(self):
- self.do_count = 0
- self.undo_count = 0
-
- def do(self):
- self.do_count += 1
-
- def undo(self):
- self.undo_count += 1
class TriggerEventFilter(EventFilter):
"""
@@ -110,48 +103,6 @@ class FakeEventFilter(TriggerEventFilter):
self.tutorial.set_state(event_filter.get_next_state())
-class BaseActionTests(unittest.TestCase):
- def test_do_unimplemented(self):
- act = Action()
- try:
- act.do()
- assert False, "do() should trigger a NotImplemented"
- except NotImplementedError:
- assert True, "do() should trigger a NotImplemented"
-
- def test_undo(self):
- act = Action()
- act.undo()
- assert True, "undo() should never fail on the base action"
-
-
-class OnceWrapperTests(unittest.TestCase):
- def test_onceaction_toggle(self):
- """
- Validate that the OnceWrapper wrapper works properly using the
- CountAction
- """
- act = CountAction()
- wrap = OnceWrapper(act)
-
- assert act.do_count == 0, "do() should not have been called in __init__()"
- assert act.undo_count == 0, "undo() should not have been called in __init__()"
-
- wrap.undo()
-
- assert act.undo_count == 0, "undo() should not be called if do() has not been called"
-
- wrap.do()
- assert act.do_count == 1, "do() should have been called once"
-
- wrap.do()
- assert act.do_count == 1, "do() should have been called only once"
-
- wrap.undo()
- assert act.undo_count == 1, "undo() should have been called once"
-
- wrap.undo()
- assert act.undo_count == 1, "undo() should have been called only once"
# State testing class