mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-21 13:00:56 +01:00
Simplify "Test Plan" custom field
Summary: Ref T11114. This leaves mail integration and UI integration, but strips all the editing (now handled by EditEngine) and commit message stuff (now handled by CommitMessageField). Test Plan: Viewed and edited test plans and test plan transactions. Reviewers: chad Reviewed By: chad Maniphest Tasks: T11114 Differential Revision: https://secure.phabricator.com/D17084
This commit is contained in:
parent
9e4c16c4c3
commit
c458f09dcc
2 changed files with 2 additions and 110 deletions
|
@ -7,10 +7,6 @@ final class DifferentialTestPlanField
|
|||
return 'differential:test-plan';
|
||||
}
|
||||
|
||||
public function getFieldKeyForConduit() {
|
||||
return 'testPlan';
|
||||
}
|
||||
|
||||
public function getFieldName() {
|
||||
return pht('Test Plan');
|
||||
}
|
||||
|
@ -27,83 +23,10 @@ final class DifferentialTestPlanField
|
|||
return $revision->getTestPlan();
|
||||
}
|
||||
|
||||
protected function writeValueToRevision(
|
||||
DifferentialRevision $revision,
|
||||
$value) {
|
||||
$revision->setTestPlan($value);
|
||||
}
|
||||
|
||||
protected function isCoreFieldRequired() {
|
||||
return PhabricatorEnv::getEnvConfig('differential.require-test-plan-field');
|
||||
}
|
||||
|
||||
public function canDisableField() {
|
||||
return true;
|
||||
}
|
||||
|
||||
protected function getCoreFieldRequiredErrorString() {
|
||||
return pht(
|
||||
'You must provide a test plan. Describe the actions you performed '.
|
||||
'to verify the behavior of this change.');
|
||||
}
|
||||
|
||||
public function readValueFromRequest(AphrontRequest $request) {
|
||||
$this->setValue($request->getStr($this->getFieldKey()));
|
||||
}
|
||||
|
||||
public function renderEditControl(array $handles) {
|
||||
return id(new PhabricatorRemarkupControl())
|
||||
->setUser($this->getViewer())
|
||||
->setName($this->getFieldKey())
|
||||
->setValue($this->getValue())
|
||||
->setError($this->getFieldError())
|
||||
->setLabel($this->getFieldName());
|
||||
}
|
||||
|
||||
public function getApplicationTransactionTitle(
|
||||
PhabricatorApplicationTransaction $xaction) {
|
||||
$author_phid = $xaction->getAuthorPHID();
|
||||
$old = $xaction->getOldValue();
|
||||
$new = $xaction->getNewValue();
|
||||
|
||||
return pht(
|
||||
'%s updated the test plan for this revision.',
|
||||
$xaction->renderHandleLink($author_phid));
|
||||
}
|
||||
|
||||
public function getApplicationTransactionTitleForFeed(
|
||||
PhabricatorApplicationTransaction $xaction) {
|
||||
|
||||
$object_phid = $xaction->getObjectPHID();
|
||||
$author_phid = $xaction->getAuthorPHID();
|
||||
$old = $xaction->getOldValue();
|
||||
$new = $xaction->getNewValue();
|
||||
|
||||
return pht(
|
||||
'%s updated the test plan for %s.',
|
||||
$xaction->renderHandleLink($author_phid),
|
||||
$xaction->renderHandleLink($object_phid));
|
||||
}
|
||||
|
||||
public function getApplicationTransactionHasChangeDetails(
|
||||
PhabricatorApplicationTransaction $xaction) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getApplicationTransactionChangeDetails(
|
||||
PhabricatorApplicationTransaction $xaction,
|
||||
PhabricatorUser $viewer) {
|
||||
return $xaction->renderTextCorpusChangeDetails(
|
||||
$viewer,
|
||||
$xaction->getOldValue(),
|
||||
$xaction->getNewValue());
|
||||
}
|
||||
|
||||
public function shouldHideInApplicationTransactions(
|
||||
PhabricatorApplicationTransaction $xaction) {
|
||||
return ($xaction->getOldValue() === null);
|
||||
}
|
||||
|
||||
public function shouldAppearInGlobalSearch() {
|
||||
return true;
|
||||
}
|
||||
|
@ -139,39 +62,6 @@ final class DifferentialTestPlanField
|
|||
return new PHUIRemarkupView($this->getViewer(), $this->getValue());
|
||||
}
|
||||
|
||||
public function getApplicationTransactionRemarkupBlocks(
|
||||
PhabricatorApplicationTransaction $xaction) {
|
||||
return array($xaction->getNewValue());
|
||||
}
|
||||
|
||||
public function shouldAppearInCommitMessage() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function shouldAppearInCommitMessageTemplate() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function shouldOverwriteWhenCommitMessageIsEdited() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getCommitMessageLabels() {
|
||||
return array(
|
||||
'Test Plan',
|
||||
'Testplan',
|
||||
'Tested',
|
||||
'Tests',
|
||||
);
|
||||
}
|
||||
|
||||
public function validateCommitMessageValue($value) {
|
||||
if (!strlen($value) && $this->isCoreFieldRequired()) {
|
||||
throw new DifferentialFieldValidationException(
|
||||
$this->getCoreFieldRequiredErrorString());
|
||||
}
|
||||
}
|
||||
|
||||
public function shouldAppearInTransactionMail() {
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -32,6 +32,8 @@ final class DifferentialTransaction
|
|||
switch ($this->getMetadataValue('customfield:key')) {
|
||||
case 'differential:title':
|
||||
return new DifferentialRevisionTitleTransaction();
|
||||
case 'differential:test-plan':
|
||||
return new DifferentialRevisionTestPlanTransaction();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue