Page MenuHomePhorge

DifferentialTestPlanFieldSpecification.php
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

DifferentialTestPlanFieldSpecification.php

<?php
/*
* Copyright 2011 Facebook, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
final class DifferentialTestPlanFieldSpecification
extends DifferentialFieldSpecification {
private $plan;
private $error = true;
public function shouldAppearOnEdit() {
$this->plan = $this->getRevision()->getTestPlan();
return true;
}
public function setValueFromRequest(AphrontRequest $request) {
$this->plan = $request->getStr('testplan');
$this->error = null;
return $this;
}
public function renderEditControl() {
return id(new AphrontFormTextAreaControl())
->setLabel('Test Plan')
->setName('testplan')
->setValue($this->plan)
->setError($this->error);
}
public function willWriteRevision(DifferentialRevisionEditor $editor) {
$this->getRevision()->setTestPlan($this->plan);
}
public function validateField() {
if (!strlen($this->plan)) {
$this->error = 'Required';
throw new DifferentialFieldValidationException(
"You must provide a test plan.");
}
}
public function shouldAppearOnCommitMessage() {
return true;
}
public function getCommitMessageKey() {
return 'testPlan';
}
public function setValueFromParsedCommitMessage($value) {
$this->plan = $value;
return $this;
}
}

File Metadata

Mime Type
text/x-php
Expires
Sat, May 3, 2:09 PM (2 d)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
60672
Default Alt Text
DifferentialTestPlanFieldSpecification.php (1 KB)

Event Timeline