Merge lp:~jcsackett/launchpad/distribution-enum-selection-677536 into lp:launchpad

Proposed by j.c.sackett
Status: Merged
Approved by: Aaron Bentley
Approved revision: no longer in the source branch.
Merged at revision: 12002
Proposed branch: lp:~jcsackett/launchpad/distribution-enum-selection-677536
Merge into: lp:launchpad
Diff against target: 95 lines (+18/-18)
3 files modified
lib/lp/registry/browser/distribution.py (+4/-4)
lib/lp/registry/browser/tests/distribution-views.txt (+3/-3)
lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt (+11/-11)
To merge this branch: bzr merge lp:~jcsackett/launchpad/distribution-enum-selection-677536
Reviewer Review Type Date Requested Status
Aaron Bentley (community) Approve
Review via email: mp+42161@code.launchpad.net

Commit message

[r=abentley][ui=none][bug=677536] Updates interface for distribution edit and add views to allow full range of usage options on answers and blueprints.

Description of the change

Summary
=======
Although internally distributions now use the usage enums phased in for bridging the gap, they don't expose those settings where appropriate.

This branch exposes them for answers and blueprints. Bugs and translations both require more in depth solutions, making them more appropriately separate bugs.

Proposed fix
============
Switch use of official_* booleans for *_usage enums in the field names for distribution. All other work was already done.

Preimplementation talk
======================
Spoke with Curtis Hovey and Robert Collins (via comments on bug) regarding scope.

Implementation details
======================
As in Proposed.

Tests
=====
bin/test -t distribution-views

Demo & QA
=========
Go to launchpad.dev/ubuntu/+edit; you should now have an enum selection for blue prints and answers.

Lint
====
make lint output:

= Launchpad lint =

Checking for conflicts and issues in changed files.

Linting changed files:
  lib/lp/registry/browser/distribution.py
  lib/lp/registry/browser/tests/distribution-views.txt

To post a comment you must log in.
Revision history for this message
Aaron Bentley (abentley) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'lib/lp/registry/browser/distribution.py'
2--- lib/lp/registry/browser/distribution.py 2010-11-23 23:22:27 +0000
3+++ lib/lp/registry/browser/distribution.py 2010-11-30 15:26:33 +0000
4@@ -741,9 +741,9 @@
5 "domainname",
6 "members",
7 "official_malone",
8- "official_blueprints",
9+ "blueprints_usage",
10 "official_rosetta",
11- "official_answers",
12+ "answers_usage",
13 ]
14
15 @property
16@@ -787,9 +787,9 @@
17 'mugshot',
18 'official_malone',
19 'enable_bug_expiration',
20- 'official_blueprints',
21+ 'blueprints_usage',
22 'official_rosetta',
23- 'official_answers',
24+ 'answers_usage',
25 'translation_focus',
26 ]
27
28
29=== modified file 'lib/lp/registry/browser/tests/distribution-views.txt'
30--- lib/lp/registry/browser/tests/distribution-views.txt 2010-11-03 14:40:53 +0000
31+++ lib/lp/registry/browser/tests/distribution-views.txt 2010-11-30 15:26:33 +0000
32@@ -51,8 +51,8 @@
33
34 >>> view.field_names
35 ['name', 'displayname', 'title', 'summary', 'description', 'domainname',
36- 'members', 'official_malone', 'official_blueprints', 'official_rosetta',
37- 'official_answers']
38+ 'members', 'official_malone', 'blueprints_usage', 'official_rosetta',
39+ 'answers_usage']
40
41 >>> login("admin@canonical.com")
42 >>> form = {
43@@ -113,7 +113,7 @@
44 ['displayname', 'title', 'summary', 'description',
45 'bug_reporting_guidelines', 'bug_reported_acknowledgement', 'icon',
46 'logo', 'mugshot', 'official_malone', 'enable_bug_expiration',
47- 'official_blueprints', 'official_rosetta', 'official_answers',
48+ 'blueprints_usage', 'official_rosetta', 'answers_usage',
49 'translation_focus']
50
51 >>> del form['field.name']
52
53=== modified file 'lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt'
54--- lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt 2010-09-30 21:00:37 +0000
55+++ lib/lp/registry/stories/distribution/xx-distribution-launchpad-usage.txt 2010-11-30 15:26:33 +0000
56@@ -31,10 +31,10 @@
57 True
58 >>> print registrant.getControl(name='field.enable_bug_expiration').value
59 True
60- >>> print registrant.getControl(name='field.official_blueprints').value
61- True
62- >>> print registrant.getControl(name='field.official_answers').value
63- True
64+ >>> print registrant.getControl(name='field.blueprints_usage').value[0]
65+ LAUNCHPAD
66+ >>> print registrant.getControl(name='field.answers_usage').value[0]
67+ LAUNCHPAD
68
69 >>> registrant.getControl(name='field.official_rosetta').value = False
70 >>> registrant.getControl('Change', index=3).click()
71@@ -52,17 +52,17 @@
72 >>> print admin_browser.getControl(
73 ... name='field.enable_bug_expiration').value
74 True
75- >>> print admin_browser.getControl(name='field.official_blueprints').value
76- True
77- >>> print admin_browser.getControl(name='field.official_answers').value
78- True
79+ >>> print admin_browser.getControl(name='field.blueprints_usage').value[0]
80+ LAUNCHPAD
81+ >>> print admin_browser.getControl(name='field.answers_usage').value[0]
82+ LAUNCHPAD
83
84 >>> admin_browser.getControl(
85 ... name='field.enable_bug_expiration').value = False
86 >>> admin_browser.getControl(name='field.official_malone').value = False
87- >>> admin_browser.getControl(name='field.official_blueprints').value = (
88- ... False)
89- >>> admin_browser.getControl(name='field.official_answers').value = False
90+ >>> admin_browser.getControl(name='field.blueprints_usage').value = (
91+ ... ['UNKNOWN'])
92+ >>> admin_browser.getControl(name='field.answers_usage').value = ['UNKNOWN']
93 >>> admin_browser.getControl('Change', index=3).click()
94
95 >>> print admin_browser.url