Path: blob/master/src/applications/diffusion/remarkup/__tests__/DiffusionCommitRemarkupRuleTestCase.php
13409 views
<?php12final class DiffusionCommitRemarkupRuleTestCase extends PhabricatorTestCase {34public function testProjectObjectRemarkup() {5$cases = array(6'{rP12f3f6d3a9ef9c7731051815846810cb3c4cd248}' => array(7'embed' => array(8array(9'offset' => 1,10'id' => 'rP12f3f6d3a9ef9c7731051815846810cb3c4cd248',11),12),13'ref' => array(14array(15'offset' => 1,16'id' => 'rP12f3f6d3a9ef9c7731051815846810cb3c4cd248',17),18),19),20'{rP1234, key=value}' => array(21'embed' => array(22array(23'offset' => 1,24'id' => 'rP1234',25'tail' => ', key=value',26),27),28'ref' => array(29array(30'offset' => 1,31'id' => 'rP1234',32),33),34),35'{rP1234 key=value}' => array(36'embed' => array(37array(38'offset' => 1,39'id' => 'rP1234',40'tail' => ' key=value',41),42),43'ref' => array(44array(45'offset' => 1,46'id' => 'rP1234',47),48),49),50'{rP:1234 key=value}' => array(51'embed' => array(52array(53'offset' => 1,54'id' => 'rP:1234',55'tail' => ' key=value',56),57),58'ref' => array(59array(60'offset' => 1,61'id' => 'rP:1234',62),63),64),65'{R123:1234 key=value}' => array(66'embed' => array(67array(68'offset' => 1,69'id' => 'R123:1234',70'tail' => ' key=value',71),72),73'ref' => array(74array(75'offset' => 1,76'id' => 'R123:1234',77),78),79),80'{rP:12f3f6d3a9ef9c7731051815846810cb3c4cd248}' => array(81'embed' => array(82array(83'offset' => 1,84'id' => 'rP:12f3f6d3a9ef9c7731051815846810cb3c4cd248',85),86),87'ref' => array(88array(89'offset' => 1,90'id' => 'rP:12f3f6d3a9ef9c7731051815846810cb3c4cd248',91),92),93),94'{R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248}' => array(95'embed' => array(96array(97'offset' => 1,98'id' => 'R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248',99),100),101'ref' => array(102array(103'offset' => 1,104'id' => 'R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248',105),106),107),108'{R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248, key=value}' => array(109'embed' => array(110array(111'offset' => 1,112'id' => 'R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248',113'tail' => ', key=value',114),115),116'ref' => array(117array(118'offset' => 1,119'id' => 'R123:12f3f6d3a9ef9c7731051815846810cb3c4cd248',120),121),122),123124// After an "@", we should not be recognizing references because these125// are username mentions.126'deadbeef' => array(127'embed' => array(128),129'ref' => array(130array(131'offset' => 0,132'id' => 'deadbeef',133),134),135),136'@deadbeef' => array(137'embed' => array(138),139'ref' => array(140),141),142);143144foreach ($cases as $input => $expect) {145$rule = new DiffusionCommitRemarkupRule();146$matches = $rule->extractReferences($input);147$this->assertEqual($expect, $matches, $input);148}149}150151}152153154