def test_attempt_force_mx(self): env = Envelope("*****@*****.**", ["*****@*****.**"]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, "new_static_relay") mx.new_static_relay("mail.example.com", 25).AndReturn(static) static.attempt(env, 0) static.attempt(env, 1) self.mox.ReplayAll() mx.force_mx("example.com", "mail.example.com") mx.attempt(env, 0) mx.attempt(env, 1)
def test_attempt_force_mx(self): env = Envelope('*****@*****.**', ['*****@*****.**']) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') mx.new_static_relay('mail.example.com', 25).AndReturn(static) static.attempt(env, 0) static.attempt(env, 1) self.mox.ReplayAll() mx.force_mx('example.com', 'mail.example.com') mx.attempt(env, 0) mx.attempt(env, 1)
def test_attempt_no_mx(self): env = Envelope('*****@*****.**', ['*****@*****.**']) a_ret = FakeAAnswer(False, [('1.2.3.4', )]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(DNSResolver, 'query') DNSResolver.query('example.com', 'MX').AndRaise(DNSError(ARES_ENOTFOUND)) DNSResolver.query('example.com', 'A').AndReturn(FakeAsyncResult(a_ret)) mx.new_static_relay('example.com', 25).AndReturn(static) static.attempt(env, 0) self.mox.ReplayAll() mx.attempt(env, 0)
def test_attempt_no_mx(self): env = Envelope('*****@*****.**', ['*****@*****.**']) a_ret = FakeAAnswer(False, [('1.2.3.4', )]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(dns.resolver, 'query') dns.resolver.query('example.com', 'MX').AndRaise(dns.resolver.NXDOMAIN) dns.resolver.query('example.com', 'A').AndReturn(a_ret) mx.new_static_relay('1.2.3.4', 25).AndReturn(static) static.attempt(env, 0) self.mox.ReplayAll() mx.attempt(env, 0)
def test_attempt_no_mx(self): env = Envelope('*****@*****.**', ['*****@*****.**']) a_ret = FakeAAnswer(False, [('1.2.3.4', )]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(DNSResolver, 'query') DNSResolver.query('example.com', 'MX').AndRaise(DNSError(ARES_ENOTFOUND)) DNSResolver.query('example.com', 'A').AndReturn(FakeAsyncResult(a_ret)) mx.new_static_relay('1.2.3.4', 25).AndReturn(static) static.attempt(env, 0) self.mox.ReplayAll() mx.attempt(env, 0)
def test_attempt_no_mx(self): env = Envelope('*****@*****.**', ['*****@*****.**']) a_ret = FakeAAnswer(False, [('1.2.3.4', )]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(dns_resolver, 'query') dns_resolver.query('example.com', 'MX').AndRaise(dns.resolver.NXDOMAIN) dns_resolver.query('example.com', 'A').AndReturn(a_ret) mx.new_static_relay('1.2.3.4', 25).AndReturn(static) static.attempt(env, 0) self.mox.ReplayAll() mx.attempt(env, 0)
def test_attempt_no_mx(self): env = Envelope("*****@*****.**", ["*****@*****.**"]) a_ret = FakeAAnswer(False, [("1.2.3.4",)]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, "new_static_relay") self.mox.StubOutWithMock(dns_resolver, "query") dns_resolver.query("example.com", "MX").AndRaise(dns.resolver.NXDOMAIN) dns_resolver.query("example.com", "A").AndReturn(a_ret) mx.new_static_relay("1.2.3.4", 25).AndReturn(static) static.attempt(env, 0) self.mox.ReplayAll() mx.attempt(env, 0)
def test_attempt(self): env = Envelope("*****@*****.**", ["*****@*****.**"]) mx_ret = FakeMxAnswer(False, [(5, "mx1.example.com"), (10, "mx2.example.com")]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, "new_static_relay") self.mox.StubOutWithMock(dns_resolver, "query") dns_resolver.query("example.com", "MX").AndReturn(mx_ret) mx.new_static_relay("mx1.example.com", 25).AndReturn(static) static.attempt(env, 0) mx.new_static_relay("mx2.example.com", 25).AndReturn(static) static.attempt(env, 1) self.mox.ReplayAll() mx.attempt(env, 0) mx.attempt(env, 1)
def test_attempt(self): env = Envelope('*****@*****.**', ['*****@*****.**']) mx_ret = FakeMxAnswer(False, [(5, 'mx1.example.com'), (10, 'mx2.example.com')]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(dns.resolver, 'query') dns.resolver.query('example.com', 'MX').AndReturn(mx_ret) mx.new_static_relay('mx1.example.com', 25).AndReturn(static) static.attempt(env, 0) mx.new_static_relay('mx2.example.com', 25).AndReturn(static) static.attempt(env, 1) self.mox.ReplayAll() mx.attempt(env, 0) mx.attempt(env, 1)
def test_attempt(self): env = Envelope('*****@*****.**', ['*****@*****.**']) mx_ret = FakeMxAnswer(False, [(5, 'mx1.example.com'), (10, 'mx2.example.com')]) mx = MxSmtpRelay() static = self.mox.CreateMock(StaticSmtpRelay) self.mox.StubOutWithMock(mx, 'new_static_relay') self.mox.StubOutWithMock(DNSResolver, 'query') DNSResolver.query('example.com', 'MX').AndReturn(FakeAsyncResult(mx_ret)) mx.new_static_relay('mx1.example.com', 25).AndReturn(static) static.attempt(env, 0) mx.new_static_relay('mx2.example.com', 25).AndReturn(static) static.attempt(env, 1) self.mox.ReplayAll() mx.attempt(env, 0) mx.attempt(env, 1)