← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] ~cjwatson/launchpad:doctest-line-length into launchpad:master

 

Colin Watson has proposed merging ~cjwatson/launchpad:doctest-line-length into launchpad:master.

Commit message:
Fix simple cases of excess line length in doctests

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/407009
-- 
Your team Launchpad code reviewers is requested to review the proposed merge of ~cjwatson/launchpad:doctest-line-length into launchpad:master.
diff --git a/doc/webapp-process.txt b/doc/webapp-process.txt
index 01414cb..3713788 100644
--- a/doc/webapp-process.txt
+++ b/doc/webapp-process.txt
@@ -266,13 +266,13 @@ Iteration Process
    with real application components.
 
 
-I will note that these processes are just guidelines on how to go about writing
-the software.  You might choose to prototype the application in order to learn
-about what URLs are required for some tricky interaction. Or, you might decide
-to write two iterations' worth of URLs into the URLs table all at once, but
-then implement them in two iterations.  The important thing is to understand
-where you are in this process, and why you are doing what you are doing at any
-particular stage.
+I will note that these processes are just guidelines on how to go about
+writing the software.  You might choose to prototype the application in
+order to learn about what URLs are required for some tricky interaction. Or,
+you might decide to write two iterations' worth of URLs into the URLs table
+all at once, but then implement them in two iterations.  The important thing
+is to understand where you are in this process, and why you are doing what
+you are doing at any particular stage.
 
 Keep the iterations short!
 
diff --git a/lib/lp/answers/stories/question-add-in-other-languages.txt b/lib/lp/answers/stories/question-add-in-other-languages.txt
index bdd93eb..ecd376a 100644
--- a/lib/lp/answers/stories/question-add-in-other-languages.txt
+++ b/lib/lp/answers/stories/question-add-in-other-languages.txt
@@ -41,7 +41,8 @@ At this point we'll present any similar questions (in any language)
 /and/ a warning message explaining that the chosen language is not
 understood by any member of the support community.
 
-    >>> similar_questions = find_tag_by_id(browser.contents, 'similar-questions')
+    >>> similar_questions = find_tag_by_id(
+    ...     browser.contents, 'similar-questions')
 
     XXX: Making search fast has a significant impact on this tests' use case,
     because there are 9 terms - the query has to ignore 7 of the terms to
diff --git a/lib/lp/app/stories/launchpad-search/site-search.txt b/lib/lp/app/stories/launchpad-search/site-search.txt
index e794534..ef4bbea 100644
--- a/lib/lp/app/stories/launchpad-search/site-search.txt
+++ b/lib/lp/app/stories/launchpad-search/site-search.txt
@@ -49,7 +49,8 @@ get an explanation of the search function.
 
     >>> print_search_results()
 
-    >>> print(extract_text(find_tag_by_id(anon_browser.contents, 'no-search')))
+    >>> print(extract_text(
+    ...     find_tag_by_id(anon_browser.contents, 'no-search')))
     Enter a term or many terms to find matching pages...
 
 When the user searches for specific item, such as a project name, they
diff --git a/lib/lp/bugs/doc/externalbugtracker-comment-pushing.txt b/lib/lp/bugs/doc/externalbugtracker-comment-pushing.txt
index a18be02..7cc3998 100644
--- a/lib/lp/bugs/doc/externalbugtracker-comment-pushing.txt
+++ b/lib/lp/bugs/doc/externalbugtracker-comment-pushing.txt
@@ -46,7 +46,8 @@ In order to test the pushing of comments to remote systems we'll create
 an example ExternalBugTracker that implements the
 ISupportsCommentPushing interface.
 
-    >>> from lp.bugs.interfaces.externalbugtracker import ISupportsCommentPushing
+    >>> from lp.bugs.interfaces.externalbugtracker import (
+    ...     ISupportsCommentPushing)
     >>> from lp.bugs.externalbugtracker import (
     ...     ExternalBugTracker)
 
@@ -182,7 +183,8 @@ The bug watch updater won't try to push comments that have been imported
 from the remote bugtracker. To demonstrate this, we need to create an
 example ExternalBugTracker that does comment importing.
 
