Drush: tests/outputFormatTest.php Source File

  1. 7.x doxygen/html/outputFormatTest_8php_source.html
  2. master doxygen/html/outputFormatTest_8php_source.html
1 <?php
2 
3 namespace Unish;
4 
5 /**
6  * Tests for outputformat.drush.inc
7  */
8 
9 /**
10  * @todo, Consider removing these tests now that we have outputFormatUnitCase.
11  *
12  * @group slow
13  * @group base
14  */
16 
17 /**
18  * Test output formats using various Drush commands on a Drupal site.
19  *
20  * Cannot use dataProvider since we want to share one setUpDrupal(),
21  **/
22  public function testOutputFormatWithDrupal() {
23  $data = $this->getDataForDrupal();
24  $sites = $this->setUpDrupal(1, TRUE);
25  $site_options = array(
26  'root' => $this->webroot(),
27  'uri' => key($sites),
28  );
29  $this->drush('pm-download', array('devel'), $site_options + array('cache' => NULL, 'skip' => TRUE));
30 
31  foreach ($data as $row) {
32  extract($row);
33  $name = $name . ": ";
34  // We need to specify a fixed column width so that word wrapping does
35  // not change our output contrary to our expectations when run in
36  // a narrow terminal window.
37  $env = array(
38  'COLUMNS' => '120',
39  );
40  $this->drush($command, $args, $site_options + $options + array('format' => $format), NULL, NULL, self::EXIT_SUCCESS, NULL, $env);
41  $output = implode("\n", $this->getOutputAsList()); // note: we consider trailing eols insignificant
42  // If the Drupal command we are running might produce variable output,
43  // we can use one or more output filters to simplify the output down
44  // to an invariant form.
45  foreach ($output_filter as $regex => $replacement) {
46  $output = preg_replace($regex, $replacement, $output);
47  }
48  $this->assertEquals($name . $expected, $name. $output);
49  }
50  }
51 
52  public function getDataForDrupal() {
53  $unish_tmp = UNISH_TMP; // Need local variable.
54  return array(
55  array(
56  'name' => 'Status test - drush version / list',
57  'command' => 'core-status',
58  'args' => array('drush version'),
59  'options' => array(),
60  'format' => 'list',
61  'output_filter' => array('/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/' => '0.0-dev'),
62  'expected' => '0.0-dev',
63  ),
64 // array(
65 // 'name' => 'Status test - drush / ini',
66 // 'command' => 'core-status',
67 // 'args' => array('drush'),
68 // 'format' => 'ini',
69 // 'output_filter' => array('/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/' => '0.0-dev', '#/.*/etc/drush#' => '/etc/drush'),
70 // 'expected' => 'drush-version=0.0-dev
71 //drush-conf=
72 //drush-alias-files=/etc/drush/dev.alias.drushrc.php',
73 // ),
74  array(
75  'name' => 'Status test - drush / export',
76  'command' => 'core-status',
77  'args' => array('drush'),
78  'options' => array(),
79  'format' => 'var_export',
80  'output_filter' => array('/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/' => '0.0-dev', '#/.*/etc/drush#' => '/etc/drush'),
81  'expected' => "array(
82  'drush-version' => '0.0-dev',
83  'drush-temp' => '$unish_tmp',
84  'drush-conf' => array(),
85  'drush-alias-files' => array(
86  '/etc/drush/dev.alias.drushrc.php',
87  ),
88 )",
89  ),
90  array(
91  'name' => 'Status test - drush / key-value',
92  'command' => 'core-status',
93  'args' => array('drush'),
94  'options' => array(),
95  'format' => 'key-value',
96  'output_filter' => array('/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/' => '0.0-dev', '#/.*/etc/drush#' => '/etc/drush'),
97  'expected' => "Drush version : 0.0-dev
98  Drush temp directory : $unish_tmp
99  Drush configuration :
100  Drush alias files : /etc/drush/dev.alias.drushrc.php",
101  ),
102  /*
103  core-requirements is a little hard to test, because the
104  output can be quite variable
105 
106  array(
107  'name' => 'Requirements test - table',
108  'command' => 'core-requirements',
109  'args' => array(),
110  'format' => 'table',
111  'output_filter' => array(),
112  'expected' => "",
113  ),
114  */
115 // array(
116 // 'name' => 'pm-updatestatus - table',
117 // 'command' => 'pm-updatestatus',
118 // 'args' => array(),
119 // 'options' => array(),
120 // 'format' => 'table',
121 // 'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0', '/Update available/' => 'Up to date'),
122 // 'expected' => "Name Installed Version Proposed version Message
123 // Drupal 0.0 0.0 Up to date",
124 // ),
125  /*
126  pm-updatestatus --format=csv does not work.
127 
128  should filter out the items that do not need updating, and print just
129  the name of the projects that need updates
130 
131  array(
132  'name' => 'pm-updatestatus - csv',
133  'command' => 'pm-updatestatus',
134  'args' => array(),
135  'format' => 'csv',
136  'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0'),
137  'expected' => "",
138  ),
139  */
140 // updatestatus now omits projects that are up tp date. this test now needs work.
141 // array(
142 // 'name' => 'pm-updatestatus - csv',
143 // 'command' => 'pm-updatestatus',
144 // 'args' => array(),
145 // 'options' => array(),
146 // 'format' => 'csv',
147 // 'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0', '/Update available/' => 'Up to date'),
148 // 'expected' => "drupal,0.0,0.0,Up to date",
149 // ),
150  /*
151  pm-updatestatus --format=ini does not work
152 
153  array(
154  'name' => 'pm-updatestatus - ini',
155  'command' => 'pm-updatestatus',
156  'args' => array(),
157  'format' => 'ini',
158  'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0'),
159  'expected' => "",
160  ),
161  */
162 // array(
163 // 'name' => 'pm-updatestatus - ini-sections',
164 // 'command' => 'pm-updatestatus',
165 // 'args' => array(),
166 // 'format' => 'ini-sections',
167 // 'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0', '/Update available/' => 'Up to date'),
168 // 'expected' => "[drupal]
169 //short_name=drupal
170 //installed_version=0.0
171 //proposed_version=0.0
172 //message=Up to date",
173 // ),
174  /*
175  pm-updatestatus --format=key-value does not work
176 
177  array(
178  'name' => 'pm-updatestatus - key-value',
179  'command' => 'pm-updatestatus',
180  'args' => array(),
181  'options' => array(),
182  'format' => 'key-value',
183  'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0'),
184  'expected' => "",
185  ),
186  */
187 // array(
188 // 'name' => 'pm-updatestatus - key-value-list',
189 // 'command' => 'pm-updatestatus',
190 // 'args' => array(),
191 // 'options' => array(),
192 // 'format' => 'key-value-list',
193 // 'output_filter' => array('/[0-9]+\.[0-9]+/' => '0.0', '/Update available/' => 'Up to date'),
194 // 'expected' => "Name : Drupal
195 // Installed Version : 0.0
196 // Proposed version : 0.0
197 // Message : Up to date",
198 // ),
199  array(
200  'name' => 'pm-info - key-value-list',
201  'command' => 'pm-info',
202  'args' => array('devel'),
203  'options' => array('fields' => 'project,type,devel,description'),
204  'format' => 'key-value-list',
205  'output_filter' => array(),
206  'expected' => "Project : devel
207  Type : module
208  Description : Various blocks, pages, and functions for developers.",
209  ),
210  array(
211  'name' => 'pm-info - csv',
212  'command' => 'pm-info',
213  'args' => array('devel'),
214  'options' => array('fields' => 'project,type,devel,description'),
215  'format' => 'csv',
216  'expected' => "devel,module,\"Various blocks, pages, and functions for developers.\"",
217  ),
218  /*
219  pm-info --format=ini does not work.
220 
221  The output data could not be processed by the selected format 'string'.
222  Multiple rows provided where only one is allowed.
223 
224  array(
225  'name' => 'pm-info - ini',
226  'command' => 'pm-info',
227  'args' => array('devel'),
228  'options' => array('fields' => 'project,type,devel,description'),
229  'format' => 'ini',
230  'expected' => "",
231  ),
232  */
233 // array(
234 // 'name' => 'pm-info - ini-sections',
235 // 'command' => 'pm-info',
236 // 'args' => array('devel'),
237 // 'options' => array('fields' => 'project,type,devel,description'),
238 // 'format' => 'ini-sections',
239 // 'expected' => "[devel]
240 //project=devel
241 //type=module
242 //description=Various blocks, pages, and functions for developers.",
243 // ),
244  /*
245  pm-info --format=key-value does not respect --fields
246 
247  array(
248  'name' => 'pm-info - key-value',
249  'command' => 'pm-info',
250  'args' => array('devel'),
251  'options' => array('fields' => 'project,type,devel,description'),
252  'format' => 'key-value',
253  'expected' => "",
254  ),
255  */
256  array(
257  'name' => 'pm-info - table',
258  'command' => 'pm-info',
259  'args' => array('devel'),
260  'options' => array('fields' => 'project,type,description'),
261  'format' => 'table',
262  'output_filter' => array(),
263  'expected' => "Project Type Description
264  devel module Various blocks, pages, and functions for developers.",
265  ),
266 
267  // More commands that also support output formats:
268 
269  // pm-list
270  // queue-list
271  // cache-get
272  // config-get and config-list (D8 only)
273  // field-info
274  // php-eval
275  // role-list
276  // search-status
277  // site-alias
278  // user-information
279  // variable-get
280  // version
281  // watchdog-list
282  // watchdog-show
283 
284  );
285  }
286 }

