arg.js.html 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <title>Code coverage report for coa/lib/arg.js</title>
  5. <meta charset="utf-8" />
  6. <link rel="stylesheet" href="../../prettify.css" />
  7. <link rel="stylesheet" href="../../base.css" />
  8. <meta name="viewport" content="width=device-width, initial-scale=1">
  9. <style type='text/css'>
  10. .coverage-summary .sorter {
  11. background-image: url(../../sort-arrow-sprite.png);
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <div class='wrapper'>
  17. <div class='pad1'>
  18. <h1>
  19. <a href="../../index.html">All files</a> / <a href="index.html">coa/lib</a> arg.js
  20. </h1>
  21. <div class='clearfix'>
  22. <div class='fl pad1y space-right2'>
  23. <span class="strong">100% </span>
  24. <span class="quiet">Statements</span>
  25. <span class='fraction'>16/16</span>
  26. </div>
  27. <div class='fl pad1y space-right2'>
  28. <span class="strong">87.5% </span>
  29. <span class="quiet">Branches</span>
  30. <span class='fraction'>7/8</span>
  31. </div>
  32. <div class='fl pad1y space-right2'>
  33. <span class="strong">100% </span>
  34. <span class="quiet">Functions</span>
  35. <span class='fraction'>6/6</span>
  36. </div>
  37. <div class='fl pad1y space-right2'>
  38. <span class="strong">100% </span>
  39. <span class="quiet">Lines</span>
  40. <span class='fraction'>16/16</span>
  41. </div>
  42. </div>
  43. </div>
  44. <div class='status-line high'></div>
  45. <pre><table class="coverage">
  46. <tr><td class="line-count quiet">1
  47. 2
  48. 3
  49. 4
  50. 5
  51. 6
  52. 7
  53. 8
  54. 9
  55. 10
  56. 11
  57. 12
  58. 13
  59. 14
  60. 15
  61. 16
  62. 17
  63. 18
  64. 19
  65. 20
  66. 21
  67. 22
  68. 23
  69. 24
  70. 25
  71. 26
  72. 27
  73. 28
  74. 29
  75. 30
  76. 31
  77. 32
  78. 33
  79. 34
  80. 35
  81. 36
  82. 37
  83. 38
  84. 39
  85. 40
  86. 41
  87. 42
  88. 43
  89. 44
  90. 45
  91. 46
  92. 47
  93. 48
  94. 49
  95. 50
  96. 51
  97. 52
  98. 53
  99. 54
  100. 55
  101. 56
  102. 57
  103. 58
  104. 59</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
  105. <span class="cline-any cline-neutral">&nbsp;</span>
  106. <span class="cline-any cline-neutral">&nbsp;</span>
  107. <span class="cline-any cline-yes">1x</span>
  108. <span class="cline-any cline-yes">1x</span>
  109. <span class="cline-any cline-neutral">&nbsp;</span>
  110. <span class="cline-any cline-neutral">&nbsp;</span>
  111. <span class="cline-any cline-neutral">&nbsp;</span>
  112. <span class="cline-any cline-neutral">&nbsp;</span>
  113. <span class="cline-any cline-neutral">&nbsp;</span>
  114. <span class="cline-any cline-neutral">&nbsp;</span>
  115. <span class="cline-any cline-neutral">&nbsp;</span>
  116. <span class="cline-any cline-neutral">&nbsp;</span>
  117. <span class="cline-any cline-neutral">&nbsp;</span>
  118. <span class="cline-any cline-yes">1x</span>
  119. <span class="cline-any cline-neutral">&nbsp;</span>
  120. <span class="cline-any cline-neutral">&nbsp;</span>
  121. <span class="cline-any cline-neutral">&nbsp;</span>
  122. <span class="cline-any cline-neutral">&nbsp;</span>
  123. <span class="cline-any cline-neutral">&nbsp;</span>
  124. <span class="cline-any cline-yes">16x</span>
  125. <span class="cline-any cline-neutral">&nbsp;</span>
  126. <span class="cline-any cline-yes">16x</span>
  127. <span class="cline-any cline-neutral">&nbsp;</span>
  128. <span class="cline-any cline-neutral">&nbsp;</span>
  129. <span class="cline-any cline-neutral">&nbsp;</span>
  130. <span class="cline-any cline-yes">31x</span>
  131. <span class="cline-any cline-neutral">&nbsp;</span>
  132. <span class="cline-any cline-yes">31x</span>
  133. <span class="cline-any cline-yes">31x</span>
  134. <span class="cline-any cline-neutral">&nbsp;</span>
  135. <span class="cline-any cline-neutral">&nbsp;</span>
  136. <span class="cline-any cline-neutral">&nbsp;</span>
  137. <span class="cline-any cline-yes">31x</span>
  138. <span class="cline-any cline-neutral">&nbsp;</span>
  139. <span class="cline-any cline-neutral">&nbsp;</span>
  140. <span class="cline-any cline-neutral">&nbsp;</span>
  141. <span class="cline-any cline-yes">28x</span>
  142. <span class="cline-any cline-neutral">&nbsp;</span>
  143. <span class="cline-any cline-neutral">&nbsp;</span>
  144. <span class="cline-any cline-neutral">&nbsp;</span>
  145. <span class="cline-any cline-yes">2x</span>
  146. <span class="cline-any cline-neutral">&nbsp;</span>
  147. <span class="cline-any cline-neutral">&nbsp;</span>
  148. <span class="cline-any cline-neutral">&nbsp;</span>
  149. <span class="cline-any cline-yes">1x</span>
  150. <span class="cline-any cline-neutral">&nbsp;</span>
  151. <span class="cline-any cline-yes">1x</span>
  152. <span class="cline-any cline-neutral">&nbsp;</span>
  153. <span class="cline-any cline-yes">1x</span>
  154. <span class="cline-any cline-neutral">&nbsp;</span>
  155. <span class="cline-any cline-yes">1x</span>
  156. <span class="cline-any cline-neutral">&nbsp;</span>
  157. <span class="cline-any cline-neutral">&nbsp;</span>
  158. <span class="cline-any cline-neutral">&nbsp;</span>
  159. <span class="cline-any cline-yes">1x</span>
  160. <span class="cline-any cline-neutral">&nbsp;</span>
  161. <span class="cline-any cline-neutral">&nbsp;</span>
  162. <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">'use strict';
  163. &nbsp;
  164. const
  165. CoaParam = require('./coaparam'),
  166. Color = require('./color');
  167. &nbsp;
  168. /**
  169. * Argument
  170. *
  171. * Unnamed entity. From command line arguments passed as list of unnamed values.
  172. *
  173. * @class Arg
  174. * @extends CoaParam
  175. */
  176. module.exports = class Arg extends CoaParam {
  177. /**
  178. * @constructs
  179. * @param {COA.Cmd} cmd - parent command
  180. */
  181. constructor(cmd) {
  182. super(cmd);
  183. &nbsp;
  184. this._cmd._args.push(this);
  185. }
  186. &nbsp;
  187. _saveVal(args, val) {
  188. this._val &amp;&amp; (<span class="branch-1 cbranch-no" title="branch not covered" >val = this._val(val))</span>;
  189. &nbsp;
  190. const name = this._name;
  191. this._arr
  192. ? (args[name] || (args[name] = [])).push(val)
  193. : (args[name] = val);
  194. &nbsp;
  195. return val;
  196. }
  197. &nbsp;
  198. _parse(arg, args) {
  199. return this._saveVal(args, arg);
  200. }
  201. &nbsp;
  202. _checkParsed(opts, args) {
  203. return !args.hasOwnProperty(this._name);
  204. }
  205. &nbsp;
  206. _usage() {
  207. const res = [];
  208. &nbsp;
  209. res.push(Color('lpurple', this._name.toUpperCase()), ' : ', this._title);
  210. &nbsp;
  211. this._req &amp;&amp; res.push(' ', Color('lred', '(required)'));
  212. &nbsp;
  213. return res.join('');
  214. }
  215. &nbsp;
  216. _requiredText() {
  217. return `Missing required argument:\n ${this._usage()}`;
  218. }
  219. };
  220. &nbsp;</pre></td></tr>
  221. </table></pre>
  222. <div class='push'></div><!-- for sticky footer -->
  223. </div><!-- /wrapper -->
  224. <div class='footer quiet pad2 space-top1 center small'>
  225. Code coverage
  226. generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Fri Feb 17 2017 22:25:28 GMT+0300 (MSK)
  227. </div>
  228. </div>
  229. <script src="../../prettify.js"></script>
  230. <script>
  231. window.onload = function () {
  232. if (typeof prettyPrint === 'function') {
  233. prettyPrint();
  234. }
  235. };
  236. </script>
  237. <script src="../../sorter.js"></script>
  238. </body>
  239. </html>