-    >>> from lp.bugs.interfaces.externalbugtracker import ISupportsCommentImport
+    >>> from lp.bugs.interfaces.externalbugtracker import (
+    ...     ISupportsCommentImport)
     >>> @implementer(ISupportsCommentImport)
     ... class CommentImportingExternalBugTracker(
     ...     CommentPushingExternalBugTracker):
diff --git a/lib/lp/bugs/stories/bugs/bug-add-subscriber.txt b/lib/lp/bugs/stories/bugs/bug-add-subscriber.txt
index 752ccb9..56f6ae8 100644
--- a/lib/lp/bugs/stories/bugs/bug-add-subscriber.txt
+++ b/lib/lp/bugs/stories/bugs/bug-add-subscriber.txt
@@ -48,7 +48,8 @@ currently subscribed to the bug:
 
 They subscribe David Allouche to the bug using his Launchpad username.
 
-    >>> user_browser.open('http://bugs.launchpad.test/firefox/+bug/1/+addsubscriber')
+    >>> user_browser.open(
+    ...     'http://bugs.launchpad.test/firefox/+bug/1/+addsubscriber')
     >>> user_browser.getControl("Person").value = 'ddaa'
     >>> user_browser.getControl("Subscribe user").click()
     >>> user_browser.url
diff --git a/lib/lp/buildmaster/doc/buildfarmjobbehaviour.txt b/lib/lp/buildmaster/doc/buildfarmjobbehaviour.txt
index a24ee4a..0218b5f 100644
--- a/lib/lp/buildmaster/doc/buildfarmjobbehaviour.txt
+++ b/lib/lp/buildmaster/doc/buildfarmjobbehaviour.txt
@@ -44,7 +44,7 @@ For this documentation, we'll also need a dummy new build farm job.
     ...     pass
 
 Custom behaviours are not normally instantiated directly, instead an adapter
-is specified for the specific IBuildFarmJob. Normaly we'd add some ZCML to
+is specified for the specific IBuildFarmJob. Normally we'd add some ZCML to
 adapt our specific build farm job to its behaviour like:
 
     <!-- MyNewBuildBehaviour -->
@@ -59,7 +59,8 @@ But for the sake of this documentation we'll add the adapter manually.
 
     >>> from zope.component import provideAdapter
     >>> provideAdapter(
-    ...     MyNewBuildBehaviour, (IMyNewBuildFarmJob,), IBuildFarmJobBehaviour)
+    ...     MyNewBuildBehaviour, (IMyNewBuildFarmJob,),
+    ...     IBuildFarmJobBehaviour)
 
 This will then allow the builder to request and set the required behaviour
 from the current job. Bob the builder currently has a binary package job and
diff --git a/lib/lp/code/doc/codereviewcomment.txt b/lib/lp/code/doc/codereviewcomment.txt
index 263f73e..ab96dc2 100644
--- a/lib/lp/code/doc/codereviewcomment.txt
+++ b/lib/lp/code/doc/codereviewcomment.txt
@@ -70,7 +70,8 @@ a notification is produced when the comment is created.
     >>> from lp.testing.mail_helpers import (
     ...     pop_notifications, print_emails)
     >>> _unused = pop_notifications()
-    >>> merge_proposal.root_message_id = '<201003111740.test.root@xxxxxxxxxxx>'
+    >>> merge_proposal.root_message_id = (
+    ...     '<201003111740.test.root@xxxxxxxxxxx>')
     >>> comment = merge_proposal.createComment(
     ...     sender, 'Please merge', 'This patch is very nice.',
     ...     vote=CodeReviewVote.APPROVE, review_type='DB')
diff --git a/lib/lp/registry/browser/tests/karmacontext-views.txt b/lib/lp/registry/browser/tests/karmacontext-views.txt
index e412bba..08d2a48 100644
--- a/lib/lp/registry/browser/tests/karmacontext-views.txt
+++ b/lib/lp/registry/browser/tests/karmacontext-views.txt
@@ -52,7 +52,8 @@ The view renders summaries by category.
     Person             Specification Tracking Karma  Total Karma
     Mark Shuttleworth  22                            130
 
