UNPKG

mermaid

Version:

Markdownish syntax for generating flowcharts, sequence diagrams and gantt charts.

188 lines (161 loc) 18.6 kB
<!DOCTYPE html> <html> <head> <title>ConsoleReporter.js</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="../../../../doc-style.css" /> <script src="../../../../doc-filelist.js"></script> <script> var relativeDir = "../../../../", thisFile = "Users/knut/Documents/source/mermaid/bower_components/jasmine/src/console/ConsoleReporter.js", defaultSidebar = true; </script> <script src="../../../../doc-script.js"></script> <script src="../../../../mermaid.js"></script> <link rel="stylesheet" href="../../../../mermaid.css" /> </head> <body> <div id="sidebar_wrapper"> <div id="sidebar_switch"> <span class="tree">Files</span> <span class="headings">Headings</span> </div> <div id="tree"></div> <div id="headings"> <div class="heading h1"> <a href="#ConsoleReporter.js">ConsoleReporter.js</a> </div> </div> </div> <div id="sidebar-toggle"></div> <div id="container"><div class="background highlight"></div> <table cellpadding="0" cellspacing="0"> <tbody> <tr> <td class="docs"> <div class="pilwrap" id="ConsoleReporter.js"> <h1> <a href="#ConsoleReporter.js" name="ConsoleReporter.js" class="pilcrow">&#182;</a>ConsoleReporter.js </h1> </div> </td> <td class="code highlight"></td> </tr> <tr> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1" id="section-1">&#182;</a> </div> </td> <td class="code highlight"><div class="highlight"><pre><span class="nx">getJasmineRequireObj</span><span class="p">().</span><span class="nx">ConsoleReporter</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span> <span class="kd">var</span> <span class="nx">noopTimer</span> <span class="o">=</span> <span class="p">{</span> <span class="nx">start</span><span class="o">:</span> <span class="kd">function</span><span class="p">(){},</span> <span class="nx">elapsed</span><span class="o">:</span> <span class="kd">function</span><span class="p">(){</span> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> <span class="p">}</span> <span class="p">};</span> <span class="kd">function</span> <span class="nx">ConsoleReporter</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span> <span class="p">{</span> <span class="kd">var</span> <span class="nx">print</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">print</span><span class="p">,</span> <span class="nx">showColors</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">showColors</span> <span class="o">||</span> <span class="kc">false</span><span class="p">,</span> <span class="nx">onComplete</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">onComplete</span> <span class="o">||</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{},</span> <span class="nx">timer</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">timer</span> <span class="o">||</span> <span class="nx">noopTimer</span><span class="p">,</span> <span class="nx">specCount</span><span class="p">,</span> <span class="nx">failureCount</span><span class="p">,</span> <span class="nx">failedSpecs</span> <span class="o">=</span> <span class="p">[],</span> <span class="nx">pendingCount</span><span class="p">,</span> <span class="nx">ansi</span> <span class="o">=</span> <span class="p">{</span> <span class="nx">green</span><span class="o">:</span> <span class="s1">&#39;\x1B[32m&#39;</span><span class="p">,</span> <span class="nx">red</span><span class="o">:</span> <span class="s1">&#39;\x1B[31m&#39;</span><span class="p">,</span> <span class="nx">yellow</span><span class="o">:</span> <span class="s1">&#39;\x1B[33m&#39;</span><span class="p">,</span> <span class="nx">none</span><span class="o">:</span> <span class="s1">&#39;\x1B[0m&#39;</span> <span class="p">};</span> <span class="k">this</span><span class="p">.</span><span class="nx">jasmineStarted</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span> <span class="nx">specCount</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">failureCount</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">pendingCount</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">print</span><span class="p">(</span><span class="s1">&#39;Started&#39;</span><span class="p">);</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="nx">timer</span><span class="p">.</span><span class="nx">start</span><span class="p">();</span> <span class="p">};</span> <span class="k">this</span><span class="p">.</span><span class="nx">jasmineDone</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">failedSpecs</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> <span class="nx">specFailureDetails</span><span class="p">(</span><span class="nx">failedSpecs</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span> <span class="p">}</span> <span class="k">if</span><span class="p">(</span><span class="nx">specCount</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="kd">var</span> <span class="nx">specCounts</span> <span class="o">=</span> <span class="nx">specCount</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">plural</span><span class="p">(</span><span class="s1">&#39;spec&#39;</span><span class="p">,</span> <span class="nx">specCount</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;, &#39;</span> <span class="o">+</span> <span class="nx">failureCount</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">plural</span><span class="p">(</span><span class="s1">&#39;failure&#39;</span><span class="p">,</span> <span class="nx">failureCount</span><span class="p">);</span> <span class="k">if</span> <span class="p">(</span><span class="nx">pendingCount</span><span class="p">)</span> <span class="p">{</span> <span class="nx">specCounts</span> <span class="o">+=</span> <span class="s1">&#39;, &#39;</span> <span class="o">+</span> <span class="nx">pendingCount</span> <span class="o">+</span> <span class="s1">&#39; pending &#39;</span> <span class="o">+</span> <span class="nx">plural</span><span class="p">(</span><span class="s1">&#39;spec&#39;</span><span class="p">,</span> <span class="nx">pendingCount</span><span class="p">);</span> <span class="p">}</span> <span class="nx">print</span><span class="p">(</span><span class="nx">specCounts</span><span class="p">);</span> <span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="nx">print</span><span class="p">(</span><span class="s1">&#39;No specs found&#39;</span><span class="p">);</span> <span class="p">}</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="kd">var</span> <span class="nx">seconds</span> <span class="o">=</span> <span class="nx">timer</span><span class="p">.</span><span class="nx">elapsed</span><span class="p">()</span> <span class="o">/</span> <span class="mi">1000</span><span class="p">;</span> <span class="nx">print</span><span class="p">(</span><span class="s1">&#39;Finished in &#39;</span> <span class="o">+</span> <span class="nx">seconds</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">plural</span><span class="p">(</span><span class="s1">&#39;second&#39;</span><span class="p">,</span> <span class="nx">seconds</span><span class="p">));</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="nx">onComplete</span><span class="p">(</span><span class="nx">failureCount</span> <span class="o">===</span> <span class="mi">0</span><span class="p">);</span> <span class="p">};</span> <span class="k">this</span><span class="p">.</span><span class="nx">specDone</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">result</span><span class="p">)</span> <span class="p">{</span> <span class="nx">specCount</span><span class="o">++</span><span class="p">;</span> <span class="k">if</span> <span class="p">(</span><span class="nx">result</span><span class="p">.</span><span class="nx">status</span> <span class="o">==</span> <span class="s1">&#39;pending&#39;</span><span class="p">)</span> <span class="p">{</span> <span class="nx">pendingCount</span><span class="o">++</span><span class="p">;</span> <span class="nx">print</span><span class="p">(</span><span class="nx">colored</span><span class="p">(</span><span class="s1">&#39;yellow&#39;</span><span class="p">,</span> <span class="s1">&#39;*&#39;</span><span class="p">));</span> <span class="k">return</span><span class="p">;</span> <span class="p">}</span> <span class="k">if</span> <span class="p">(</span><span class="nx">result</span><span class="p">.</span><span class="nx">status</span> <span class="o">==</span> <span class="s1">&#39;passed&#39;</span><span class="p">)</span> <span class="p">{</span> <span class="nx">print</span><span class="p">(</span><span class="nx">colored</span><span class="p">(</span><span class="s1">&#39;green&#39;</span><span class="p">,</span> <span class="s1">&#39;.&#39;</span><span class="p">));</span> <span class="k">return</span><span class="p">;</span> <span class="p">}</span> <span class="k">if</span> <span class="p">(</span><span class="nx">result</span><span class="p">.</span><span class="nx">status</span> <span class="o">==</span> <span class="s1">&#39;failed&#39;</span><span class="p">)</span> <span class="p">{</span> <span class="nx">failureCount</span><span class="o">++</span><span class="p">;</span> <span class="nx">failedSpecs</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">result</span><span class="p">);</span> <span class="nx">print</span><span class="p">(</span><span class="nx">colored</span><span class="p">(</span><span class="s1">&#39;red&#39;</span><span class="p">,</span> <span class="s1">&#39;F&#39;</span><span class="p">));</span> <span class="p">}</span> <span class="p">};</span> <span class="k">return</span> <span class="k">this</span><span class="p">;</span> <span class="kd">function</span> <span class="nx">printNewline</span><span class="p">()</span> <span class="p">{</span> <span class="nx">print</span><span class="p">(</span><span class="s1">&#39;\n&#39;</span><span class="p">);</span> <span class="p">}</span> <span class="kd">function</span> <span class="nx">colored</span><span class="p">(</span><span class="nx">color</span><span class="p">,</span> <span class="nx">str</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">showColors</span> <span class="o">?</span> <span class="p">(</span><span class="nx">ansi</span><span class="p">[</span><span class="nx">color</span><span class="p">]</span> <span class="o">+</span> <span class="nx">str</span> <span class="o">+</span> <span class="nx">ansi</span><span class="p">.</span><span class="nx">none</span><span class="p">)</span> <span class="o">:</span> <span class="nx">str</span><span class="p">;</span> <span class="p">}</span> <span class="kd">function</span> <span class="nx">plural</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">count</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">count</span> <span class="o">==</span> <span class="mi">1</span> <span class="o">?</span> <span class="nx">str</span> <span class="o">:</span> <span class="nx">str</span> <span class="o">+</span> <span class="s1">&#39;s&#39;</span><span class="p">;</span> <span class="p">}</span> <span class="kd">function</span> <span class="nx">repeat</span><span class="p">(</span><span class="nx">thing</span><span class="p">,</span> <span class="nx">times</span><span class="p">)</span> <span class="p">{</span> <span class="kd">var</span> <span class="nx">arr</span> <span class="o">=</span> <span class="p">[];</span> <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">times</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> <span class="nx">arr</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">thing</span><span class="p">);</span> <span class="p">}</span> <span class="k">return</span> <span class="nx">arr</span><span class="p">;</span> <span class="p">}</span> <span class="kd">function</span> <span class="nx">indent</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">spaces</span><span class="p">)</span> <span class="p">{</span> <span class="kd">var</span> <span class="nx">lines</span> <span class="o">=</span> <span class="p">(</span><span class="nx">str</span> <span class="o">||</span> <span class="s1">&#39;&#39;</span><span class="p">).</span><span class="nx">split</span><span class="p">(</span><span class="s1">&#39;\n&#39;</span><span class="p">);</span> <span class="kd">var</span> <span class="nx">newArr</span> <span class="o">=</span> <span class="p">[];</span> <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">lines</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> <span class="nx">newArr</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">repeat</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">,</span> <span class="nx">spaces</span><span class="p">).</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="nx">lines</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span> <span class="p">}</span> <span class="k">return</span> <span class="nx">newArr</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;\n&#39;</span><span class="p">);</span> <span class="p">}</span> <span class="kd">function</span> <span class="nx">specFailureDetails</span><span class="p">(</span><span class="nx">result</span><span class="p">)</span> <span class="p">{</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="nx">print</span><span class="p">(</span><span class="nx">result</span><span class="p">.</span><span class="nx">fullName</span><span class="p">);</span> <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">result</span><span class="p">.</span><span class="nx">failedExpectations</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> <span class="kd">var</span> <span class="nx">failedExpectation</span> <span class="o">=</span> <span class="nx">result</span><span class="p">.</span><span class="nx">failedExpectations</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="nx">print</span><span class="p">(</span><span class="nx">indent</span><span class="p">(</span><span class="nx">failedExpectation</span><span class="p">.</span><span class="nx">message</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span> <span class="nx">print</span><span class="p">(</span><span class="nx">indent</span><span class="p">(</span><span class="nx">failedExpectation</span><span class="p">.</span><span class="nx">stack</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span> <span class="p">}</span> <span class="nx">printNewline</span><span class="p">();</span> <span class="p">}</span> <span class="p">}</span> <span class="k">return</span> <span class="nx">ConsoleReporter</span><span class="p">;</span> <span class="p">};</span> </pre></div> </td> </tr> </tbody> </table> </div> </body> </html>