'If both authentication and transport security are not required, and it
is asked for, it will fall back to allowing HELO.'

def test_requireHELOFallbackOperates(self):

    transport = StringTransport()
    self.clientProtocol.requireAuthentication = False
    self.clientProtocol.requireTransportSecurity = False
    self.clientProtocol.heloFallback = True
    self.clientProtocol.makeConnection(transport)
    self.clientProtocol.dataReceived('220    localhost\r\n')
    transport.clear()
    self.clientProtocol.dataReceived('500    not    an    esmtp    server\r\n')
    self.assertEqual('HELO    testuser\r\n', transport.value())
