Пример #1
0
 /**
  * returns an array of issue and error data
  *
  * @param array $ticketList
  * @return array[]
  */
 public function getIssuesByKeys($ticketList = array())
 {
     if (empty($ticketList)) {
         return $ticketList;
     }
     $tickets = array();
     $errors = array();
     $results = array();
     foreach ($ticketList as $ticketIdentifier) {
         $resJson = '';
         $req = $this->client->get($this->buildTicketUrl($ticketIdentifier), array());
         $req->setHeader('Content-Type', 'application/json');
         try {
             $res = $req->send($req);
             $resJson = $res->json();
         } catch (ClientErrorResponseException $e) {
             $errors[] = $ticketIdentifier;
         }
         if (!empty($resJson)) {
             $tickets[] = $this->parser->parseIssue($resJson);
         }
     }
     $results['tickets'] = $tickets;
     $results['errors'] = $errors;
     return $results;
 }
 public function testParseJuraIssue()
 {
     $inputData = array('key' => 'testKey', 'fields' => array('summary' => 'testSummary', 'issuetype' => array('name' => 'testIssue', 'id' => 1), 'project' => array('key' => 'testKey'), 'customfield_10363' => array('name' => 'devTeam'), 'reporter' => array('displayName' => 'test'), 'customfield_10023' => 5, 'parent' => array('key' => 'testKey', 'fields' => array('summary' => 'testSummary')), 'customfield_10560' => array('[,name=W-Sprint 17.11.2015,]'), 'subtasks' => array()));
     $expectedResult = array('key' => 'testKey', 'summary' => 'testSummary', 'issueType' => 'testIssue', 'issueTypeId' => 1, 'projectKey' => 'testKey', 'devTeam' => 'devTeam', 'reporter' => 'test', 'storyPoints' => 5, 'hasSubTasks' => 0, 'parent' => array('key' => 'testKey', 'summary' => 'testSummary'), 'sprint' => 'W-Sprint 17.11.2015');
     $parser = new JiraParser();
     $result = $parser->parseIssue($inputData);
     $this->assertEquals($expectedResult, $result);
 }