File

doxygen/html/outputFormatTest_8php_source.html
View source
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Drush: tests/outputFormatTest.php Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Drush
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.2 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_59425e443f801f1f2fd8bbe4959a3ccf.html">tests</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">outputFormatTest.php</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;&lt;?php</div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">namespace </span>Unish;</div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> *   Tests for outputformat.drush.inc</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * @todo, Consider removing these tests now that we have outputFormatUnitCase.</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> *  @group slow</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *  @group base</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"><a class="code" href="classUnish_1_1outputFormatCase.html">   15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classUnish_1_1outputFormatCase.html">outputFormatCase</a> <span class="keyword">extends</span> <a class="code" href="classUnish_1_1CommandUnishTestCase.html">CommandUnishTestCase</a> {</div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * Test output formats using various Drush commands on a Drupal site.</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * Cannot use dataProvider since we want to share one setUpDrupal(),</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> **/</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="classUnish_1_1outputFormatCase.html#a803c82afcef09376b0cda262a57faaab">   22</a></span>&#160;  <span class="keyword">public</span> <span class="keyword">function</span> <a class="code" href="classUnish_1_1outputFormatCase.html#a803c82afcef09376b0cda262a57faaab">testOutputFormatWithDrupal</a>() {</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    $data = $this-&gt;getDataForDrupal();</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    $sites = $this-&gt;setUpDrupal(1, TRUE);</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    $site_options = array(</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;      <span class="stringliteral">&#39;root&#39;</span> =&gt; $this-&gt;webroot(),</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;      <span class="stringliteral">&#39;uri&#39;</span> =&gt; key($sites),</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    );</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    $this-&gt;drush(<span class="stringliteral">&#39;pm-download&#39;</span>, array(<span class="stringliteral">&#39;devel&#39;</span>), $site_options + array(<span class="stringliteral">&#39;cache&#39;</span> =&gt; NULL, <span class="stringliteral">&#39;skip&#39;</span> =&gt; TRUE));</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keywordflow">foreach</span> ($data as $row) {</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;      extract($row);</div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;      $name = $name . <span class="stringliteral">&quot;: &quot;</span>;</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;      <span class="comment">// We need to specify a fixed column width so that word wrapping does</span></div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;      <span class="comment">// not change our output contrary to our expectations when run in</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;      <span class="comment">// a narrow terminal window.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;      $env = array(</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="stringliteral">&#39;COLUMNS&#39;</span> =&gt; <span class="stringliteral">&#39;120&#39;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;      );</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;      $this-&gt;drush($command, $args, $site_options + $options + array(<span class="stringliteral">&#39;format&#39;</span> =&gt; $format), NULL, NULL, self::EXIT_SUCCESS, NULL, $env);</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;      $output = implode(<span class="stringliteral">&quot;\n&quot;</span>, $this-&gt;getOutputAsList()); <span class="comment">// note: we consider trailing eols insignificant</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;      <span class="comment">// If the Drupal command we are running might produce variable output,</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;      <span class="comment">// we can use one or more output filters to simplify the output down</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;      <span class="comment">// to an invariant form.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;      <span class="keywordflow">foreach</span> ($output_filter as $regex =&gt; $replacement) {</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        $output = preg_replace($regex, $replacement, $output);</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;      }</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;      $this-&gt;assertEquals($name . $expected, $name. $output);</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    }</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  }</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;  <span class="keyword">public</span> <span class="keyword">function</span> getDataForDrupal() {</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    $unish_tmp = UNISH_TMP; <span class="comment">// Need local variable.</span></div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordflow">return</span> array(</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;      array(</div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;Status test - drush version / list&#39;</span>,</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;core-status&#39;</span>,</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;drush version&#39;</span>),</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(),</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;list&#39;</span>,</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="stringliteral">&#39;output_filter&#39;</span> =&gt; array(<span class="stringliteral">&#39;/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/&#39;</span> =&gt; <span class="stringliteral">&#39;0.0-dev&#39;</span>),</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&#39;0.0-dev&#39;</span>,</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;      ),</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;Status test - drush / ini&#39;,</span></div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;core-status&#39;,</span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(&#39;drush&#39;),</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;ini&#39;,</span></div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">//        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/&#39; =&gt; &#39;0.0-dev&#39;, &#39;#/.*/etc/drush#&#39; =&gt; &#39;/etc/drush&#39;),</span></div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &#39;drush-version=0.0-dev</span></div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">//drush-conf=</span></div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">//drush-alias-files=/etc/drush/dev.alias.drushrc.php&#39;,</span></div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;      array(</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;Status test - drush / export&#39;</span>,</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;core-status&#39;</span>,</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;drush&#39;</span>),</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(),</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;var_export&#39;</span>,</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="stringliteral">&#39;output_filter&#39;</span> =&gt; array(<span class="stringliteral">&#39;/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/&#39;</span> =&gt; <span class="stringliteral">&#39;0.0-dev&#39;</span>, <span class="stringliteral">&#39;#/.*/etc/drush#&#39;</span> =&gt; <span class="stringliteral">&#39;/etc/drush&#39;</span>),</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&quot;array(</span></div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="stringliteral">  &#39;drush-version&#39; =&gt; &#39;0.0-dev&#39;,</span></div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="stringliteral">  &#39;drush-temp&#39; =&gt; &#39;$unish_tmp&#39;,</span></div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="stringliteral">  &#39;drush-conf&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="stringliteral">  &#39;drush-alias-files&#39; =&gt; array(</span></div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="stringliteral">    &#39;/etc/drush/dev.alias.drushrc.php&#39;,</span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="stringliteral">  ),</span></div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="stringliteral">)&quot;</span>,</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;      ),</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;      array(</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;Status test - drush / key-value&#39;</span>,</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;core-status&#39;</span>,</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;drush&#39;</span>),</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(),</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;key-value&#39;</span>,</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="stringliteral">&#39;output_filter&#39;</span> =&gt; array(<span class="stringliteral">&#39;/[0-9]+\.[0-9]+[a-zA-Z0-9-]*/&#39;</span> =&gt; <span class="stringliteral">&#39;0.0-dev&#39;</span>, <span class="stringliteral">&#39;#/.*/etc/drush#&#39;</span> =&gt; <span class="stringliteral">&#39;/etc/drush&#39;</span>),</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&quot;Drush version          :  0.0-dev</span></div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="stringliteral"> Drush temp directory   :  $unish_tmp</span></div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="stringliteral"> Drush configuration    :</span></div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="stringliteral"> Drush alias files      :  /etc/drush/dev.alias.drushrc.php&quot;</span>,</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;      ),</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment">        core-requirements is a little hard to test, because the</span></div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">        output can be quite variable</span></div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;Requirements test - table&#39;,</span></div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;core-requirements&#39;,</span></div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;table&#39;,</span></div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">        &#39;output_filter&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;pm-updatestatus - table&#39;,</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">//        &#39;options&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;table&#39;,</span></div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">//        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;, &#39;/Update available/&#39; =&gt; &#39;Up to date&#39;),</span></div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &quot;Name    Installed Version  Proposed version  Message</span></div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">// Drupal  0.0               0.0              Up to date&quot;,</span></div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">        pm-updatestatus --format=csv does not work.</span></div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">        should filter out the items that do not need updating, and print just</span></div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="comment">        the name of the projects that need updates</span></div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;pm-updatestatus - csv&#39;,</span></div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;csv&#39;,</span></div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;),</span></div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">// updatestatus now omits projects that are up tp date. this test now needs work.</span></div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;pm-updatestatus - csv&#39;,</span></div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">//        &#39;options&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;csv&#39;,</span></div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment">//        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;, &#39;/Update available/&#39; =&gt; &#39;Up to date&#39;),</span></div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &quot;drupal,0.0,0.0,Up to date&quot;,</span></div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="comment">        pm-updatestatus --format=ini does not work</span></div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;pm-updatestatus - ini&#39;,</span></div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;ini&#39;,</span></div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="comment">        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;),</span></div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;pm-updatestatus - ini-sections&#39;,</span></div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;ini-sections&#39;,</span></div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">//        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;, &#39;/Update available/&#39; =&gt; &#39;Up to date&#39;),</span></div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &quot;[drupal]</span></div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">//short_name=drupal</span></div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="comment">//installed_version=0.0</span></div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">//proposed_version=0.0</span></div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">//message=Up to date&quot;,</span></div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">        pm-updatestatus --format=key-value does not work</span></div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;pm-updatestatus - key-value&#39;,</span></div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">        &#39;options&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;key-value&#39;,</span></div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;),</span></div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;pm-updatestatus - key-value-list&#39;,</span></div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;pm-updatestatus&#39;,</span></div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">//        &#39;options&#39; =&gt; array(),</span></div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;key-value-list&#39;,</span></div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment">//        &#39;output_filter&#39; =&gt; array(&#39;/[0-9]+\.[0-9]+/&#39; =&gt; &#39;0.0&#39;, &#39;/Update available/&#39; =&gt; &#39;Up to date&#39;),</span></div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &quot;Name                :  Drupal</span></div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">// Installed Version   :  0.0</span></div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment">// Proposed version    :  0.0</span></div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">// Message             :  Up to date&quot;,</span></div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;      array(</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info - key-value-list&#39;</span>,</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info&#39;</span>,</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;devel&#39;</span>),</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(<span class="stringliteral">&#39;fields&#39;</span> =&gt; <span class="stringliteral">&#39;project,type,devel,description&#39;</span>),</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;key-value-list&#39;</span>,</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="stringliteral">&#39;output_filter&#39;</span> =&gt; array(),</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&quot;Project       :  devel</span></div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="stringliteral"> Type          :  module</span></div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="stringliteral"> Description   :  Various blocks, pages, and functions for developers.&quot;</span>,</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;      ),</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;      array(</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info - csv&#39;</span>,</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info&#39;</span>,</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;devel&#39;</span>),</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(<span class="stringliteral">&#39;fields&#39;</span> =&gt; <span class="stringliteral">&#39;project,type,devel,description&#39;</span>),</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;csv&#39;</span>,</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&quot;devel,module,\&quot;Various blocks, pages, and functions for developers.\&quot;&quot;</span>,</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;      ),</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="comment">         pm-info --format=ini does not work.</span></div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">         The output data could not be processed by the selected format &#39;string&#39;.</span></div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">         Multiple rows provided where only one is allowed.</span></div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;pm-info - ini&#39;,</span></div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;pm-info&#39;,</span></div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(&#39;devel&#39;),</span></div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="comment">        &#39;options&#39; =&gt; array(&#39;fields&#39; =&gt; &#39;project,type,devel,description&#39;),</span></div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;ini&#39;,</span></div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="comment">//      array(</span></div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="comment">//        &#39;name&#39; =&gt; &#39;pm-info - ini-sections&#39;,</span></div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">//        &#39;command&#39; =&gt; &#39;pm-info&#39;,</span></div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="comment">//        &#39;args&#39; =&gt; array(&#39;devel&#39;),</span></div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="comment">//        &#39;options&#39; =&gt; array(&#39;fields&#39; =&gt; &#39;project,type,devel,description&#39;),</span></div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="comment">//        &#39;format&#39; =&gt; &#39;ini-sections&#39;,</span></div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="comment">//        &#39;expected&#39; =&gt; &quot;[devel]</span></div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="comment">//project=devel</span></div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="comment">//type=module</span></div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="comment">//description=Various blocks, pages, and functions for developers.&quot;,</span></div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="comment">//      ),</span></div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;      <span class="comment">/*</span></div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">        pm-info --format=key-value does not respect --fields</span></div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">      array(</span></div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="comment">        &#39;name&#39; =&gt; &#39;pm-info - key-value&#39;,</span></div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="comment">        &#39;command&#39; =&gt; &#39;pm-info&#39;,</span></div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="comment">        &#39;args&#39; =&gt; array(&#39;devel&#39;),</span></div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="comment">        &#39;options&#39; =&gt; array(&#39;fields&#39; =&gt; &#39;project,type,devel,description&#39;),</span></div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="comment">        &#39;format&#39; =&gt; &#39;key-value&#39;,</span></div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="comment">        &#39;expected&#39; =&gt; &quot;&quot;,</span></div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="comment">      ),</span></div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="comment">      */</span></div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;      array(</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="stringliteral">&#39;name&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info - table&#39;</span>,</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        <span class="stringliteral">&#39;command&#39;</span> =&gt; <span class="stringliteral">&#39;pm-info&#39;</span>,</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        <span class="stringliteral">&#39;args&#39;</span> =&gt; array(<span class="stringliteral">&#39;devel&#39;</span>),</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <span class="stringliteral">&#39;options&#39;</span> =&gt; array(<span class="stringliteral">&#39;fields&#39;</span> =&gt; <span class="stringliteral">&#39;project,type,description&#39;</span>),</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="stringliteral">&#39;format&#39;</span> =&gt; <span class="stringliteral">&#39;table&#39;</span>,</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="stringliteral">&#39;output_filter&#39;</span> =&gt; array(),</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="stringliteral">&#39;expected&#39;</span> =&gt; <span class="stringliteral">&quot;Project  Type    Description</span></div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="stringliteral"> devel    module  Various blocks, pages, and functions for developers.&quot;</span>,</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;      ),</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;      <span class="comment">// More commands that also support output formats:</span></div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;      <span class="comment">// pm-list</span></div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;      <span class="comment">// queue-list</span></div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;      <span class="comment">// cache-get</span></div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;      <span class="comment">// config-get and config-list (D8 only)</span></div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;      <span class="comment">// field-info</span></div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;      <span class="comment">// php-eval</span></div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;      <span class="comment">// role-list</span></div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;      <span class="comment">// search-status</span></div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;      <span class="comment">// site-alias</span></div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;      <span class="comment">// user-information</span></div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;      <span class="comment">// variable-get</span></div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;      <span class="comment">// version</span></div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;      <span class="comment">// watchdog-list</span></div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;      <span class="comment">// watchdog-show</span></div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    );</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;  }</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Oct 8 2014 09:04:54 for Drush by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.2
</small></address>
</body>
</html>