stable

Clone or download

Read-only

refactor: Use Option instead of nullable

No functional changes Other design improvements: * Remove duplication of logic to know if limit is reached * Introduce `Option::orElse` so that we can chain the retrieval/building of milestone and submilestone * Add a check and a test to make sure that we don't build a submilestone for nothing when limit is reached * Transform PromotedMilestone to an immutable object * Replace milestone id by milestone object when adding submilestone Part of story #35104: Milestones below Backlog Change-Id: Id2ce16fee3db8d512ebd320b287695ad5c36b710

Modified Files

Name
M plugins/agiledashboard/include/AgileDashboard/Milestone/Sidebar/PromotedMilestoneList.php +47 −31 Go to diff View file
M plugins/agiledashboard/include/AgileDashboard/Milestone/Sidebar/PromotedMilestoneListBuilder.php +65 −32 Go to diff View file
R plugins/agiledashboard/include/AgileDashboard/Milestone/Sidebar/PromotedMilestone.php Go to diff View file
M plugins/agiledashboard/tests/unit/AgileDashboard/Milestone/Sidebar/PromotedMilestoneListBuilderTest.php +85 −12 Go to diff View file
M plugins/agiledashboard/tests/unit/AgileDashboard/Milestone/Sidebar/PromotedMilestoneListTest.php +56 −22 Go to diff View file
D plugins/agiledashboard/tests/unit/AgileDashboard/Milestone/Sidebar/PromotedMilestoneTest.php +0 −53 Go to diff View file
M plugins/agiledashboard/tests/unit/Stub/Milestone/Sidebar/BuildPromotedMilestoneListStub.php +2 −3 Go to diff View file
M plugins/agiledashboard/tests/unit/Stub/Milestone/Sidebar/PromotedMilestoneBuilderStub.php +8 −0 Go to diff View file
M src/common/Option/Option.php +14 −0 Go to diff View file
M src/common/Option/README.md +8 −0 Go to diff View file
M tests/unit/common/Option/OptionTest.php +34 −0 Go to diff View file
M tests/unit/common/Option/TypeTest.php +28 −0 Go to diff View file