-    >>> print(extract_text(find_tag_by_id(content, 'Translations in Rosetta')))
+    >>> print(extract_text(
+    ...     find_tag_by_id(content, 'Translations in Rosetta')))
     Person      Translations in Rosetta Karma  Total Karma
     Foo Bar     164                            241
     Carlos ...    9                              9
diff --git a/lib/lp/registry/browser/tests/team-join-views.txt b/lib/lp/registry/browser/tests/team-join-views.txt
index e758be4..774b381 100644
--- a/lib/lp/registry/browser/tests/team-join-views.txt
+++ b/lib/lp/registry/browser/tests/team-join-views.txt
@@ -13,7 +13,10 @@ Joining and Subscribing to the List
     >>> from zope.component import getMultiAdapter
     >>> from lp.services.webapp.servers import LaunchpadTestRequest
     >>> def join_team(team):
-    ...     form = {'field.actions.join': '1', 'field.mailinglist_subscribe': u'on'}
+    ...     form = {
+    ...         'field.actions.join': '1',
+    ...         'field.mailinglist_subscribe': u'on',
+    ...         }
     ...     request = LaunchpadTestRequest(method='POST', form=form)
     ...     view = getMultiAdapter((team, request), name='+join')
     ...     view.initialize()
diff --git a/lib/lp/registry/doc/productseries.txt b/lib/lp/registry/doc/productseries.txt
index 87cb596..dad7d3e 100644
--- a/lib/lp/registry/doc/productseries.txt
+++ b/lib/lp/registry/doc/productseries.txt
@@ -223,9 +223,12 @@ them informational.
     ...     SpecificationDefinitionStatus,
     ...     SpecificationImplementationStatus,
     ...     )
-    >>> a.definition_status = b.definition_status = SpecificationDefinitionStatus.APPROVED
-    >>> a.implementation_status = SpecificationImplementationStatus.INFORMATIONAL
-    >>> b.implementation_status = SpecificationImplementationStatus.INFORMATIONAL
+    >>> a.definition_status = b.definition_status = (
+    ...     SpecificationDefinitionStatus.APPROVED)
+    >>> a.implementation_status = (
+    ...     SpecificationImplementationStatus.INFORMATIONAL)
+    >>> b.implementation_status = (
+    ...     SpecificationImplementationStatus.INFORMATIONAL)
     >>> a.acceptBy(a.owner)
     >>> shim = a.updateLifecycleStatus(a.owner)
     >>> b.declineBy(b.owner)
@@ -330,7 +333,8 @@ change the overall state of the spec to "completed".
 
     >>> jdub = getUtility(IPersonSet).getByName('jdub')
     >>> b.definition_status = SpecificationDefinitionStatus.APPROVED
-    >>> b.implementation_status = SpecificationImplementationStatus.INFORMATIONAL
+    >>> b.implementation_status = (
+    ...     SpecificationImplementationStatus.INFORMATIONAL)
     >>> print(b.updateLifecycleStatus(jdub).title)
     Complete
     >>> print(b.completer.name)
@@ -383,7 +387,8 @@ checks when setting and resetting the driver attributes.
     >>> product = factory.makeProduct(owner=mark, name='testprod',
     ...     displayname='Test Product', title='Test product title',
     ...     summary='summary', projectgroup=projectgroup)
