Merge lp:~adeuring/launchpad/expectations-bug-556499-model into lp:launchpad

Proposed by Abel Deuring
Status: Merged
Merged at revision: 10976
Proposed branch: lp:~adeuring/launchpad/expectations-bug-556499-model
Merge into: lp:launchpad
Diff against target: 421 lines (+199/-4)
16 files modified
lib/lp/bugs/doc/bug-reported-acknowledgement.txt (+122/-0)
lib/lp/bugs/interfaces/bugtarget.py (+10/-0)
lib/lp/registry/configure.zcml (+8/-3)
lib/lp/registry/interfaces/projectgroup.py (+10/-0)
lib/lp/registry/model/distribution.py (+1/-0)
lib/lp/registry/model/distributionsourcepackage.py (+22/-0)
lib/lp/registry/model/distroseries.py (+5/-0)
lib/lp/registry/model/product.py (+1/-0)
lib/lp/registry/model/productseries.py (+5/-0)
lib/lp/registry/model/projectgroup.py (+1/-0)
lib/lp/registry/model/sourcepackage.py (+5/-0)
lib/lp/registry/stories/webservice/xx-distribution-source-package.txt (+2/-1)
lib/lp/registry/stories/webservice/xx-distribution.txt (+1/-0)
lib/lp/registry/stories/webservice/xx-distroseries.txt (+1/-0)
lib/lp/registry/stories/webservice/xx-project-registry.txt (+4/-0)
lib/lp/registry/stories/webservice/xx-source-package.txt (+1/-0)
To merge this branch: bzr merge lp:~adeuring/launchpad/expectations-bug-556499-model
Reviewer Review Type Date Requested Status
Leonard Richardson (community) code Approve
Review via email: mp+27052@code.launchpad.net

Description of the change

This branch was originally written by intellectronica. He was not able to land it, so I ran ec2 test on it in order to get it merged.

This test run rsulted in a number of failures; most of them are webservice related: The new property bug_reported_acknowlegdement is webservice-exported, so it appears in a number of JSON representations of bug target objects.

Also, I added the still missing property lp.registry.model.DistributionSourcePackage.bug_reported_acknowlegdement.
I could not figure out a good test for it: doc/bug-reported-acknowledgement.txt already tested DSP.bug_reported_acknowlegdement -- but it obviously set only a simple object property but not a Storm column value.

tests: all the changed tests, and

./bin/test -t paches-view.txt

(this page test failed due to the missing property DSP.bug_reported_acknowlegdement)

no lint

The diff against Tom's lastest work:

=== modified file 'lib/lp/registry/model/distributionsourcepackage.py'
--- lib/lp/registry/model/distributionsourcepackage.py 2010-03-19 11:13:00 +0000
+++ lib/lp/registry/model/distributionsourcepackage.py 2010-06-08 13:27:12 +0000
@@ -147,6 +147,27 @@
         _get_bug_reporting_guidelines,
         _set_bug_reporting_guidelines)

+ def _get_bug_reported_acknowledgement(self):
+ """See `IBugTarget`."""
+ dsp_in_db = self._self_in_database
+ if dsp_in_db is not None:
+ return dsp_in_db.bug_reported_acknowledgement
+ return None
+
+ def _set_bug_reported_acknowledgement(self, value):
+ """See `IBugTarget`."""
+ dsp_in_db = self._self_in_database
+ if dsp_in_db is None:
+ dsp_in_db = DistributionSourcePackageInDatabase()
+ dsp_in_db.sourcepackagename = self.sourcepackagename
+ dsp_in_db.distribution = self.distribution
+ Store.of(self.distribution).add(dsp_in_db)
+ dsp_in_db.bug_reported_acknowledgement = value
+
+ bug_reported_acknowledgement = property(
+ _get_bug_reported_acknowledgement,
+ _set_bug_reported_acknowledgement)
+
     def _get_max_bug_heat(self):
         """See `IHasBugs`."""
         dsp_in_db = self._self_in_database
