Changeset - c7dff65ad06b
[Not reviewed]
0 1 0
Lance Edgar - 8 years ago 2016-08-11 20:21:25
ledgar@sacfoodcoop.com
Fix broken test
1 file changed with 4 insertions and 2 deletions:
0 comments (0 inline, 0 general)
rattail/tests/filemon/test_actions.py
Show inline comments
 
@@ -7,13 +7,13 @@ import time
 
import Queue
 
from unittest import TestCase
 

	
 
from mock import Mock, patch, call
 
from fixture import TempIO
 

	
 
from rattail.config import make_config
 
from rattail.config import make_config, RattailConfig
 
from rattail.filemon import actions
 
from rattail.filemon.config import Profile, ProfileAction
 

	
 

	
 
class TestAction(TestCase):
 

	
 
@@ -98,12 +98,13 @@ class TestPerformActions(TestCase):
 

	
 

	
 
class TestInvokeAction(TestCase):
 

	
 
    def setUp(self):
 
        self.action = ProfileAction()
 
        self.action.config = RattailConfig()
 
        self.action.action = Mock(return_value=None)
 
        self.action.retry_attempts = 6
 
        self.tmp = TempIO()
 
        self.file = self.tmp.putfile(u'file', u'')
 

	
 
    def test_action_which_succeeds_is_only_called_once(self):
 
@@ -127,13 +128,14 @@ class TestInvokeAction(TestCase):
 
        self.assertEqual(self.action.action.call_count, 3)
 
        self.assertTrue(time.time() - start >= 2.0)
 

	
 
    def test_action_which_fails_is_only_attempted_the_specified_number_of_times(self):
 
        self.action.action.side_effect = RuntimeError
 
        # Last attempt will not handle the exception; assert that as well.
 
        self.assertRaises(RuntimeError, actions.invoke_action, self.action, self.file)
 
        with patch('rattail.filemon.actions.send_email') as send_email:
 
            self.assertRaises(RuntimeError, actions.invoke_action, self.action, self.file)
 
        self.assertEqual(self.action.action.call_count, 6)
 

	
 
    def test_action_which_fails_then_succeeds_stops_retrying(self):
 
        # First 2 attempts fail, third succeeds.
 
        self.action.action.side_effect = [RuntimeError, RuntimeError, None]
 
        actions.invoke_action(self.action, self.file)
0 comments (0 inline, 0 general)