-    >>> series = factory.makeProductSeries(owner=jblack, name='1.0', product=product,
+    >>> series = factory.makeProductSeries(
+    ...     owner=jblack, name='1.0', product=product,
     ...     summary='Series summary')
 
 
diff --git a/lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt b/lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt
index 891faff..d3b4045 100644
--- a/lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt
+++ b/lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt
@@ -73,7 +73,8 @@ Just like Launchpad administrators can.
     >>> print(admin_browser.getControl(
     ...     name='field.enable_bug_expiration').value)
     True
-    >>> print(admin_browser.getControl(name='field.blueprints_usage').value[0])
+    >>> print(
+    ...     admin_browser.getControl(name='field.blueprints_usage').value[0])
     LAUNCHPAD
     >>> print(admin_browser.getControl(name='field.answers_usage').value[0])
     LAUNCHPAD
diff --git a/lib/lp/registry/stories/milestone/xx-create-milestone-on-distribution.txt b/lib/lp/registry/stories/milestone/xx-create-milestone-on-distribution.txt
index d1028c7..a5f6829 100644
--- a/lib/lp/registry/stories/milestone/xx-create-milestone-on-distribution.txt
+++ b/lib/lp/registry/stories/milestone/xx-create-milestone-on-distribution.txt
@@ -3,7 +3,8 @@ add a milestone to the Ubuntu/hoary distroseries, which is owned by the Ubuntu
 Team (ubuntu-team).
 
     >>> name12_browser = setupBrowser(auth='Basic test@xxxxxxxxxxxxx:test')
-    >>> name12_browser.open('http://launchpad.test/ubuntu/hoary/+addmilestone')
+    >>> name12_browser.open(
+    ...     'http://launchpad.test/ubuntu/hoary/+addmilestone')
     ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2
     Traceback (most recent call last):
     ...
@@ -18,7 +19,8 @@ of the distribution should be able to add milestones for it, of course!
 
 Now let's go back and try the add milestone page again. It works:
 
-    >>> name12_browser.open('http://launchpad.test/ubuntu/hoary/+addmilestone')
+    >>> name12_browser.open(
+    ...     'http://launchpad.test/ubuntu/hoary/+addmilestone')
 
 Now, if we post to that form, we should see a success, and the page should
 redirect to the Ubuntu Hoary page showing the milestone we added.
diff --git a/lib/lp/registry/stories/product/xx-launchpad-project-search.txt b/lib/lp/registry/stories/product/xx-launchpad-project-search.txt
index d859756..dae4467 100644
--- a/lib/lp/registry/stories/product/xx-launchpad-project-search.txt
+++ b/lib/lp/registry/stories/product/xx-launchpad-project-search.txt
@@ -74,7 +74,8 @@ some terms and do another search.
     >>> project_search.getControl(name='text').value
     ''
     >>> project_search.getControl('Search').click()
-    >>> empty_search = find_tag_by_id(anon_browser.contents, 'empty-search-string')
+    >>> empty_search = find_tag_by_id(
+    ...     anon_browser.contents, 'empty-search-string')
     >>> print(empty_search.decode_contents())
     <BLANKLINE>
     ...Enter one or more words related to the project you want to find.
diff --git a/lib/lp/registry/stories/productseries/xx-productseries-add-and-edit.txt b/lib/lp/registry/stories/productseries/xx-productseries-add-and-edit.txt
index 1359d34..d8a665b 100644
--- a/lib/lp/registry/stories/productseries/xx-productseries-add-and-edit.txt
+++ b/lib/lp/registry/stories/productseries/xx-productseries-add-and-edit.txt
@@ -28,7 +28,8 @@ But Sample Person will and be able to add a series.
     >>> print(browser.url)
     http://launchpad.test/firefox/+addseries
 
-    >>> print(find_main_content(browser.contents).find('h1').decode_contents())
+    >>> print(
+    ...     find_main_content(browser.contents).find('h1').decode_contents())
     Register a new Mozilla Firefox release series
 
 After checking that the page +addseries is there, we try to add a new series.
diff --git a/lib/lp/services/mail/doc/emailauthentication.txt b/lib/lp/services/mail/doc/emailauthentication.txt
index 5a62218..897984c 100644
--- a/lib/lp/services/mail/doc/emailauthentication.txt
+++ b/lib/lp/services/mail/doc/emailauthentication.txt
@@ -153,7 +153,8 @@ starts failing, Python is probably fixed, so the manual boundary parsing
 hack can be removed.
 
     >>> msg = read_test_message('signed_folded_header.txt')
-    >>> print(six.ensure_str(msg.parsed_bytes)) #doctest: -NORMALIZE_WHITESPACE
+    >>> print(six.ensure_str(msg.parsed_bytes))
+    ... #doctest: -NORMALIZE_WHITESPACE
     Date:...
     ...
     Content-Type: multipart/mixed;
diff --git a/lib/lp/services/mail/tests/incomingmail.txt b/lib/lp/services/mail/tests/incomingmail.txt
index 3ade2b8..6731b61 100644
--- a/lib/lp/services/mail/tests/incomingmail.txt
+++ b/lib/lp/services/mail/tests/incomingmail.txt
@@ -321,7 +321,8 @@ OOPS notifications work even if the From: address isn't properly MIME-encoded.
     >>> notification = pop_notifications()[-1]
     >>> print(notification.get_content_type())
     multipart/mixed
-    >>> print(pretty(six.ensure_text(decode_header(notification['To'])[0][0])))
+    >>> print(pretty(
+    ...     six.ensure_text(decode_header(notification['To'])[0][0])))
     '\u05d1 <bet@xxxxxxxxxxxxx>'
     >>> error_message, original_message = notification.get_payload()
     >>> print(error_message.get_content_type())
diff --git a/lib/lp/services/webapp/doc/canonical_url_examples.txt b/lib/lp/services/webapp/doc/canonical_url_examples.txt
index 761581b..db55b99 100644
--- a/lib/lp/services/webapp/doc/canonical_url_examples.txt
+++ b/lib/lp/services/webapp/doc/canonical_url_examples.txt
@@ -225,7 +225,8 @@ An IBugTask on a distribution without a sourcepackage.
     ...     distro_task.target.distribution, getUtility(ILaunchBag).user)
     >>> print(canonical_url(distro_task))
     http://bugs.launchpad.test/debian/+bug/1
