Merge lp:~sinzui/launchpad/delete-conjoined-bugtask-0 into lp:launchpad
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Robert Collins | ||||
Approved revision: | no longer in the source branch. | ||||
Merged at revision: | 11341 | ||||
Proposed branch: | lp:~sinzui/launchpad/delete-conjoined-bugtask-0 | ||||
Merge into: | lp:launchpad | ||||
Diff against target: |
73 lines (+33/-3) 2 files modified
lib/lp/registry/browser/__init__.py (+6/-2) lib/lp/registry/browser/tests/test_milestone.py (+27/-1) |
||||
To merge this branch: | bzr merge lp:~sinzui/launchpad/delete-conjoined-bugtask-0 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Robert Collins (community) | Approve | ||
Review via email: mp+32163@code.launchpad.net |
Description of the change
This is my branch to delete milestone conjoined bugtasks instead of oops.
lp:~sinzui/launchpad/delete-conjoined-bugtask-0
Diff size: 74
Launchpad bug:
https:/
Test command: ./bin/test -vv \
-t TestMilestoneDe
Pre-
Target release: 10.09
Delete milestone conjoined bugtasks instead of oops
-------
OOPS-1507A1604, shows that the act of untargeting a bugtask fails when it is
conjoined. This is contrary to the intended rules where the bugtask should be
deleted...removing the insane conjoined situation.
Rules
-----
In discussion with Deryck and jcsackett regarding when a bug is conjoined
and where the oops really takes place. We discovered there are two, not
one, condition where a bugtask must be deleted. All bugtasks targeted to
product series are deleted since the project already has a bugtask, but
in the case of milestones, some of them may also be conjoined.
* When iterating over the milestone's bug tasks, check if it has a
conjoined
as the productseries delete milestone code does.
QA
--
* Create a series for a project you control and make it the development
focus.
* Create a milestone for the release.
* Target a bug to the series.
* Choose the delete the milestone.
* Verify the milestone is deleted.
Lint
----
Linting changed files:
lib/lp/
lib/lp/
Test
----
* lib/lp/
* Added a test that reproduced error seen in the oops and verification
that the milestone was deleted.
Implementation
--------------
* lib/lp/
* Added a condition to check for a conjoined_master and delete it when
there is a master.
* Wrapped long line per lint.
The name in your test data probably isn't needed as the factory has sane defaults.