move Welcome into test_scripts, remove test_cli
This commit is contained in:
parent
9717b67d1b
commit
e787d0ffc5
|
@ -1,45 +0,0 @@
|
||||||
from __future__ import print_function, absolute_import, unicode_literals
|
|
||||||
import io
|
|
||||||
from twisted.trial import unittest
|
|
||||||
from ..cli import welcome
|
|
||||||
|
|
||||||
class Welcome(unittest.TestCase):
|
|
||||||
def do(self, welcome_message, my_version="2.0", twice=False):
|
|
||||||
stderr = io.StringIO()
|
|
||||||
h = welcome.CLIWelcomeHandler("url", my_version, stderr)
|
|
||||||
h.handle_welcome(welcome_message)
|
|
||||||
if twice:
|
|
||||||
h.handle_welcome(welcome_message)
|
|
||||||
return stderr.getvalue()
|
|
||||||
|
|
||||||
def test_empty(self):
|
|
||||||
stderr = self.do({})
|
|
||||||
self.assertEqual(stderr, "")
|
|
||||||
|
|
||||||
def test_version_current(self):
|
|
||||||
stderr = self.do({"current_cli_version": "2.0"})
|
|
||||||
self.assertEqual(stderr, "")
|
|
||||||
|
|
||||||
def test_version_old(self):
|
|
||||||
stderr = self.do({"current_cli_version": "3.0"})
|
|
||||||
expected = ("Warning: errors may occur unless both sides are running the same version\n" +
|
|
||||||
"Server claims 3.0 is current, but ours is 2.0\n")
|
|
||||||
self.assertEqual(stderr, expected)
|
|
||||||
|
|
||||||
def test_version_old_twice(self):
|
|
||||||
stderr = self.do({"current_cli_version": "3.0"}, twice=True)
|
|
||||||
# the handler should only emit the version warning once, even if we
|
|
||||||
# get multiple Welcome messages (which could happen if we lose the
|
|
||||||
# connection and then reconnect)
|
|
||||||
expected = ("Warning: errors may occur unless both sides are running the same version\n" +
|
|
||||||
"Server claims 3.0 is current, but ours is 2.0\n")
|
|
||||||
self.assertEqual(stderr, expected)
|
|
||||||
|
|
||||||
def test_version_unreleased(self):
|
|
||||||
stderr = self.do({"current_cli_version": "3.0"},
|
|
||||||
my_version="2.5-middle-something")
|
|
||||||
self.assertEqual(stderr, "")
|
|
||||||
|
|
||||||
def test_motd(self):
|
|
||||||
stderr = self.do({"motd": "hello"})
|
|
||||||
self.assertEqual(stderr, "Server (at url) says:\n hello\n")
|
|
|
@ -9,7 +9,7 @@ from twisted.internet.utils import getProcessOutputAndValue
|
||||||
from twisted.internet.defer import gatherResults, inlineCallbacks, returnValue
|
from twisted.internet.defer import gatherResults, inlineCallbacks, returnValue
|
||||||
from .. import __version__
|
from .. import __version__
|
||||||
from .common import ServerBase, config
|
from .common import ServerBase, config
|
||||||
from ..cli import cmd_send, cmd_receive
|
from ..cli import cmd_send, cmd_receive, welcome
|
||||||
from ..errors import TransferError, WrongPasswordError, WelcomeError
|
from ..errors import TransferError, WrongPasswordError, WelcomeError
|
||||||
|
|
||||||
|
|
||||||
|
@ -888,3 +888,44 @@ class AppID(ServerBase, unittest.TestCase):
|
||||||
).fetchall()
|
).fetchall()
|
||||||
self.assertEqual(len(used), 1, used)
|
self.assertEqual(len(used), 1, used)
|
||||||
self.assertEqual(used[0]["app_id"], u"appid2")
|
self.assertEqual(used[0]["app_id"], u"appid2")
|
||||||
|
|
||||||
|
class Welcome(unittest.TestCase):
|
||||||
|
def do(self, welcome_message, my_version="2.0", twice=False):
|
||||||
|
stderr = io.StringIO()
|
||||||
|
h = welcome.CLIWelcomeHandler("url", my_version, stderr)
|
||||||
|
h.handle_welcome(welcome_message)
|
||||||
|
if twice:
|
||||||
|
h.handle_welcome(welcome_message)
|
||||||
|
return stderr.getvalue()
|
||||||
|
|
||||||
|
def test_empty(self):
|
||||||
|
stderr = self.do({})
|
||||||
|
self.assertEqual(stderr, "")
|
||||||
|
|
||||||
|
def test_version_current(self):
|
||||||
|
stderr = self.do({"current_cli_version": "2.0"})
|
||||||
|
self.assertEqual(stderr, "")
|
||||||
|
|
||||||
|
def test_version_old(self):
|
||||||
|
stderr = self.do({"current_cli_version": "3.0"})
|
||||||
|
expected = ("Warning: errors may occur unless both sides are running the same version\n" +
|
||||||
|
"Server claims 3.0 is current, but ours is 2.0\n")
|
||||||
|
self.assertEqual(stderr, expected)
|
||||||
|
|
||||||
|
def test_version_old_twice(self):
|
||||||
|
stderr = self.do({"current_cli_version": "3.0"}, twice=True)
|
||||||
|
# the handler should only emit the version warning once, even if we
|
||||||
|
# get multiple Welcome messages (which could happen if we lose the
|
||||||
|
# connection and then reconnect)
|
||||||
|
expected = ("Warning: errors may occur unless both sides are running the same version\n" +
|
||||||
|
"Server claims 3.0 is current, but ours is 2.0\n")
|
||||||
|
self.assertEqual(stderr, expected)
|
||||||
|
|
||||||
|
def test_version_unreleased(self):
|
||||||
|
stderr = self.do({"current_cli_version": "3.0"},
|
||||||
|
my_version="2.5-middle-something")
|
||||||
|
self.assertEqual(stderr, "")
|
||||||
|
|
||||||
|
def test_motd(self):
|
||||||
|
stderr = self.do({"motd": "hello"})
|
||||||
|
self.assertEqual(stderr, "Server (at url) says:\n hello\n")
|
||||||
|
|
Loading…
Reference in New Issue
Block a user