-    >>> distro_task.transitionToTarget(temp_target, getUtility(ILaunchBag).user)
+    >>> distro_task.transitionToTarget(
+    ...     temp_target, getUtility(ILaunchBag).user)
 
 An IBugTask on a distribution series source package.
 
@@ -237,7 +238,8 @@ An IBugTask on a distribution series without a sourcepackage.
 
     >>> temp_target = distro_series_task.target
     >>> distro_series_task.transitionToTarget(
-    ...     distro_series_task.target.distroseries, getUtility(ILaunchBag).user)
+    ...     distro_series_task.target.distroseries,
+    ...     getUtility(ILaunchBag).user)
     >>> print(canonical_url(distro_series_task))
     http://bugs.launchpad.test/debian/sarge/+bug/3
     >>> distro_series_task.transitionToTarget(
diff --git a/lib/lp/soyuz/stories/ppa/xx-ppa-navigation.txt b/lib/lp/soyuz/stories/ppa/xx-ppa-navigation.txt
index 87371d9..d8e0b49 100644
--- a/lib/lp/soyuz/stories/ppa/xx-ppa-navigation.txt
+++ b/lib/lp/soyuz/stories/ppa/xx-ppa-navigation.txt
@@ -134,7 +134,8 @@ From that page the user can return to the PPA overview.
 When the number of packages in the PPA is large the user will see them
 displayed in batches.
 
-    >>> anon_browser.open('http://launchpad.test/~cprov/+archive/ubuntu/ppa?batch=1')
+    >>> anon_browser.open(
+    ...     'http://launchpad.test/~cprov/+archive/ubuntu/ppa?batch=1')
 
 Since they are on the first page, the 'First' and 'Previous' links are
 inactive:
diff --git a/lib/lp/soyuz/stories/soyuz/xx-build-record.txt b/lib/lp/soyuz/stories/soyuz/xx-build-record.txt
index 0d80661..637821e 100644
--- a/lib/lp/soyuz/stories/soyuz/xx-build-record.txt
+++ b/lib/lp/soyuz/stories/soyuz/xx-build-record.txt
@@ -549,7 +549,8 @@ If the source package was created from a recipe build, link to it.
     ~cprov/product/mybranch recipe build in ubuntu shiny [~cprov/ubuntu/ppa]
     ...
 
-    >>> print(anon_browser.getLink('~cprov/product/mybranch recipe build').url)
+    >>> print(
+    ...     anon_browser.getLink('~cprov/product/mybranch recipe build').url)
     http://launchpad.test/~cprov/+archive/ubuntu/ppa/+recipebuild/...
 
 Finally, the 'Build files' section is identical for PPA builds.
diff --git a/lib/lp/soyuz/stories/soyuz/xx-sourcepackage-changelog.txt b/lib/lp/soyuz/stories/soyuz/xx-sourcepackage-changelog.txt
index 1a38985..74850ba 100644
--- a/lib/lp/soyuz/stories/soyuz/xx-sourcepackage-changelog.txt
+++ b/lib/lp/soyuz/stories/soyuz/xx-sourcepackage-changelog.txt
@@ -28,7 +28,8 @@ Browse the changelog of a sourcepackage..
 .. and another one:
 
     >>> user_browser.open(
-    ...     "http://launchpad.test/ubuntu/hoary/+source/alsa-utils/+changelog";)
+    ...     "http://launchpad.test/ubuntu/hoary/+source/alsa-utils/";
+    ...     "+changelog")
     >>> print(extract_text(
     ...           find_tag_by_id(user_browser.contents, 'changelogs')))
     alsa-utils (1.0.9a-4ubuntu1) hoary; urgency=low
