l.c.t.t.SSHTestCase(TestCaseWithTransport, LoomTestMixin, TestCaseWithFactory) : class documentation

Part of lp.codehosting.tests.test_acceptance View In Hierarchy

Known subclasses: lp.codehosting.tests.test_acceptance.AcceptanceTests, lp.codehosting.tests.test_acceptance.SmartserverTests, lp.codehosting.tests.test_acceptance.SmokeTest

TestCase class that runs an SSH server as well as the app server.
Method setUp Undocumented
Method __str__ The string representation of a test is its id.
Method getTransport Undocumented
Method assertBranchesMatch Assert that two branches have the same last revision.
Method branch Branch from the given URL to a local directory.
Method get_bzr_path See bzrlib.tests.TestCase.get_bzr_path.
Method push Push the local branch to the given URL.
Method assertCantPush Check that we cannot push from 'local_directory' to 'remote_url'.
Method getLastRevision Get the last revision ID at the given URL.
Method getTransportURL Return the base URL for the tests.
Method getDatabaseBranch Look up and return the specified branch from the database.
Method createBazaarBranch Create a new branch in the database and push our test branch there.
Method _run_bzr Call run_bzr_subprocess with some common options.
Method _run_bzr_error Run bzr expecting an error, returning the error message.

Inherited from LoomTestMixin:

Method loomify Undocumented
Method makeLoomBranchAndTree Make a looms-enabled branch and working tree.

Inherited from TestCaseWithFactory:

Method getUserBrowser Return a Browser logged in as a fresh user, maybe opened at url.
Method getNonRedirectingBrowser Undocumented
Method createBranchAtURL Create a branch at the supplied URL.
Method create_branch_and_tree Create a database branch, bzr branch and bzr checkout.
Method createBzrBranch Create a bzr branch for a database branch.
Static Method getBranchPath Return the path of the branch in the mirrored area.
Method useTempBzrHome Undocumented
Method useBzrBranches Prepare for using bzr branches.

Inherited from TestCase (via TestCaseWithFactory):

Method becomeDbUser Commit, then log into the database as dbuser.
Method useContext Use the supplied context in this test.
Method makeTemporaryDirectory Create a temporary directory, and return its path.
Method installKarmaRecorder Set up and return a KarmaRecorder.
Method assertProvides Assert 'obj' correctly provides 'interface'.
Method assertNotifies Assert that a callable performs a given notification.
Method assertNoNotification Assert that no notifications are generated by the callable.
Method assertSqlAttributeEqualsDate Fail unless the value of the attribute is equal to the date.
Method assertTextMatchesExpressionIgnoreWhitespace Undocumented
Method assertIsInstance Assert that an instance is an instance of assert_class.
Method assertIsNot Assert that expected is not the same object as observed.
Method assertContentEqual Assert that 'iter1' has the same content as 'iter2'.
Method assertRaisesWithContent Check if the given exception is raised with given content.
Method assertBetween Assert that 'variable' is strictly between two boundaries.
Method assertVectorEqual Apply assertEqual to all given pairs in one go.
Method expectedLog Expect a log to be written that matches the regex.
Method pushConfig Push some key-value pairs into a section of the config.
Method attachOopses Undocumented
Method attachLibrarianLog Include the logChunks from fixture in the test details.
Method assertStatementCount Assert that the expected number of SQL statements occurred.
Method useTempDir Use a temporary directory for this test.
Method assertEmailHeadersEqual Assert that two email headers are equal.
Method assertStartsWith Undocumented
Method assertEndsWith Asserts that s ends with suffix.
Method checkPermissions Check if the used_permissions match expected_permissions.
Method assertEmailQueueLength Pop the email queue, assert its length, and return it.
Method _unfoldEmailHeader Unfold a multiline email header.
def setUp(self):
Undocumented
def __str__(self):
The string representation of a test is its id.

The most descriptive way of writing down a test is to write down its id. It is usually the fully-qualified Python name, which is pretty handy.

def getTransport(self, relpath=None):
Undocumented
def assertBranchesMatch(self, local_url, remote_url):
Assert that two branches have the same last revision.
def _run_bzr(self, args, retcode=0):
Call run_bzr_subprocess with some common options.

We always want to force the subprocess to do its ssh communication with paramiko (because OpenSSH doesn't respect the $HOME environment variable) and we want to load the plugins that are in rocketfuel (mainly so we can test the loom support).

def _run_bzr_error(self, args):
Run bzr expecting an error, returning the error message.
def branch(self, remote_url, local_directory):
Branch from the given URL to a local directory.
def get_bzr_path(self):
See bzrlib.tests.TestCase.get_bzr_path.

We override this to return the 'bzr' executable from sourcecode.

def push(self, local_directory, remote_url, extra_args=None):
Push the local branch to the given URL.
def assertCantPush(self, local_directory, remote_url, error_messages=()):
Check that we cannot push from 'local_directory' to 'remote_url'.

In addition, if a list of messages is supplied as the error_messages argument, check that the bzr client printed one of these messages which shouldn't include the 'bzr: ERROR:' part of the message.

ReturnsThe last line of the stderr from the subprocess, which will be the 'bzr: ERROR: <repr of Exception>' line.
def getLastRevision(self, remote_url):
Get the last revision ID at the given URL.
def getTransportURL(self, relpath=None, username=None):
Return the base URL for the tests.
def getDatabaseBranch(self, personName, productName, branchName):
Look up and return the specified branch from the database.
def createBazaarBranch(self, user, product, branch, creator=None, branch_root=None):
Create a new branch in the database and push our test branch there.

Used to create branches that the test user is not able to create, and might not even be able to view.

API Documentation for Launchpad, generated by pydoctor at 2022-06-16 00:00:12.