def test_attempt(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((0, '', '')) self.mox.ReplayAll() m.attempt(env, 0)
def test_attempt(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((0, '', '')) self.mox.ReplayAll() m.attempt(env, 0)
def test_attempt(self): env = Envelope() m = PipeRelay(["relaytest"]) self.mox.StubOutWithMock(m, "_exec_process") m._exec_process(env).AndReturn((0, "", "")) self.mox.ReplayAll() m.attempt(env, 0)
def test_attempt_permanentfail(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((13, '5.0.0 permanent failure', '')) self.mox.ReplayAll() with self.assertRaises(PermanentRelayError): m.attempt(env, 0)
def test_attempt_timeout(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndRaise(Timeout) self.mox.ReplayAll() with self.assertRaises(TransientRelayError): m.attempt(env, 0)
def test_attempt_permanentfail(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((13, '5.0.0 permanent failure', '')) self.mox.ReplayAll() with assert_raises(PermanentRelayError): m.attempt(env, 0)
def test_attempt_timeout(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndRaise(Timeout) self.mox.ReplayAll() with assert_raises(TransientRelayError): m.attempt(env, 0)
def test_attempt_transientfail(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((1337, 'transient failure', '')) self.mox.ReplayAll() with assert_raises(TransientRelayError): m.attempt(env, 0)
def test_attempt_transientfail(self): env = Envelope() m = PipeRelay(['relaytest']) self.mox.StubOutWithMock(m, '_exec_process') m._exec_process(env).AndReturn((1337, 'transient failure', '')) self.mox.ReplayAll() with self.assertRaises(TransientRelayError): m.attempt(env, 0)
def test_attempt_permanentfail(self): env = Envelope() m = PipeRelay(["relaytest"]) self.mox.StubOutWithMock(m, "_exec_process") m._exec_process(env).AndReturn((13, "5.0.0 permanent failure", "")) self.mox.ReplayAll() with self.assertRaises(PermanentRelayError): m.attempt(env, 0)
def test_exec_process_error(self): pmock = self.mox.CreateMock(subprocess.Popen) self.mox.StubOutWithMock(subprocess, 'Popen') env = Envelope('*****@*****.**', ['*****@*****.**']) env.parse('From: [email protected]\r\n\r\ntest test\r\n') subprocess.Popen(['relaytest', '-f', '*****@*****.**'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE).AndReturn(pmock) pmock.communicate('From: [email protected]\r\n\r\ntest test\r\n').AndReturn(('', '')) pmock.pid = -1 pmock.returncode = 1337 self.mox.ReplayAll() m = PipeRelay(['relaytest', '-f', '{sender}']) status, stdout, stderr = m._exec_process(env) assert_equal(1337, status) assert_equal('', stdout) assert_equal('', stderr)
def test_exec_process_error(self): pmock = self.mox.CreateMock(subprocess.Popen) self.mox.StubOutWithMock(subprocess, "Popen") env = Envelope("*****@*****.**", ["*****@*****.**"]) env.parse("From: [email protected]\r\n\r\ntest test\r\n") subprocess.Popen( ["relaytest", "-f", "*****@*****.**"], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, ).AndReturn(pmock) pmock.communicate("From: [email protected]\r\n\r\ntest test\r\n").AndReturn(("", "")) pmock.pid = -1 pmock.returncode = 1337 self.mox.ReplayAll() m = PipeRelay(["relaytest", "-f", "{sender}"]) status, stdout, stderr = m._exec_process(env) self.assertEqual(1337, status) self.assertEqual("", stdout) self.assertEqual("", stderr)