@@ -71,7 +72,8 @@ the changelog are obfuscated when the user is not logged in (this stops
 bots from picking them up):
 
     >>> anon_browser.open(
-    ...     "http://launchpad.test/ubuntu/hoary/+source/alsa-utils/+changelog";)
+    ...     "http://launchpad.test/ubuntu/hoary/+source/alsa-utils/";
+    ...     "+changelog")
     >>> print(extract_text(find_main_content(anon_browser.contents)))
     Change logs for ...alsa-utils... in Hoary
     ...
diff --git a/lib/lp/soyuz/stories/webservice/xx-builds.txt b/lib/lp/soyuz/stories/webservice/xx-builds.txt
index b337f66..7f72ed7 100644
--- a/lib/lp/soyuz/stories/webservice/xx-builds.txt
+++ b/lib/lp/soyuz/stories/webservice/xx-builds.txt
@@ -31,7 +31,8 @@ source publications can be retrieved.
 
 Retrieve a source publication:
 
-    >>> cprov_archive = webservice.get("/~cprov/+archive/ubuntu/ppa").jsonBody()
+    >>> cprov_archive = webservice.get(
+    ...     "/~cprov/+archive/ubuntu/ppa").jsonBody()
     >>> pubs = webservice.named_get(
     ...     cprov_archive['self_link'], 'getPublishedSources').jsonBody()
     >>> source_pub = pubs['entries'][0]
diff --git a/lib/lp/translations/doc/poimport.txt b/lib/lp/translations/doc/poimport.txt
index 5b07995..524d926 100644
--- a/lib/lp/translations/doc/poimport.txt
+++ b/lib/lp/translations/doc/poimport.txt
@@ -305,8 +305,9 @@ not appear in the POTemplate.
 
     >>> def show_translation_details(translationmessage, pofile):
     ...     print(translationmessage.potmsgset.singular_text, end=' ')
-    ...     print(pretty(removeSecurityProxy(translationmessage.translations)),
-    ...           end=' ')
+    ...     print(
+    ...         pretty(removeSecurityProxy(translationmessage.translations)),
+    ...         end=' ')
     ...     print(translationmessage.potmsgset.getSequence(pofile.potemplate))
     >>> for translationmessage in pofile.translation_messages:
     ...     if translationmessage.is_current_ubuntu:
diff --git a/lib/lp/translations/stories/standalone/xx-pofile-translate-newlines-check.txt b/lib/lp/translations/stories/standalone/xx-pofile-translate-newlines-check.txt
index f441c14..d92801d 100644
--- a/lib/lp/translations/stories/standalone/xx-pofile-translate-newlines-check.txt
+++ b/lib/lp/translations/stories/standalone/xx-pofile-translate-newlines-check.txt
@@ -9,7 +9,7 @@ submission. For more details, please see
 https://bugzilla.mozilla.org/show_bug.cgi?id=299009
 
     >>> def print_tags(browser, tags):