@@ -505,6 +526,7 @@
         sourcepackagename_id, 'SourcePackageName.id')

     bug_reporting_guidelines = Unicode()
+ bug_reported_acknowledgement = Unicode()

     max_bug_heat = Int()

=== modified file 'lib/lp/registry/stories/webservice/xx-distribution-source-package.txt'
--- lib/lp/registry/stories/webservice/xx-distribution-source-package.txt 2009-12-05 18:37:28 +0000
+++ lib/lp/registry/stories/webservice/xx-distribution-source-package.txt 2010-06-08 12:51:38 +0000
@@ -9,7 +9,8 @@
     ... name='mozilla-firefox').jsonBody()

     >>> print pretty(mozilla_firefox)
- {u'bug_reporting_guidelines': None,
+ {u'bug_reported_acknowledgement': None,
+ u'bug_reporting_guidelines': None,
      u'display_name': u'mozilla-firefox in debian',
      u'distribution_link': u'http://.../debian',
      u'http_etag': u'...',

=== modified file 'lib/lp/registry/stories/webservice/xx-distribution.txt'
--- lib/lp/registry/stories/webservice/xx-distribution.txt 2010-04-30 17:45:51 +0000
+++ lib/lp/registry/stories/webservice/xx-distribution.txt 2010-06-08 12:51:38 +0000
@@ -23,6 +23,7 @@
     all_milestones_collection_link: u'http://.../ubuntu/all_milestones'
     archive_mirrors_collection_link: u'http://.../ubuntu/archive_mirrors'
     archives_collection_link: u'http://.../ubuntu/archives'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     bug_supervisor_link: None
     cdimage_mirrors_collection_link: u'http://.../ubuntu/cdimage_mirrors'

=== modified file 'lib/lp/registry/stories/webservice/xx-distroseries.txt'
--- lib/lp/registry/stories/webservice/xx-distroseries.txt 2010-03-06 01:24:05 +0000
+++ lib/lp/registry/stories/webservice/xx-distroseries.txt 2010-06-08 12:51:38 +0000
@@ -60,6 +60,7 @@
     active_milestones_collection_link:
         u'http://.../ubuntu/hoary/active_milestones'
     all_milestones_collection_link: u'http://.../ubuntu/hoary/all_milestones'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     changeslist: <email address hidden>'
     date_created: u'2006-10-16T18:31:43.483559+00:00'

=== modified file 'lib/lp/registry/stories/webservice/xx-project-registry.txt'
--- lib/lp/registry/stories/webservice/xx-project-registry.txt 2010-05-07 18:18:56 +0000
+++ lib/lp/registry/stories/webservice/xx-project-registry.txt 2010-06-08 12:51:38 +0000
@@ -64,6 +64,7 @@
     active: True
     active_milestones_collection_link: u'http://.../mozilla/active_milestones'
     all_milestones_collection_link: u'http://.../mozilla/all_milestones'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     bug_tracker_link: None
     date_created: u'...'
@@ -150,6 +151,7 @@
     active_milestones_collection_link: u'http://.../firefox/active_milestones'
     all_milestones_collection_link: u'http://.../firefox/all_milestones'
     brand_link: u'http://.../firefox/brand'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     bug_supervisor_link: None
     bug_tracker_link: None
@@ -212,6 +214,7 @@
     active_milestones_collection_link: u'http://.../firefox/active_milestones'
     all_milestones_collection_link: u'http://.../firefox/all_milestones'
     brand_link: u'http://.../firefox/brand'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     bug_supervisor_link: None
     bug_tracker_link: None
@@ -861,6 +864,7 @@
     active_milestones_collection_link: u'http://.../babadoo/foobadoo/active_milestones'
     all_milestones_collection_link: u'http://.../babadoo/foobadoo/all_milestones'
     branch_link: u'http://.../~babadoo-owner/babadoo/fooey'
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     date_created: u'...'
     display_name: u'foobadoo'

=== modified file 'lib/lp/registry/stories/webservice/xx-source-package.txt'
--- lib/lp/registry/stories/webservice/xx-source-package.txt 2010-03-02 15:30:18 +0000
+++ lib/lp/registry/stories/webservice/xx-source-package.txt 2010-06-08 12:51:38 +0000
@@ -29,6 +29,7 @@
     ... name='evolution').jsonBody()

     >>> pprint_entry(evolution)
+ bug_reported_acknowledgement: None
     bug_reporting_guidelines: None
     displayname: u'evolution in Ubuntu Hoary'
     distribution_link: u'http://.../ubuntu'

To post a comment you must log in.
Revision history for this message
Leonard Richardson (leonardr) wrote :

r=me on the changes on top of intellectronica's branch

review: Approve (code)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== added file 'lib/lp/bugs/doc/bug-reported-acknowledgement.txt'
--- lib/lp/bugs/doc/bug-reported-acknowledgement.txt 1970-01-01 00:00:00 +0000
+++ lib/lp/bugs/doc/bug-reported-acknowledgement.txt 2010-06-08 13:33:43 +0000
@@ -0,0 +1,122 @@
1= Bug Reported Acknowledgement Message =
2
3A message of acknowledgement to be displayed to bug reporters after they've
4reported a bug can be set at the Distribution, DistributionSourcePackage,
5ProjectGroup or Product level to help users file good bug reports, direct
6them to FAQs, and so forth.
7
8 >>> login('foo.bar@canonical.com')
9
10 >>> from canonical.launchpad.interfaces import (
11 ... IDistributionSet, IProjectGroupSet, IProductSet)
12
13 >>> distribution = getUtility(IDistributionSet).getByName('ubuntu')
14 >>> distribution_source_package = (
15 ... distribution.getSourcePackage('alsa-utils'))
16 >>> project = getUtility(IProjectGroupSet).getByName('mozilla')
17 >>> product = getUtility(IProductSet).getByName('firefox')
18
19 >>> settable_contexts = [
20 ... distribution,
21 ... distribution_source_package,
22 ... project,
23 ... product,
24 ... ]
25
26 >>> for context in settable_contexts:
27 ... context.bug_reported_acknowledgement = (
28 ... "Bug reported on %s." % context.displayname)
29
30In fact, all IBugTargets have an acknowledgement message available, but the
31others delegate to the distribution or product level.
32
33DistroSeries and SourcePackages defer to the Distribution:
34
35 >>> distro_series = distribution.getSeries('warty')
36 >>> print distro_series.bug_reported_acknowledgement
37 Bug reported on Ubuntu.
38
39 >>> source_package = distro_series.getSourcePackage('alsa-utils')
40 >>> print source_package.bug_reported_acknowledgement
41 Bug reported on Ubuntu.
42
43ProductSeries defer to the Product:
44
45 >>> product_series = product.getSeries('trunk')
46 >>> print product_series.bug_reported_acknowledgement
47 Bug reported on Mozilla Firefox.
48
49One day these objects that defer bug_reported_acknowledgement may have
50their own message. In the meantime the deferral is done with a
51read-only property, and the security proxies also only allow read
52access.
53
54 >>> distro_series.bug_reported_acknowledgement = 'Foobar'
55 Traceback (most recent call last):
56 ...
57 ForbiddenAttribute: ...
58
59 >>> source_package.bug_reported_acknowledgement = 'Foobar'
60 Traceback (most recent call last):
61 ...
62 ForbiddenAttribute: ...
63
64 >>> product_series.bug_reported_acknowledgement = 'Foobar'
65 Traceback (most recent call last):
66 ...
67 ForbiddenAttribute: ...
68
69The security proxies also prevent unprivileged users from editing the
70message.
71
72 >>> from canonical.launchpad.interfaces import IPerson
73
74 >>> def check_access(user, context):
75 ... if IPerson.providedBy(user):
76 ... login_person(user)
77 ... else:
78 ... login(user)
79 ... context.bug_reported_acknowledgement = (
80 ... "%s let %s have access." % (
81 ... context.displayname,
82 ... getUtility(ILaunchBag).user.displayname))
83 ... print context.bug_reported_acknowledgement
84
85 >>> check_access("no-priv@canonical.com", distribution)
86 Traceback (most recent call last):
87 ...
88 Unauthorized: ...
89
90 >>> check_access("no-priv@canonical.com", distribution_source_package)
91 Traceback (most recent call last):
92 ...
93 Unauthorized: ...
94
95 >>> check_access("no-priv@canonical.com", project)
96 Traceback (most recent call last):
97 ...
98 Unauthorized: ...
99
100 >>> check_access("no-priv@canonical.com", product)
101 Traceback (most recent call last):
102 ...
103 Unauthorized: ...
104
105Of course the owner can edit the message.
106
107 >>> check_access(distribution.owner.activemembers[0], distribution)
108 Ubuntu let Alexander Limi have access.
109
110 >>> check_access(project.owner, project)
111 the Mozilla Project let Sample Person have access.
112
113 >>> check_access(product.owner, product)
114 Mozilla Firefox let Sample Person have access.
115
116In the case of DistributionSourcePackages, the owner of the
117Distribution can edit the message.
118
119 >>> check_access(
120 ... distribution_source_package.distribution.owner.activemembers[0],
121 ... distribution_source_package)
122 alsa-utils in ubuntu let Alexander Limi have access.
0123
=== modified file 'lib/lp/bugs/interfaces/bugtarget.py'
--- lib/lp/bugs/interfaces/bugtarget.py 2010-06-07 18:09:00 +0000
+++ lib/lp/bugs/interfaces/bugtarget.py 2010-06-08 13:33:43 +0000
@@ -239,6 +239,16 @@
239 required=False,239 required=False,
240 max_length=50000))240 max_length=50000))
241241
242 bug_reported_acknowledgement = exported(
243 Text(
244 title=(
245 u"After reporting a bug, I can expect the following."),
246 description=(
247 u"This message of acknowledgement will be displayed "
248 "to anyone after reporting a bug."),
249 required=False,
250 max_length=50000))
251
242 def createBug(bug_params):252 def createBug(bug_params):
243 """Create a new bug on this target.253 """Create a new bug on this target.
244254
245255
=== modified file 'lib/lp/registry/configure.zcml'
--- lib/lp/registry/configure.zcml 2010-05-17 09:35:18 +0000
+++ lib/lp/registry/configure.zcml 2010-06-08 13:33:43 +0000
@@ -380,6 +380,7 @@
380 publishing_history380 publishing_history
381 current_publishing_records381 current_publishing_records
382 bug_reporting_guidelines382 bug_reporting_guidelines
383 bug_reported_acknowledgement
383 latest_overall_publication384 latest_overall_publication
384 __getitem__385 __getitem__
385 getVersion386 getVersion
@@ -444,7 +445,9 @@
444 removeAnswerContact"/>445 removeAnswerContact"/>
445 <require446 <require
446 permission="launchpad.Edit"447 permission="launchpad.Edit"
447 set_attributes="bug_reporting_guidelines"/>448 set_attributes="
449 bug_reported_acknowledgement
450 bug_reporting_guidelines"/>
448 </class>451 </class>
449 <adapter452 <adapter
450 for="lp.registry.interfaces.distributionsourcepackage.IDistributionSourcePackage"453 for="lp.registry.interfaces.distributionsourcepackage.IDistributionSourcePackage"
@@ -1086,7 +1089,8 @@
1086 interface="lp.registry.interfaces.product.IProductEditRestricted"/>1089 interface="lp.registry.interfaces.product.IProductEditRestricted"/>
1087 <require1090 <require
1088 permission="launchpad.Edit"1091 permission="launchpad.Edit"
1089 set_attributes="bug_reporting_guidelines bugtracker1092 set_attributes="bug_reporting_guidelines
1093 bug_reported_acknowledgement bugtracker
1090 commercial_subscription description1094 commercial_subscription description
1091 development_focus displayname downloadurl1095 development_focus displayname downloadurl
1092 driver enable_bug_expiration1096 driver enable_bug_expiration
@@ -1403,7 +1407,8 @@
1403 displayname title summary description driver1407 displayname title summary description driver
1404 members owner security_contact mirror_admin homepage_content1408 members owner security_contact mirror_admin homepage_content
1405 icon logo mugshot enable_bug_expiration1409 icon logo mugshot enable_bug_expiration
1406 bug_reporting_guidelines official_blueprints official_malone1410 bug_reporting_guidelines bug_reported_acknowledgement
1411 official_blueprints official_malone
1407 official_rosetta official_answers official_bug_tags"/>1412 official_rosetta official_answers official_bug_tags"/>
1408 <require1413 <require
1409 permission="launchpad.TranslationsAdmin"1414 permission="launchpad.TranslationsAdmin"
14101415
=== modified file 'lib/lp/registry/interfaces/projectgroup.py'
--- lib/lp/registry/interfaces/projectgroup.py 2010-04-19 08:30:06 +0000
+++ lib/lp/registry/interfaces/projectgroup.py 2010-06-08 13:33:43 +0000
@@ -261,6 +261,16 @@
261 required=False,261 required=False,
262 max_length=50000))262 max_length=50000))
263263
264 bug_reported_acknowledgement = exported(
265 Text(
266 title=(
267 u"After reporting a bug, I can expect the following."),
268 description=(
269 u"This message of acknowledgement will be displayed "
270 "to anyone after reporting a bug."),
271 required=False,
272 max_length=50000))
273
264 def getProduct(name):274 def getProduct(name):
265 """Get a product with name `name`."""275 """Get a product with name `name`."""
266276
267277
=== modified file 'lib/lp/registry/model/distribution.py'
--- lib/lp/registry/model/distribution.py 2010-05-27 17:20:07 +0000
+++ lib/lp/registry/model/distribution.py 2010-06-08 13:33:43 +0000
@@ -156,6 +156,7 @@
156 notNull=False,156 notNull=False,
157 default=None)157 default=None)
158 bug_reporting_guidelines = StringCol(default=None)158 bug_reporting_guidelines = StringCol(default=None)
159 bug_reported_acknowledgement = StringCol(default=None)
159 security_contact = ForeignKey(160 security_contact = ForeignKey(
160 dbName='security_contact', foreignKey='Person',161 dbName='security_contact', foreignKey='Person',
161 storm_validator=validate_public_person, notNull=False,162 storm_validator=validate_public_person, notNull=False,
162163
=== modified file 'lib/lp/registry/model/distributionsourcepackage.py'
--- lib/lp/registry/model/distributionsourcepackage.py 2010-03-19 11:13:00 +0000
+++ lib/lp/registry/model/distributionsourcepackage.py 2010-06-08 13:33:43 +0000
@@ -147,6 +147,27 @@
147 _get_bug_reporting_guidelines,147 _get_bug_reporting_guidelines,
148 _set_bug_reporting_guidelines)148 _set_bug_reporting_guidelines)
149149
150 def _get_bug_reported_acknowledgement(self):
151 """See `IBugTarget`."""
152 dsp_in_db = self._self_in_database
153 if dsp_in_db is not None:
154 return dsp_in_db.bug_reported_acknowledgement
155 return None
156
157 def _set_bug_reported_acknowledgement(self, value):
158 """See `IBugTarget`."""
159 dsp_in_db = self._self_in_database
160 if dsp_in_db is None:
161 dsp_in_db = DistributionSourcePackageInDatabase()
162 dsp_in_db.sourcepackagename = self.sourcepackagename
163 dsp_in_db.distribution = self.distribution
164 Store.of(self.distribution).add(dsp_in_db)
165 dsp_in_db.bug_reported_acknowledgement = value
166
167 bug_reported_acknowledgement = property(
168 _get_bug_reported_acknowledgement,
169 _set_bug_reported_acknowledgement)
170
150 def _get_max_bug_heat(self):171 def _get_max_bug_heat(self):
151 """See `IHasBugs`."""172 """See `IHasBugs`."""
152 dsp_in_db = self._self_in_database173 dsp_in_db = self._self_in_database
@@ -505,6 +526,7 @@
505 sourcepackagename_id, 'SourcePackageName.id')526 sourcepackagename_id, 'SourcePackageName.id')
506527
507 bug_reporting_guidelines = Unicode()528 bug_reporting_guidelines = Unicode()
529 bug_reported_acknowledgement = Unicode()
508530
509 max_bug_heat = Int()531 max_bug_heat = Int()
510532
511533
=== modified file 'lib/lp/registry/model/distroseries.py'
--- lib/lp/registry/model/distroseries.py 2010-06-07 12:01:14 +0000
+++ lib/lp/registry/model/distroseries.py 2010-06-08 13:33:43 +0000
@@ -504,6 +504,11 @@
504 """See `IBugTarget`."""504 """See `IBugTarget`."""
505 return self.distribution.bug_reporting_guidelines505 return self.distribution.bug_reporting_guidelines
506506
507 @property
508 def bug_reported_acknowledgement(self):
509 """See `IBugTarget`."""
510 return self.distribution.bug_reported_acknowledgement
511
507 def _getMilestoneCondition(self):512 def _getMilestoneCondition(self):
508 """See `HasMilestonesMixin`."""513 """See `HasMilestonesMixin`."""
509 return (Milestone.distroseries == self)514 return (Milestone.distroseries == self)
510515
=== modified file 'lib/lp/registry/model/product.py'
--- lib/lp/registry/model/product.py 2010-04-27 13:57:18 +0000
+++ lib/lp/registry/model/product.py 2010-06-08 13:33:43 +0000
@@ -288,6 +288,7 @@
288 foreignKey="ProductSeries", dbName="development_focus", notNull=False,288 foreignKey="ProductSeries", dbName="development_focus", notNull=False,
289 default=None)289 default=None)
290 bug_reporting_guidelines = StringCol(default=None)290 bug_reporting_guidelines = StringCol(default=None)
291 bug_reported_acknowledgement = StringCol(default=None)
291 _cached_licenses = None292 _cached_licenses = None
292293
293 def _validate_active(self, attr, value):294 def _validate_active(self, attr, value):
294295
=== modified file 'lib/lp/registry/model/productseries.py'
--- lib/lp/registry/model/productseries.py 2010-06-03 16:08:33 +0000
+++ lib/lp/registry/model/productseries.py 2010-06-08 13:33:43 +0000
@@ -180,6 +180,11 @@
180 return self.product.bug_reporting_guidelines180 return self.product.bug_reporting_guidelines
181181
182 @property182 @property
183 def bug_reported_acknowledgement(self):
184 """See `IBugTarget`."""
185 return self.product.bug_reported_acknowledgement
186
187 @property
183 def sourcepackages(self):188 def sourcepackages(self):
184 """See IProductSeries"""189 """See IProductSeries"""
185 from lp.registry.model.sourcepackage import SourcePackage190 from lp.registry.model.sourcepackage import SourcePackage
186191
=== modified file 'lib/lp/registry/model/projectgroup.py'
--- lib/lp/registry/model/projectgroup.py 2010-04-16 15:06:55 +0000
+++ lib/lp/registry/model/projectgroup.py 2010-06-08 13:33:43 +0000
@@ -123,6 +123,7 @@
123 foreignKey="BugTracker", dbName="bugtracker", notNull=False,123 foreignKey="BugTracker", dbName="bugtracker", notNull=False,
124 default=None)124 default=None)
125 bug_reporting_guidelines = StringCol(default=None)125 bug_reporting_guidelines = StringCol(default=None)
126 bug_reported_acknowledgement = StringCol(default=None)
126 max_bug_heat = Int()127 max_bug_heat = Int()
127128
128 # convenient joins129 # convenient joins
129130
=== modified file 'lib/lp/registry/model/sourcepackage.py'
--- lib/lp/registry/model/sourcepackage.py 2010-06-07 12:01:14 +0000
+++ lib/lp/registry/model/sourcepackage.py 2010-06-08 13:33:43 +0000
@@ -425,6 +425,11 @@
425 """See `IBugTarget`."""425 """See `IBugTarget`."""
426 return self.distribution.bug_reporting_guidelines426 return self.distribution.bug_reporting_guidelines
427427
428 @property
429 def bug_reported_acknowledgement(self):
430 """See `IBugTarget`."""
431 return self.distribution.bug_reported_acknowledgement
432
428 def _customizeSearchParams(self, search_params):433 def _customizeSearchParams(self, search_params):
429 """Customize `search_params` for this source package."""434 """Customize `search_params` for this source package."""
430 search_params.setSourcePackage(self)435 search_params.setSourcePackage(self)
431436
=== modified file 'lib/lp/registry/stories/webservice/xx-distribution-source-package.txt'
--- lib/lp/registry/stories/webservice/xx-distribution-source-package.txt 2009-12-05 18:37:28 +0000
+++ lib/lp/registry/stories/webservice/xx-distribution-source-package.txt 2010-06-08 13:33:43 +0000
@@ -9,7 +9,8 @@
9 ... name='mozilla-firefox').jsonBody()9 ... name='mozilla-firefox').jsonBody()
1010
11 >>> print pretty(mozilla_firefox)11 >>> print pretty(mozilla_firefox)
12 {u'bug_reporting_guidelines': None,12 {u'bug_reported_acknowledgement': None,
13 u'bug_reporting_guidelines': None,
13 u'display_name': u'mozilla-firefox in debian',14 u'display_name': u'mozilla-firefox in debian',
14 u'distribution_link': u'http://.../debian',15 u'distribution_link': u'http://.../debian',
15 u'http_etag': u'...',16 u'http_etag': u'...',
1617
=== modified file 'lib/lp/registry/stories/webservice/xx-distribution.txt'
--- lib/lp/registry/stories/webservice/xx-distribution.txt 2010-05-14 08:05:23 +0000
+++ lib/lp/registry/stories/webservice/xx-distribution.txt 2010-06-08 13:33:43 +0000
@@ -23,6 +23,7 @@
23 all_milestones_collection_link: u'http://.../ubuntu/all_milestones'23 all_milestones_collection_link: u'http://.../ubuntu/all_milestones'
24 archive_mirrors_collection_link: u'http://.../ubuntu/archive_mirrors'24 archive_mirrors_collection_link: u'http://.../ubuntu/archive_mirrors'
25 archives_collection_link: u'http://.../ubuntu/archives'25 archives_collection_link: u'http://.../ubuntu/archives'
26 bug_reported_acknowledgement: None
26 bug_reporting_guidelines: None27 bug_reporting_guidelines: None
27 bug_supervisor_link: None28 bug_supervisor_link: None
28 cdimage_mirrors_collection_link: u'http://.../ubuntu/cdimage_mirrors'29 cdimage_mirrors_collection_link: u'http://.../ubuntu/cdimage_mirrors'
2930
=== modified file 'lib/lp/registry/stories/webservice/xx-distroseries.txt'
--- lib/lp/registry/stories/webservice/xx-distroseries.txt 2010-05-27 14:38:56 +0000
+++ lib/lp/registry/stories/webservice/xx-distroseries.txt 2010-06-08 13:33:43 +0000
@@ -61,6 +61,7 @@
61 active_milestones_collection_link:61 active_milestones_collection_link:
62 u'http://.../ubuntu/hoary/active_milestones'62 u'http://.../ubuntu/hoary/active_milestones'
63 all_milestones_collection_link: u'http://.../ubuntu/hoary/all_milestones'63 all_milestones_collection_link: u'http://.../ubuntu/hoary/all_milestones'
64 bug_reported_acknowledgement: None
64 bug_reporting_guidelines: None65 bug_reporting_guidelines: None
65 changeslist: u'hoary-changes@ubuntu.com'66 changeslist: u'hoary-changes@ubuntu.com'
66 date_created: u'2006-10-16T18:31:43.483559+00:00'67 date_created: u'2006-10-16T18:31:43.483559+00:00'
6768
=== modified file 'lib/lp/registry/stories/webservice/xx-project-registry.txt'
--- lib/lp/registry/stories/webservice/xx-project-registry.txt 2010-05-27 14:38:56 +0000
+++ lib/lp/registry/stories/webservice/xx-project-registry.txt 2010-06-08 13:33:43 +0000
@@ -64,6 +64,7 @@
64 active: True64 active: True
65 active_milestones_collection_link: u'http://.../mozilla/active_milestones'65 active_milestones_collection_link: u'http://.../mozilla/active_milestones'
66 all_milestones_collection_link: u'http://.../mozilla/all_milestones'66 all_milestones_collection_link: u'http://.../mozilla/all_milestones'
67 bug_reported_acknowledgement: None
67 bug_reporting_guidelines: None68 bug_reporting_guidelines: None
68 bug_tracker_link: None69 bug_tracker_link: None
69 date_created: u'...'70 date_created: u'...'
@@ -150,6 +151,7 @@
150 active_milestones_collection_link: u'http://.../firefox/active_milestones'151 active_milestones_collection_link: u'http://.../firefox/active_milestones'
151 all_milestones_collection_link: u'http://.../firefox/all_milestones'152 all_milestones_collection_link: u'http://.../firefox/all_milestones'
152 brand_link: u'http://.../firefox/brand'153 brand_link: u'http://.../firefox/brand'
154 bug_reported_acknowledgement: None
153 bug_reporting_guidelines: None155 bug_reporting_guidelines: None
154 bug_supervisor_link: None156 bug_supervisor_link: None
155 bug_tracker_link: None157 bug_tracker_link: None
@@ -212,6 +214,7 @@
212 active_milestones_collection_link: u'http://.../firefox/active_milestones'214 active_milestones_collection_link: u'http://.../firefox/active_milestones'
213 all_milestones_collection_link: u'http://.../firefox/all_milestones'215 all_milestones_collection_link: u'http://.../firefox/all_milestones'
214 brand_link: u'http://.../firefox/brand'216 brand_link: u'http://.../firefox/brand'
217 bug_reported_acknowledgement: None
215 bug_reporting_guidelines: None218 bug_reporting_guidelines: None
216 bug_supervisor_link: None219 bug_supervisor_link: None
217 bug_tracker_link: None220 bug_tracker_link: None
@@ -863,6 +866,7 @@
863 all_milestones_collection_link:866 all_milestones_collection_link:
864 u'http://.../babadoo/foobadoo/all_milestones'867 u'http://.../babadoo/foobadoo/all_milestones'
865 branch_link: u'http://.../~babadoo-owner/babadoo/fooey'868 branch_link: u'http://.../~babadoo-owner/babadoo/fooey'
869 bug_reported_acknowledgement: None
866 bug_reporting_guidelines: None870 bug_reporting_guidelines: None
867 date_created: u'...'871 date_created: u'...'
868 display_name: u'foobadoo'872 display_name: u'foobadoo'
869873
=== modified file 'lib/lp/registry/stories/webservice/xx-source-package.txt'
--- lib/lp/registry/stories/webservice/xx-source-package.txt 2010-05-27 14:38:56 +0000
+++ lib/lp/registry/stories/webservice/xx-source-package.txt 2010-06-08 13:33:43 +0000
@@ -29,6 +29,7 @@
29 ... name='evolution').jsonBody()29 ... name='evolution').jsonBody()
3030
31 >>> pprint_entry(evolution)31 >>> pprint_entry(evolution)
32 bug_reported_acknowledgement: None
32 bug_reporting_guidelines: None33 bug_reporting_guidelines: None
33 displayname: u'evolution in Ubuntu Hoary'34 displayname: u'evolution in Ubuntu Hoary'
34 distribution_link: u'http://.../ubuntu'35 distribution_link: u'http://.../ubuntu'