-    ...     """Find and print [tags] in browser.contents. End each with '--'."""
+    ...     """Print [tags] from browser.contents. End each with '--'."""
     ...     soup = find_main_content(browser.contents)
     ...     for tag in soup.find_all(attrs={'id': tags}):
     ...         print(u"%s\n--\n" % tag.decode_contents())
@@ -22,7 +22,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=299009
 We can see that the message we are interested in is not translated.
 
     >>> print_tags(browser,
-    ...     ['msgset_149', 'msgset_149_singular', 'msgset_149_es_translation_0'])
+    ...     ['msgset_149', 'msgset_149_singular',
+    ...      'msgset_149_es_translation_0'])
     20.
     <input name="msgset_149" type="hidden"/>
     --
@@ -57,13 +58,15 @@ change the test, to be 100% sure that the textarea content is the right one.
     >>> browser.getControl(
     ...     name='msgset_149_es_translation_0_radiobutton').value = [
     ...         'msgset_149_es_translation_0_new']
-    >>> browser.getControl(name='msgset_149_es_translation_0_new').value = 'foo'
+    >>> browser.getControl(name='msgset_149_es_translation_0_new').value = (
+    ...     'foo')
     >>> browser.getControl(name='submit_translations').click()
     >>> print(browser.url)
     http://translations.launchpad.test/ubuntu/hoary/+source/evolution/+pots/evolution-2.2/es/+translate?start=19&batch=1
     >>> print(find_tag_by_id(
     ...     browser.contents,
-    ...     'msgset_149_es_translation_0_new')) #doctest: -NORMALIZE_WHITESPACE
+    ...     'msgset_149_es_translation_0_new'))
+    ... #doctest: -NORMALIZE_WHITESPACE
     <textarea ... name="msgset_149_es_translation_0_new"...>
     foo</textarea>
 
@@ -92,7 +95,8 @@ Get previous page to check that the save translation is the right one.
 And, as we can see, we get the trailing new line char
 
     >>> print_tags(browser, [
-    ...     'msgset_165', 'msgset_165_singular', 'msgset_165_es_translation_0'])
+    ...     'msgset_165', 'msgset_165_singular',
+    ...     'msgset_165_es_translation_0'])
     23.
     <input name="msgset_165" type="hidden"/>
     --
@@ -122,7 +126,8 @@ Get previous page to check that the save translation is the right one.
 And, as we can see, we get the same output, just one trailing newline char.
 
     >>> print_tags(browser, [
-    ...     'msgset_165', 'msgset_165_singular', 'msgset_165_es_translation_0'])
+    ...     'msgset_165', 'msgset_165_singular',
+    ...     'msgset_165_es_translation_0'])
     23.
     <input name="msgset_165" type="hidden"/>
     --
@@ -152,7 +157,8 @@ Get previous page to check that the save translation is the right one.
 And Launchpad comes to the rescue and stores just one!
 
     >>> print_tags(browser, [
-    ...     'msgset_165', 'msgset_165_singular', 'msgset_165_es_translation_0'])
+    ...     'msgset_165', 'msgset_165_singular',
+    ...     'msgset_165_es_translation_0'])
     23.
     <input name="msgset_165" type="hidden"/>
     --
diff --git a/lib/lp/translations/stories/standalone/xx-translation-credits.txt b/lib/lp/translations/stories/standalone/xx-translation-credits.txt
index 59aff77..f3a3237 100644
--- a/lib/lp/translations/stories/standalone/xx-translation-credits.txt
+++ b/lib/lp/translations/stories/standalone/xx-translation-credits.txt
@@ -56,7 +56,8 @@ displayed credits once we submit the translation.
     >>> inputradio = browser.getControl(
     ...    name='msgset_198_sr_translation_0_radiobutton')
     >>> inputradio.value = [ 'msgset_198_sr_translation_0_new']
-    >>> inputfield = browser.getControl(name='msgset_198_sr_translation_0_new')
+    >>> inputfield = browser.getControl(
+    ...     name='msgset_198_sr_translation_0_new')
     >>> inputfield.value = 'Test translation'
     >>> browser.getControl('Save & Continue').click()
     >>> print(browser.url)
diff --git a/lib/lp/translations/stories/standalone/xx-translationmessage-translate.txt b/lib/lp/translations/stories/standalone/xx-translationmessage-translate.txt
index 2c8bf6b..88763ad 100644
--- a/lib/lp/translations/stories/standalone/xx-translationmessage-translate.txt
+++ b/lib/lp/translations/stories/standalone/xx-translationmessage-translate.txt
@@ -194,7 +194,8 @@ Check that the message #13 is without translation.
 
 First what we represent in the form when there is no translation:
 
-    >>> print(find_tag_by_id(browser.contents, 'msgset_142').decode_contents())
+    >>> print(find_tag_by_id(
+    ...     browser.contents, 'msgset_142').decode_contents())
     13.
     <input name="msgset_142" type="hidden"/>
 
@@ -203,7 +204,8 @@ First what we represent in the form when there is no translation:
     Migrating `<code>%s</code>':
 
     >>> print(find_tag_by_id(
-    ...     browser.contents, 'msgset_142_es_translation_0').decode_contents())
+    ...     browser.contents,
+    ...     'msgset_142_es_translation_0').decode_contents())
     (no translation yet)
 
 And also, we don't get anyone as the Last translator because there is no
@@ -248,7 +250,8 @@ Let's submit an invalid value for this message #13.
 
 The message is still without translation:
 
-    >>> print(find_tag_by_id(browser.contents, 'msgset_142').decode_contents())
+    >>> print(find_tag_by_id(
+    ...     browser.contents, 'msgset_142').decode_contents())
     13.
     <input name="msgset_142" type="hidden"/>
 
@@ -257,7 +260,8 @@ The message is still without translation:
     Migrating `<code>%s</code>':
 
     >>> print(find_tag_by_id(
-    ...     browser.contents, 'msgset_142_es_translation_0').decode_contents())
+    ...     browser.contents,
+    ...     'msgset_142_es_translation_0').decode_contents())
     (no translation yet)
 
 And now a good submit.
@@ -282,7 +286,8 @@ Now, it has the submitted value.
 
 Check that the message #13 has the new value we submitted.
 
-    >>> print(find_tag_by_id(browser.contents, 'msgset_142').decode_contents())
+    >>> print(find_tag_by_id(
+    ...     browser.contents, 'msgset_142').decode_contents())
     13.
     <input name="msgset_142" type="hidden"/>
 
@@ -291,7 +296,8 @@ Check that the message #13 has the new value we submitted.
     Migrating `<code>%s</code>':
 
     >>> print(find_tag_by_id(
-    ...     browser.contents, 'msgset_142_es_translation_0').decode_contents())
+    ...     browser.contents,
+    ...     'msgset_142_es_translation_0').decode_contents())
     foo <code>%s</code>
 
 And now, we get the translator and reviewer, who happen to be the same
@@ -452,7 +458,8 @@ Also, we should still have previous translation:
     <input name="msgset_143" type="hidden"/>
 
     >>> print(find_tag_by_id(
-    ...     slow_submission.contents, 'msgset_143_singular').decode_contents())
+    ...     slow_submission.contents,
+    ...     'msgset_143_singular').decode_contents())
     The location and hierarchy of the Evolution contact...
 
     >>> print(find_tag_by_id(
@@ -481,8 +488,9 @@ If there is a message which has a translation, but no reviewer (eg.
 uploaded from a package), it only shows the translator, and not
 reviewer.
 
-    >>> browser.open('http://translations.launchpad.test/ubuntu/hoary/+source/'
-    ...              'mozilla/+pots/pkgconf-mozilla/de/1/+translate')
+    >>> browser.open(
+    ...     'http://translations.launchpad.test/ubuntu/hoary/+source/'
+    ...     'mozilla/+pots/pkgconf-mozilla/de/1/+translate')
     >>> print(extract_text(
     ...     find_tag_by_id(browser.contents, "translated_by").parent))
     Translated by Helge Kreutzmann on 2005-05-06