ninjs 0.13.1 → 0.13.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. data/Gemfile +1 -3
  2. data/Gemfile.lock +1 -67
  3. data/README.md +348 -0
  4. data/Rakefile +2 -4
  5. data/VERSION +1 -1
  6. data/bin/ninjs +196 -39
  7. data/lib/ninjs/command.rb +23 -64
  8. data/lib/ninjs/configuration.rb +16 -38
  9. data/lib/ninjs/generator.rb +23 -12
  10. data/lib/ninjs/project.rb +7 -6
  11. data/ninjs.gemspec +9 -33
  12. data/repository/ninjs/core/module.js +32 -105
  13. data/repository/ninjs/docs/Data/ClassHierarchy.nd +0 -0
  14. data/repository/ninjs/docs/Data/ConfigFileInfo.nd +0 -0
  15. data/repository/ninjs/docs/Data/IndexInfo.nd +0 -0
  16. data/repository/ninjs/docs/Data/SymbolTable.nd +0 -0
  17. data/repository/ninjs/extensions/ninjs.jquery.js +67 -0
  18. metadata +74 -100
  19. data/README.textile +0 -287
  20. data/tmp/metric_fu/output/churn.html +0 -692
  21. data/tmp/metric_fu/output/flay.html +0 -566
  22. data/tmp/metric_fu/output/flay.js +0 -11
  23. data/tmp/metric_fu/output/flog.html +0 -2392
  24. data/tmp/metric_fu/output/flog.js +0 -12
  25. data/tmp/metric_fu/output/hotspots.html +0 -3607
  26. data/tmp/metric_fu/output/index.html +0 -572
  27. data/tmp/metric_fu/output/lib_ninjs.rb.html +0 -49
  28. data/tmp/metric_fu/output/lib_ninjs_command.rb.html +0 -137
  29. data/tmp/metric_fu/output/lib_ninjs_configuration.rb.html +0 -107
  30. data/tmp/metric_fu/output/lib_ninjs_project.rb.html +0 -236
  31. data/tmp/metric_fu/output/rcov.html +0 -566
  32. data/tmp/metric_fu/output/rcov.js +0 -11
  33. data/tmp/metric_fu/output/reek.html +0 -1294
  34. data/tmp/metric_fu/output/reek.js +0 -20
  35. data/tmp/metric_fu/output/roodi.html +0 -599
  36. data/tmp/metric_fu/output/roodi.js +0 -11
  37. data/tmp/metric_fu/report.yml +0 -1548
@@ -1,49 +0,0 @@
1
- <html><head><style>table { background: #fff; color: #000; }
2
- .ruby .normal { color: #000; }
3
- .ruby .comment { color: #005; font-style: italic; }
4
- .ruby .keyword { color: #A44; font-weight: bold; }
5
- .ruby .method { color: #44f; }
6
- .ruby .class { color: #b1713d; }
7
- .ruby .module { color: #050; }
8
- .ruby .punct { color: #668; font-weight: bold; }
9
- .ruby .symbol { color: #00f; }
10
- .ruby .string { color: #4a4; }
11
- .ruby .char { color: #F07; }
12
- .ruby .ident { color: #000; }
13
- .ruby .constant { color: #b1713d; }
14
- .ruby .regex { color: #B66; background: #FEF; }
15
- .ruby .number { color: #F99; }
16
- .ruby .attribute { color: #f84; }
17
- .ruby .global { color: #7FB; }
18
- .ruby .expr { color: #227; }
19
- .ruby .escape { color: #277; }</style></head><body><table cellpadding='0' cellspacing='0' class='ruby'><tr><td valign='top'><small>1</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line1'><pre><span class="keyword">module </span><span class="module">Ninjs</span>
20
- </pre></a></td></tr><tr><td valign='top'><small>2</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line2'><pre> <span class="keyword">def </span><span class="method">version</span>
21
- </pre></a></td></tr><tr><td valign='top'><small>3</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line3'><pre> <span class="punct">'</span><span class="string">0.10.1</span><span class="punct">'</span>
22
- </pre></a></td></tr><tr><td valign='top'><small>4</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line4'><pre> <span class="keyword">end</span>
23
- </pre></a></td></tr><tr><td valign='top'><small>5</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line5'><pre>
24
- </pre></a></td></tr><tr><td valign='top'><small>6</small></td><td valign='top'><ul><li>Score of 4.50 &raquo; flog</li></ul></td><td valign='top'><a name='line6'><pre> <span class="keyword">def </span><span class="method">base_directory</span>
25
- </pre></a></td></tr><tr><td valign='top'><small>7</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line7'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">expand_path</span><span class="punct">(</span><span class="constant">File</span><span class="punct">.</span><span class="ident">join</span><span class="punct">(</span><span class="constant">File</span><span class="punct">.</span><span class="ident">dirname</span><span class="punct">(</span><span class="constant">__FILE__</span><span class="punct">),</span> <span class="punct">'</span><span class="string">..</span><span class="punct">'))</span>
26
- </pre></a></td></tr><tr><td valign='top'><small>8</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line8'><pre> <span class="keyword">end</span>
27
- </pre></a></td></tr><tr><td valign='top'><small>9</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line9'><pre>
28
- </pre></a></td></tr><tr><td valign='top'><small>10</small></td><td valign='top'><ul><li>Score of 4.50 &raquo; flog</li></ul></td><td valign='top'><a name='line10'><pre> <span class="keyword">def </span><span class="method">lib_directory</span>
29
- </pre></a></td></tr><tr><td valign='top'><small>11</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line11'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">expand_path</span><span class="punct">(</span><span class="constant">File</span><span class="punct">.</span><span class="ident">join</span><span class="punct">(</span><span class="constant">File</span><span class="punct">.</span><span class="ident">dirname</span><span class="punct">(</span><span class="constant">__FILE__</span><span class="punct">)))</span>
30
- </pre></a></td></tr><tr><td valign='top'><small>12</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line12'><pre> <span class="keyword">end</span>
31
- </pre></a></td></tr><tr><td valign='top'><small>13</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line13'><pre>
32
- </pre></a></td></tr><tr><td valign='top'><small>14</small></td><td valign='top'><ul><li>Score of 1.30 &raquo; flog</li></ul></td><td valign='top'><a name='line14'><pre> <span class="keyword">def </span><span class="method">root_directory</span>
33
- </pre></a></td></tr><tr><td valign='top'><small>15</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line15'><pre> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">getwd</span>
34
- </pre></a></td></tr><tr><td valign='top'><small>16</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line16'><pre> <span class="keyword">end</span>
35
- </pre></a></td></tr><tr><td valign='top'><small>17</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line17'><pre>
36
- </pre></a></td></tr><tr><td valign='top'><small>18</small></td><td valign='top'><ul><li>Score of 2.80 &raquo; flog</li></ul></td><td valign='top'><a name='line18'><pre> <span class="keyword">def </span><span class="method">repository_root</span>
37
- </pre></a></td></tr><tr><td valign='top'><small>19</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line19'><pre> <span class="ident">base_directory</span> <span class="punct">+</span> <span class="punct">'</span><span class="string">/repository/</span><span class="punct">'</span>
38
- </pre></a></td></tr><tr><td valign='top'><small>20</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line20'><pre> <span class="keyword">end</span>
39
- </pre></a></td></tr><tr><td valign='top'><small>21</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line21'><pre>
40
- </pre></a></td></tr><tr><td valign='top'><small>22</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line22'><pre> <span class="ident">module_function</span> <span class="symbol">:version</span><span class="punct">,</span>
41
- </pre></a></td></tr><tr><td valign='top'><small>23</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line23'><pre> <span class="symbol">:base_directory</span><span class="punct">,</span>
42
- </pre></a></td></tr><tr><td valign='top'><small>24</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line24'><pre> <span class="symbol">:lib_directory</span><span class="punct">,</span>
43
- </pre></a></td></tr><tr><td valign='top'><small>25</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line25'><pre> <span class="symbol">:root_directory</span><span class="punct">,</span>
44
- </pre></a></td></tr><tr><td valign='top'><small>26</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line26'><pre> <span class="symbol">:repository_root</span>
45
- </pre></a></td></tr><tr><td valign='top'><small>27</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line27'><pre><span class="keyword">end</span>
46
- </pre></a></td></tr><tr><td valign='top'><small>28</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line28'><pre>
47
- </pre></a></td></tr><tr><td valign='top'><small>29</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line29'><pre><span class="punct">%w(</span><span class="string">dependencies configuration helpers manifest project command</span><span class="punct">).</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">lib</span><span class="punct">|</span>
48
- </pre></a></td></tr><tr><td valign='top'><small>30</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line30'><pre> <span class="ident">require</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.lib_directory}</span>/ninjs/<span class="expr">#{lib}</span></span><span class="punct">&quot;</span>
49
- </pre></a></td></tr><tr><td valign='top'><small>31</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line31'><pre><span class="keyword">end</span></pre></a></td></tr><table></body></html>
@@ -1,137 +0,0 @@
1
- <html><head><style>table { background: #fff; color: #000; }
2
- .ruby .normal { color: #000; }
3
- .ruby .comment { color: #005; font-style: italic; }
4
- .ruby .keyword { color: #A44; font-weight: bold; }
5
- .ruby .method { color: #44f; }
6
- .ruby .class { color: #b1713d; }
7
- .ruby .module { color: #050; }
8
- .ruby .punct { color: #668; font-weight: bold; }
9
- .ruby .symbol { color: #00f; }
10
- .ruby .string { color: #4a4; }
11
- .ruby .char { color: #F07; }
12
- .ruby .ident { color: #000; }
13
- .ruby .constant { color: #b1713d; }
14
- .ruby .regex { color: #B66; background: #FEF; }
15
- .ruby .number { color: #F99; }
16
- .ruby .attribute { color: #f84; }
17
- .ruby .global { color: #7FB; }
18
- .ruby .expr { color: #227; }
19
- .ruby .escape { color: #277; }</style></head><body><table cellpadding='0' cellspacing='0' class='ruby'><tr><td valign='top'><small>1</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line1'><pre><span class="keyword">module </span><span class="module">Ninjs</span>
20
- </pre></a></td></tr><tr><td valign='top'><small>2</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line2'><pre> <span class="keyword">module </span><span class="module">Command</span>
21
- </pre></a></td></tr><tr><td valign='top'><small>3</small></td><td valign='top'><ul><li>Score of 43.29 &raquo; flog</li><li>Method "watch" has 39 lines. It should have 20 or less. &raquo; roodi</li></ul></td><td valign='top'><a name='line3'><pre> <span class="keyword">def </span><span class="method">watch</span>
22
- </pre></a></td></tr><tr><td valign='top'><small>4</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line4'><pre> <span class="ident">require</span> <span class="punct">&quot;</span><span class="string">fssm</span><span class="punct">&quot;</span>
23
- </pre></a></td></tr><tr><td valign='top'><small>5</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line5'><pre> <span class="ident">project_path</span> <span class="punct">=</span> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">getwd</span> <span class="punct">&lt;&lt;</span> <span class="punct">'</span><span class="string">/</span><span class="punct">'</span>
24
- </pre></a></td></tr><tr><td valign='top'><small>6</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line6'><pre> <span class="keyword">raise</span> <span class="punct">&quot;</span><span class="string">ninjs.conf was not located in <span class="expr">#{project_path}</span></span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>ninjs.conf</span><span class="punct">&quot;</span>
25
- </pre></a></td></tr><tr><td valign='top'><small>7</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line7'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[32m&gt;&gt;&gt;<span class="escape">\e</span>[0m Ninjs are watching for changes. Press Ctrl-C to stop.</span><span class="punct">&quot;</span>
26
- </pre></a></td></tr><tr><td valign='top'><small>8</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line8'><pre> <span class="ident">project</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Project</span><span class="punct">.</span><span class="ident">new</span>
27
- </pre></a></td></tr><tr><td valign='top'><small>9</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line9'><pre> <span class="ident">project</span><span class="punct">.</span><span class="ident">update</span>
28
- </pre></a></td></tr><tr><td valign='top'><small>10</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line10'><pre>
29
- </pre></a></td></tr><tr><td valign='top'><small>11</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line11'><pre> <span class="ident">watch_dirs</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Manifest</span><span class="punct">.</span><span class="ident">directories</span><span class="punct">.</span><span class="ident">reject</span> <span class="punct">{</span> <span class="punct">|</span><span class="ident">dir</span><span class="punct">|</span> <span class="ident">dir</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">application|tests</span><span class="punct">/)</span> <span class="punct">}</span>
30
- </pre></a></td></tr><tr><td valign='top'><small>12</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line12'><pre> <span class="ident">watch_hash</span> <span class="punct">=</span> <span class="constant">Hash</span><span class="punct">.</span><span class="ident">new</span>
31
- </pre></a></td></tr><tr><td valign='top'><small>13</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line13'><pre>
32
- </pre></a></td></tr><tr><td valign='top'><small>14</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line14'><pre> <span class="ident">watch_dirs</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">dir</span><span class="punct">|</span>
33
- </pre></a></td></tr><tr><td valign='top'><small>15</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line15'><pre> <span class="ident">watch_hash</span><span class="punct">[&quot;</span><span class="string"><span class="expr">#{project_path}#{dir}</span></span><span class="punct">&quot;]</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string">**/*.js</span><span class="punct">&quot;</span>
34
- </pre></a></td></tr><tr><td valign='top'><small>16</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line16'><pre> <span class="keyword">end</span>
35
- </pre></a></td></tr><tr><td valign='top'><small>17</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line17'><pre>
36
- </pre></a></td></tr><tr><td valign='top'><small>18</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line18'><pre> <span class="ident">watch_hash</span><span class="punct">[</span><span class="ident">project_path</span><span class="punct">]</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string">**/*.conf</span><span class="punct">&quot;</span>
37
- </pre></a></td></tr><tr><td valign='top'><small>19</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line19'><pre> <span class="ident">watch_hash</span><span class="punct">[&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository</span><span class="punct">&quot;]</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string">**/*.js</span><span class="punct">&quot;</span>
38
- </pre></a></td></tr><tr><td valign='top'><small>20</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line20'><pre>
39
- </pre></a></td></tr><tr><td valign='top'><small>21</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line21'><pre> <span class="constant">FSSM</span><span class="punct">.</span><span class="ident">monitor</span> <span class="keyword">do</span>
40
- </pre></a></td></tr><tr><td valign='top'><small>22</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line22'><pre>
41
- </pre></a></td></tr><tr><td valign='top'><small>23</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line23'><pre> <span class="ident">watch_hash</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">dir</span><span class="punct">,</span> <span class="ident">g</span><span class="punct">|</span>
42
- </pre></a></td></tr><tr><td valign='top'><small>24</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line24'><pre>
43
- </pre></a></td></tr><tr><td valign='top'><small>25</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line25'><pre> <span class="ident">path</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{dir}</span></span><span class="punct">&quot;</span> <span class="keyword">do</span>
44
- </pre></a></td></tr><tr><td valign='top'><small>26</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line26'><pre> <span class="ident">glob</span> <span class="ident">g</span>
45
- </pre></a></td></tr><tr><td valign='top'><small>27</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line27'><pre>
46
- </pre></a></td></tr><tr><td valign='top'><small>28</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line28'><pre> <span class="ident">update</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">base</span><span class="punct">,</span> <span class="ident">relative</span><span class="punct">|</span>
47
- </pre></a></td></tr><tr><td valign='top'><small>29</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line29'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[33m&lt;&lt;&lt;<span class="escape">\e</span>[0m change detected in <span class="expr">#{relative}</span></span><span class="punct">&quot;</span>
48
- </pre></a></td></tr><tr><td valign='top'><small>30</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line30'><pre> <span class="ident">project</span><span class="punct">.</span><span class="ident">update</span>
49
- </pre></a></td></tr><tr><td valign='top'><small>31</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line31'><pre> <span class="keyword">end</span>
50
- </pre></a></td></tr><tr><td valign='top'><small>32</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line32'><pre>
51
- </pre></a></td></tr><tr><td valign='top'><small>33</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line33'><pre> <span class="ident">create</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">base</span><span class="punct">,</span> <span class="ident">relative</span><span class="punct">|</span>
52
- </pre></a></td></tr><tr><td valign='top'><small>34</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line34'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{relative}</span> created</span><span class="punct">&quot;</span>
53
- </pre></a></td></tr><tr><td valign='top'><small>35</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line35'><pre> <span class="ident">project</span><span class="punct">.</span><span class="ident">update</span>
54
- </pre></a></td></tr><tr><td valign='top'><small>36</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line36'><pre> <span class="keyword">end</span>
55
- </pre></a></td></tr><tr><td valign='top'><small>37</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line37'><pre> <span class="keyword">end</span>
56
- </pre></a></td></tr><tr><td valign='top'><small>38</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line38'><pre>
57
- </pre></a></td></tr><tr><td valign='top'><small>39</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line39'><pre> <span class="keyword">end</span>
58
- </pre></a></td></tr><tr><td valign='top'><small>40</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line40'><pre>
59
- </pre></a></td></tr><tr><td valign='top'><small>41</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line41'><pre> <span class="keyword">end</span>
60
- </pre></a></td></tr><tr><td valign='top'><small>42</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line42'><pre>
61
- </pre></a></td></tr><tr><td valign='top'><small>43</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line43'><pre> <span class="keyword">end</span>
62
- </pre></a></td></tr><tr><td valign='top'><small>44</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line44'><pre>
63
- </pre></a></td></tr><tr><td valign='top'><small>45</small></td><td valign='top'><ul><li>Score of 7.16 &raquo; flog</li></ul></td><td valign='top'><a name='line45'><pre> <span class="keyword">def </span><span class="method">create</span><span class="punct">(</span><span class="ident">name</span><span class="punct">,</span> <span class="ident">directory</span> <span class="punct">=</span> <span class="constant">false</span><span class="punct">)</span>
64
- </pre></a></td></tr><tr><td valign='top'><small>46</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line46'><pre> <span class="keyword">raise</span> <span class="punct">'</span><span class="string">you must specify a project name: ninjs create ProjectName</span><span class="punct">'</span> <span class="keyword">if</span> <span class="ident">name</span><span class="punct">.</span><span class="ident">nil?</span>
65
- </pre></a></td></tr><tr><td valign='top'><small>47</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line47'><pre> <span class="ident">project</span> <span class="punct">=</span> <span class="ident">directory</span> <span class="punct">?</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Project</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span><span class="ident">directory</span><span class="punct">,</span> <span class="ident">name</span><span class="punct">)</span> <span class="punct">:</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Project</span><span class="punct">.</span><span class="ident">new</span><span class="punct">('</span><span class="string">/</span><span class="punct">',</span> <span class="ident">name</span><span class="punct">)</span>
66
- </pre></a></td></tr><tr><td valign='top'><small>48</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line48'><pre> <span class="ident">project</span><span class="punct">.</span><span class="ident">create</span>
67
- </pre></a></td></tr><tr><td valign='top'><small>49</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line49'><pre> <span class="keyword">end</span>
68
- </pre></a></td></tr><tr><td valign='top'><small>50</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line50'><pre>
69
- </pre></a></td></tr><tr><td valign='top'><small>51</small></td><td valign='top'><ul><li>Score of 7.97 &raquo; flog</li></ul></td><td valign='top'><a name='line51'><pre> <span class="keyword">def </span><span class="method">compile</span>
70
- </pre></a></td></tr><tr><td valign='top'><small>52</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line52'><pre> <span class="ident">project_path</span> <span class="punct">=</span> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">getwd</span> <span class="punct">&lt;&lt;</span> <span class="punct">'</span><span class="string">/</span><span class="punct">'</span>
71
- </pre></a></td></tr><tr><td valign='top'><small>53</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line53'><pre> <span class="keyword">raise</span> <span class="punct">&quot;</span><span class="string">ninjs.conf was not located in <span class="expr">#{project_path}</span></span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>/ninjs.conf</span><span class="punct">&quot;</span>
72
- </pre></a></td></tr><tr><td valign='top'><small>54</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line54'><pre> <span class="ident">project</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Project</span><span class="punct">.</span><span class="ident">new</span>
73
- </pre></a></td></tr><tr><td valign='top'><small>55</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line55'><pre> <span class="ident">project</span><span class="punct">.</span><span class="ident">update</span>
74
- </pre></a></td></tr><tr><td valign='top'><small>56</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line56'><pre> <span class="keyword">end</span>
75
- </pre></a></td></tr><tr><td valign='top'><small>57</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line57'><pre>
76
- </pre></a></td></tr><tr><td valign='top'><small>58</small></td><td valign='top'><ul><li>Score of 1.20 &raquo; flog</li></ul></td><td valign='top'><a name='line58'><pre> <span class="keyword">def </span><span class="method">import</span><span class="punct">(</span><span class="ident">package</span><span class="punct">)</span>
77
- </pre></a></td></tr><tr><td valign='top'><small>59</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line59'><pre> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">PackageManager</span><span class="punct">.</span><span class="ident">import</span><span class="punct">(</span><span class="ident">package</span><span class="punct">)</span>
78
- </pre></a></td></tr><tr><td valign='top'><small>60</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line60'><pre> <span class="keyword">end</span>
79
- </pre></a></td></tr><tr><td valign='top'><small>61</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line61'><pre>
80
- </pre></a></td></tr><tr><td valign='top'><small>62</small></td><td valign='top'><ul><li>Score of 1.20 &raquo; flog</li><li>Method "help" has 23 lines. It should have 20 or less. &raquo; roodi</li></ul></td><td valign='top'><a name='line62'><pre> <span class="keyword">def </span><span class="method">help</span>
81
- </pre></a></td></tr><tr><td valign='top'><small>63</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line63'><pre> <span class="ident">puts</span> <span class="punct">&lt;&lt;-</span><span class="constant">DOC</span><span class="string"><span class="normal">
82
- </span></span></pre></a></td></tr><tr><td valign='top'><small>64</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line64'><pre>
83
- </pre></a></td></tr><tr><td valign='top'><small>65</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line65'><pre><span class="constant">Description</span><span class="punct">:</span>
84
- </pre></a></td></tr><tr><td valign='top'><small>66</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line66'><pre><span class="constant">The</span> <span class="ident">ninjs</span> <span class="ident">command</span> <span class="ident">line</span> <span class="ident">tool</span> <span class="ident">will</span> <span class="ident">compile</span> <span class="ident">your</span> <span class="ident">ninjs</span> <span class="ident">application</span> <span class="ident">into</span> <span class="ident">modules</span><span class="punct">.</span>
85
- </pre></a></td></tr><tr><td valign='top'><small>67</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line67'><pre><span class="constant">To</span> <span class="ident">compile</span> <span class="ident">your</span> <span class="ident">ninjs</span> <span class="ident">application</span> <span class="ident">into</span> <span class="keyword">module </span><span class="module">files:</span>
86
- </pre></a></td></tr><tr><td valign='top'><small>68</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line68'><pre>
87
- </pre></a></td></tr><tr><td valign='top'><small>69</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line69'><pre><span class="constant">Usage</span><span class="punct">:</span> <span class="ident">ninjs</span> <span class="punct">[</span><span class="ident">action</span><span class="punct">]</span> <span class="punct">[</span><span class="ident">options</span><span class="punct">]</span>
88
- </pre></a></td></tr><tr><td valign='top'><small>70</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line70'><pre>
89
- </pre></a></td></tr><tr><td valign='top'><small>71</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line71'><pre><span class="constant">Actions</span><span class="punct">:</span>
90
- </pre></a></td></tr><tr><td valign='top'><small>72</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line72'><pre> <span class="ident">compile</span> <span class="constant">Compiles</span> <span class="ident">the</span> <span class="ident">ninjs</span> <span class="ident">project</span> <span class="keyword">in</span> <span class="ident">the</span> <span class="ident">current</span> <span class="ident">working</span> <span class="ident">directory</span>
91
- </pre></a></td></tr><tr><td valign='top'><small>73</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line73'><pre> <span class="ident">watch</span> <span class="constant">Watches</span> <span class="ident">the</span> <span class="ident">current</span> <span class="ident">working</span> <span class="ident">directory</span> <span class="keyword">for</span>
92
- </pre></a></td></tr><tr><td valign='top'><small>74</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line74'><pre> <span class="ident">file</span> <span class="ident">changes</span> <span class="keyword">and</span> <span class="ident">compiles</span> <span class="keyword">when</span> <span class="ident">files</span> <span class="ident">change</span>
93
- </pre></a></td></tr><tr><td valign='top'><small>75</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line75'><pre> <span class="ident">create</span> <span class="constant">Generates</span> <span class="ident">ninjs</span> <span class="ident">application</span> <span class="ident">architecture</span> <span class="keyword">and</span> <span class="ident">files</span>
94
- </pre></a></td></tr><tr><td valign='top'><small>76</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line76'><pre> <span class="constant">Options</span><span class="punct">:</span>
95
- </pre></a></td></tr><tr><td valign='top'><small>77</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line77'><pre> <span class="punct">-</span><span class="ident">p</span><span class="punct">,</span> <span class="punct">--</span><span class="ident">directory</span> <span class="constant">Optional</span> <span class="ident">install</span> <span class="ident">directory</span> <span class="keyword">for</span> <span class="ident">a</span> <span class="ident">new</span> <span class="ident">ninjs</span> <span class="ident">project</span>
96
- </pre></a></td></tr><tr><td valign='top'><small>78</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line78'><pre> <span class="punct">(</span><span class="ident">creates</span> <span class="ident">the</span> <span class="ident">folder</span> <span class="keyword">if</span> <span class="ident">it</span> <span class="ident">does</span> <span class="keyword">not</span> <span class="ident">exist</span><span class="punct">)</span>
97
- </pre></a></td></tr><tr><td valign='top'><small>79</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line79'><pre>
98
- </pre></a></td></tr><tr><td valign='top'><small>80</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line80'><pre><span class="constant">Example</span><span class="punct">:</span>
99
- </pre></a></td></tr><tr><td valign='top'><small>81</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line81'><pre> <span class="ident">ninjs</span> <span class="ident">create</span> <span class="constant">MyApplication</span>
100
- </pre></a></td></tr><tr><td valign='top'><small>82</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line82'><pre> <span class="ident">ninjs</span> <span class="ident">watch</span>
101
- </pre></a></td></tr><tr><td valign='top'><small>83</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line83'><pre> <span class="constant">DOC</span>
102
- </pre></a></td></tr><tr><td valign='top'><small>84</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line84'><pre> <span class="keyword">end</span>
103
- </pre></a></td></tr><tr><td valign='top'><small>85</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line85'><pre>
104
- </pre></a></td></tr><tr><td valign='top'><small>86</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line86'><pre> <span class="keyword">def </span><span class="method">generate</span><span class="punct">(</span><span class="ident">object</span><span class="punct">,</span> <span class="ident">name</span><span class="punct">,</span> <span class="ident">create_elements</span> <span class="punct">=</span> <span class="constant">false</span><span class="punct">,</span> <span class="ident">create_models</span> <span class="punct">=</span> <span class="constant">false</span><span class="punct">,</span> <span class="ident">elements</span> <span class="punct">=</span> <span class="constant">false</span><span class="punct">,</span> <span class="ident">models</span> <span class="punct">=</span> <span class="constant">false</span><span class="punct">)</span>
105
- </pre></a></td></tr><tr><td valign='top'><small>87</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line87'><pre> <span class="keyword">begin</span>
106
- </pre></a></td></tr><tr><td valign='top'><small>88</small></td><td valign='top'><ul><li>Score of 142.79 &raquo; flog</li><li>Method name "generate" cyclomatic complexity is 11. It should be 8 or less. &raquo; roodi</li><li>Method "generate" has 27 lines. It should have 20 or less. &raquo; roodi</li><li>Method name "generate" has 6 parameters. It should have 5 or less. &raquo; roodi</li></ul></td><td valign='top'><a name='line88'><pre> <span class="ident">project_path</span> <span class="punct">=</span> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">getwd</span> <span class="punct">&lt;&lt;</span> <span class="punct">'</span><span class="string">/</span><span class="punct">'</span>
107
- </pre></a></td></tr><tr><td valign='top'><small>89</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line89'><pre> <span class="keyword">raise</span> <span class="punct">&quot;</span><span class="string">ninjs.conf was not located in <span class="expr">#{project_path}</span></span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>ninjs.conf</span><span class="punct">&quot;</span>
108
- </pre></a></td></tr><tr><td valign='top'><small>90</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line90'><pre> <span class="ident">project</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Project</span><span class="punct">.</span><span class="ident">new</span>
109
- </pre></a></td></tr><tr><td valign='top'><small>91</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line91'><pre> <span class="keyword">if</span> <span class="ident">object</span> <span class="punct">===</span> <span class="punct">'</span><span class="string">module</span><span class="punct">'</span>
110
- </pre></a></td></tr><tr><td valign='top'><small>92</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line92'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>modules/<span class="expr">#{name.downcase}</span>.module.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string">w</span><span class="punct">&quot;</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
111
- </pre></a></td></tr><tr><td valign='top'><small>93</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line93'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="ident">project</span><span class="punct">.</span><span class="ident">config</span><span class="punct">.</span><span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.add_module('</span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">');<span class="escape">\n\n</span></span><span class="punct">&quot;</span>
112
- </pre></a></td></tr><tr><td valign='top'><small>94</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line94'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">'</span><span class="string">//= require &quot;../elements/</span><span class="punct">'</span> <span class="punct">+</span> <span class="ident">name</span><span class="punct">.</span><span class="ident">downcase</span> <span class="punct">+</span> <span class="punct">'</span><span class="string">.elements.js&quot;</span><span class="punct">'</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">elements</span>
113
- </pre></a></td></tr><tr><td valign='top'><small>95</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line95'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">'</span><span class="string">//= require &quot;../models/</span><span class="punct">'</span> <span class="punct">+</span> <span class="ident">name</span><span class="punct">.</span><span class="ident">downcase</span> <span class="punct">+</span> <span class="punct">'</span><span class="string">.model.js&quot;</span><span class="punct">'</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">models</span>
114
- </pre></a></td></tr><tr><td valign='top'><small>96</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line96'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="ident">project</span><span class="punct">.</span><span class="ident">config</span><span class="punct">.</span><span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.</span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.actions = function() {<span class="escape">\n\n</span>}<span class="escape">\n\n</span></span><span class="punct">&quot;</span>
115
- </pre></a></td></tr><tr><td valign='top'><small>97</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line97'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="ident">project</span><span class="punct">.</span><span class="ident">config</span><span class="punct">.</span><span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.</span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.run();</span><span class="punct">&quot;</span>
116
- </pre></a></td></tr><tr><td valign='top'><small>98</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line98'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">+++ created <span class="expr">#{name.downcase}</span>.module.js</span><span class="punct">&quot;</span>
117
- </pre></a></td></tr><tr><td valign='top'><small>99</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line99'><pre> <span class="keyword">end</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>modules/<span class="expr">#{name.downcase}</span>.module.js</span><span class="punct">&quot;</span>
118
- </pre></a></td></tr><tr><td valign='top'><small>100</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line100'><pre> <span class="keyword">elsif</span> <span class="ident">object</span> <span class="punct">===</span> <span class="punct">'</span><span class="string">elements</span><span class="punct">'</span>
119
- </pre></a></td></tr><tr><td valign='top'><small>101</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line101'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(&quot;</span><span class="string"><span class="expr">#{project_path}</span>elements/<span class="expr">#{name.downcase}</span></span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.elements.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string">w</span><span class="punct">&quot;)</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
120
- </pre></a></td></tr><tr><td valign='top'><small>102</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line102'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="ident">project</span><span class="punct">.</span><span class="ident">config</span><span class="punct">.</span><span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.</span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.elements(function({<span class="escape">\n\n</span>}));</span><span class="punct">&quot;</span>
121
- </pre></a></td></tr><tr><td valign='top'><small>103</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line103'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">+++ created <span class="expr">#{name.downcase}</span>.elements.js</span><span class="punct">&quot;</span>
122
- </pre></a></td></tr><tr><td valign='top'><small>104</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line104'><pre> <span class="keyword">end</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>elements/<span class="expr">#{name.downcase}</span>.elements.js</span><span class="punct">&quot;</span>
123
- </pre></a></td></tr><tr><td valign='top'><small>105</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line105'><pre> <span class="keyword">elsif</span> <span class="ident">object</span> <span class="punct">===</span> <span class="punct">'</span><span class="string">model</span><span class="punct">'</span>
124
- </pre></a></td></tr><tr><td valign='top'><small>106</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line106'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>models/<span class="expr">#{name.downcase}</span>.model.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string">w</span><span class="punct">&quot;</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
125
- </pre></a></td></tr><tr><td valign='top'><small>107</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line107'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="ident">project</span><span class="punct">.</span><span class="ident">config</span><span class="punct">.</span><span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.</span><span class="punct">&quot;</span> <span class="punct">+</span> <span class="ident">name</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">.set_data({});</span><span class="punct">&quot;</span>
126
- </pre></a></td></tr><tr><td valign='top'><small>108</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line108'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">+++ created <span class="expr">#{name.downcase}</span>.model.js</span><span class="punct">&quot;</span>
127
- </pre></a></td></tr><tr><td valign='top'><small>109</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line109'><pre> <span class="keyword">end</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{project_path}</span>models/<span class="expr">#{name.downcase}</span>.model.js</span><span class="punct">&quot;</span>
128
- </pre></a></td></tr><tr><td valign='top'><small>110</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line110'><pre> <span class="keyword">end</span>
129
- </pre></a></td></tr><tr><td valign='top'><small>111</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line111'><pre> <span class="keyword">rescue</span>
130
- </pre></a></td></tr><tr><td valign='top'><small>112</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line112'><pre> <span class="comment"># TODO rescue this</span>
131
- </pre></a></td></tr><tr><td valign='top'><small>113</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line113'><pre> <span class="keyword">end</span>
132
- </pre></a></td></tr><tr><td valign='top'><small>114</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line114'><pre> <span class="keyword">end</span>
133
- </pre></a></td></tr><tr><td valign='top'><small>115</small></td><td valign='top'><ul><li>Rescue block should not be empty. &raquo; roodi</li></ul></td><td valign='top'><a name='line115'><pre>
134
- </pre></a></td></tr><tr><td valign='top'><small>116</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line116'><pre> <span class="ident">module_function</span> <span class="symbol">:create</span><span class="punct">,</span> <span class="symbol">:watch</span><span class="punct">,</span> <span class="symbol">:compile</span><span class="punct">,</span> <span class="symbol">:help</span><span class="punct">,</span> <span class="symbol">:import</span><span class="punct">,</span> <span class="symbol">:generate</span>
135
- </pre></a></td></tr><tr><td valign='top'><small>117</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line117'><pre> <span class="keyword">end</span>
136
- </pre></a></td></tr><tr><td valign='top'><small>118</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line118'><pre><span class="keyword">end</span>
137
- </pre></a></td></tr><table></body></html>
@@ -1,107 +0,0 @@
1
- <html><head><style>table { background: #fff; color: #000; }
2
- .ruby .normal { color: #000; }
3
- .ruby .comment { color: #005; font-style: italic; }
4
- .ruby .keyword { color: #A44; font-weight: bold; }
5
- .ruby .method { color: #44f; }
6
- .ruby .class { color: #b1713d; }
7
- .ruby .module { color: #050; }
8
- .ruby .punct { color: #668; font-weight: bold; }
9
- .ruby .symbol { color: #00f; }
10
- .ruby .string { color: #4a4; }
11
- .ruby .char { color: #F07; }
12
- .ruby .ident { color: #000; }
13
- .ruby .constant { color: #b1713d; }
14
- .ruby .regex { color: #B66; background: #FEF; }
15
- .ruby .number { color: #F99; }
16
- .ruby .attribute { color: #f84; }
17
- .ruby .global { color: #7FB; }
18
- .ruby .expr { color: #227; }
19
- .ruby .escape { color: #277; }</style></head><body><table cellpadding='0' cellspacing='0' class='ruby'><tr><td valign='top'><small>1</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line1'><pre><span class="keyword">module </span><span class="module">Ninjs</span>
20
- </pre></a></td></tr><tr><td valign='top'><small>2</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line2'><pre> <span class="keyword">class </span><span class="class">Configuration</span>
21
- </pre></a></td></tr><tr><td valign='top'><small>3</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line3'><pre>
22
- </pre></a></td></tr><tr><td valign='top'><small>4</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line4'><pre> <span class="ident">attr_reader</span> <span class="symbol">:name</span><span class="punct">,</span>
23
- </pre></a></td></tr><tr><td valign='top'><small>5</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line5'><pre> <span class="symbol">:app_filename</span><span class="punct">,</span>
24
- </pre></a></td></tr><tr><td valign='top'><small>6</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line6'><pre> <span class="symbol">:directory</span><span class="punct">,</span>
25
- </pre></a></td></tr><tr><td valign='top'><small>7</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line7'><pre> <span class="symbol">:output</span><span class="punct">,</span>
26
- </pre></a></td></tr><tr><td valign='top'><small>8</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line8'><pre> <span class="symbol">:dependencies</span><span class="punct">,</span>
27
- </pre></a></td></tr><tr><td valign='top'><small>9</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line9'><pre> <span class="symbol">:autoload</span><span class="punct">,</span>
28
- </pre></a></td></tr><tr><td valign='top'><small>10</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line10'><pre> <span class="symbol">:config_path</span><span class="punct">,</span>
29
- </pre></a></td></tr><tr><td valign='top'><small>11</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line11'><pre> <span class="symbol">:asset_root</span><span class="punct">,</span>
30
- </pre></a></td></tr><tr><td valign='top'><small>12</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line12'><pre> <span class="symbol">:base_url</span><span class="punct">,</span>
31
- </pre></a></td></tr><tr><td valign='top'><small>13</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line13'><pre> <span class="symbol">:test_path</span>
32
- </pre></a></td></tr><tr><td valign='top'><small>14</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line14'><pre>
33
- </pre></a></td></tr><tr><td valign='top'><small>15</small></td><td valign='top'><ul><li>Score of 10.94 &raquo; flog</li></ul></td><td valign='top'><a name='line15'><pre> <span class="keyword">def </span><span class="method">initialize</span><span class="punct">(</span><span class="ident">project_path</span><span class="punct">,</span> <span class="ident">name</span> <span class="punct">=</span> <span class="punct">'</span><span class="string"></span><span class="punct">')</span>
34
- </pre></a></td></tr><tr><td valign='top'><small>16</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line16'><pre> <span class="attribute">@project_path</span> <span class="punct">=</span> <span class="ident">project_path</span>
35
- </pre></a></td></tr><tr><td valign='top'><small>17</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line17'><pre> <span class="attribute">@defaults</span> <span class="punct">=</span> <span class="punct">{</span>
36
- </pre></a></td></tr><tr><td valign='top'><small>18</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line18'><pre> <span class="symbol">:name</span> <span class="punct">=&gt;</span> <span class="ident">name</span><span class="punct">,</span>
37
- </pre></a></td></tr><tr><td valign='top'><small>19</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line19'><pre> <span class="symbol">:app_filename</span> <span class="punct">=&gt;</span> <span class="ident">name</span><span class="punct">.</span><span class="ident">gsub</span><span class="punct">(/</span><span class="regex"><span class="escape">\s</span>|<span class="escape">\-</span>|<span class="escape">\.</span></span><span class="punct">/,</span> <span class="punct">'</span><span class="string"></span><span class="punct">').</span><span class="ident">downcase</span><span class="punct">,</span>
38
- </pre></a></td></tr><tr><td valign='top'><small>20</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line20'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="punct">'</span><span class="string">../</span><span class="punct">',</span>
39
- </pre></a></td></tr><tr><td valign='top'><small>21</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line21'><pre> <span class="symbol">:output</span> <span class="punct">=&gt;</span> <span class="punct">'</span><span class="string">expanded</span><span class="punct">',</span>
40
- </pre></a></td></tr><tr><td valign='top'><small>22</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line22'><pre> <span class="symbol">:dependencies</span> <span class="punct">=&gt;</span> <span class="punct">['</span><span class="string">&lt;jquery/latest&gt;</span><span class="punct">'],</span>
41
- </pre></a></td></tr><tr><td valign='top'><small>23</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line23'><pre> <span class="symbol">:autoload</span> <span class="punct">=&gt;</span> <span class="punct">['</span><span class="string">&lt;ninjs/utilities/all&gt;</span><span class="punct">'],</span>
42
- </pre></a></td></tr><tr><td valign='top'><small>24</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line24'><pre> <span class="symbol">:base_url</span> <span class="punct">=&gt;</span> <span class="punct">'</span><span class="string">http://www.example.com/</span><span class="punct">',</span>
43
- </pre></a></td></tr><tr><td valign='top'><small>25</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line25'><pre> <span class="symbol">:test_path</span> <span class="punct">=&gt;</span> <span class="punct">'</span><span class="string">tests/</span><span class="punct">'</span>
44
- </pre></a></td></tr><tr><td valign='top'><small>26</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line26'><pre> <span class="punct">}</span>
45
- </pre></a></td></tr><tr><td valign='top'><small>27</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line27'><pre>
46
- </pre></a></td></tr><tr><td valign='top'><small>28</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line28'><pre> <span class="attribute">@defaults</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">label</span><span class="punct">,</span> <span class="ident">setting</span><span class="punct">|</span>
47
- </pre></a></td></tr><tr><td valign='top'><small>29</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line29'><pre> <span class="ident">instance_variable_set</span><span class="punct">(&quot;</span><span class="string">@<span class="expr">#{label}</span></span><span class="punct">&quot;,</span> <span class="ident">setting</span><span class="punct">)</span>
48
- </pre></a></td></tr><tr><td valign='top'><small>30</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line30'><pre> <span class="keyword">end</span>
49
- </pre></a></td></tr><tr><td valign='top'><small>31</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line31'><pre>
50
- </pre></a></td></tr><tr><td valign='top'><small>32</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line32'><pre> <span class="keyword">if</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>ninjs.conf</span><span class="punct">&quot;</span>
51
- </pre></a></td></tr><tr><td valign='top'><small>33</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line33'><pre> <span class="ident">read</span>
52
- </pre></a></td></tr><tr><td valign='top'><small>34</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line34'><pre> <span class="keyword">end</span>
53
- </pre></a></td></tr><tr><td valign='top'><small>35</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line35'><pre> <span class="keyword">end</span>
54
- </pre></a></td></tr><tr><td valign='top'><small>36</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line36'><pre>
55
- </pre></a></td></tr><tr><td valign='top'><small>37</small></td><td valign='top'><ul><li>Score of 2.68 &raquo; flog</li></ul></td><td valign='top'><a name='line37'><pre> <span class="keyword">def </span><span class="method">create</span>
56
- </pre></a></td></tr><tr><td valign='top'><small>38</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line38'><pre> <span class="ident">default_content</span> <span class="punct">=</span> <span class="ident">conf_content</span> <span class="attribute">@defaults</span>
57
- </pre></a></td></tr><tr><td valign='top'><small>39</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line39'><pre> <span class="ident">create_conf_file</span> <span class="ident">default_content</span>
58
- </pre></a></td></tr><tr><td valign='top'><small>40</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line40'><pre> <span class="keyword">end</span>
59
- </pre></a></td></tr><tr><td valign='top'><small>41</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line41'><pre>
60
- </pre></a></td></tr><tr><td valign='top'><small>42</small></td><td valign='top'><ul><li>Score of 11.26 &raquo; flog</li><li>LowCohesion - doesn't depend on instance state &raquo; reek</li><li>LowCohesion - refers to options more than self &raquo; reek</li></ul></td><td valign='top'><a name='line42'><pre> <span class="keyword">def </span><span class="method">conf_content</span><span class="punct">(</span><span class="ident">options</span><span class="punct">)</span>
61
- </pre></a></td></tr><tr><td valign='top'><small>43</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line43'><pre> <span class="ident">content</span> <span class="punct">=</span> <span class="punct">&lt;&lt;-</span><span class="constant">CONF</span><span class="string"><span class="normal">
62
- </span></span></pre></a></td></tr><tr><td valign='top'><small>44</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line44'><pre><span class="ident">name</span><span class="punct">:</span> <span class="comment">#{options[:name]}</span>
63
- </pre></a></td></tr><tr><td valign='top'><small>45</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line45'><pre><span class="ident">asset_root</span><span class="punct">:</span> <span class="comment">#{options[:asset_root]}</span>
64
- </pre></a></td></tr><tr><td valign='top'><small>46</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line46'><pre><span class="ident">output</span><span class="punct">:</span> <span class="comment">#{options[:output]}</span>
65
- </pre></a></td></tr><tr><td valign='top'><small>47</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line47'><pre><span class="ident">dependencies</span><span class="punct">:</span> <span class="punct">[</span><span class="comment">#{options[:dependencies].join(', ')}]</span>
66
- </pre></a></td></tr><tr><td valign='top'><small>48</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line48'><pre><span class="ident">autoload</span><span class="punct">:</span> <span class="punct">[</span><span class="comment">#{options[:autoload].join(', ')}]</span>
67
- </pre></a></td></tr><tr><td valign='top'><small>49</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line49'><pre><span class="ident">base_url</span><span class="punct">:</span> <span class="comment">#{options[:base_url]}</span>
68
- </pre></a></td></tr><tr><td valign='top'><small>50</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line50'><pre><span class="ident">test_path</span><span class="punct">:</span> <span class="comment">#{options[:test_path]}</span>
69
- </pre></a></td></tr><tr><td valign='top'><small>51</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line51'><pre> <span class="constant">CONF</span>
70
- </pre></a></td></tr><tr><td valign='top'><small>52</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line52'><pre> <span class="keyword">end</span>
71
- </pre></a></td></tr><tr><td valign='top'><small>53</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line53'><pre>
72
- </pre></a></td></tr><tr><td valign='top'><small>54</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line54'><pre> <span class="keyword">def </span><span class="method">create_conf_file</span><span class="punct">(</span><span class="ident">content</span><span class="punct">)</span>
73
- </pre></a></td></tr><tr><td valign='top'><small>55</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line55'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(&quot;</span><span class="string"><span class="expr">#{@project_path}</span>ninjs.conf</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string">w+</span><span class="punct">&quot;)</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">conf_file</span><span class="punct">|</span>
74
- </pre></a></td></tr><tr><td valign='top'><small>56</small></td><td valign='top'><ul><li>Score of 5.49 &raquo; flog</li></ul></td><td valign='top'><a name='line56'><pre> <span class="ident">conf_file</span> <span class="punct">&lt;&lt;</span> <span class="ident">conf_content</span><span class="punct">(</span><span class="attribute">@defaults</span><span class="punct">)</span>
75
- </pre></a></td></tr><tr><td valign='top'><small>57</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line57'><pre> <span class="keyword">end</span>
76
- </pre></a></td></tr><tr><td valign='top'><small>58</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line58'><pre>
77
- </pre></a></td></tr><tr><td valign='top'><small>59</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line59'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">ninjs.conf created</span><span class="punct">&quot;</span>
78
- </pre></a></td></tr><tr><td valign='top'><small>60</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line60'><pre> <span class="keyword">end</span>
79
- </pre></a></td></tr><tr><td valign='top'><small>61</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line61'><pre>
80
- </pre></a></td></tr><tr><td valign='top'><small>62</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line62'><pre> <span class="keyword">def </span><span class="method">update</span>
81
- </pre></a></td></tr><tr><td valign='top'><small>63</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line63'><pre> <span class="ident">content</span> <span class="punct">=</span> <span class="ident">conf_content</span><span class="punct">({</span>
82
- </pre></a></td></tr><tr><td valign='top'><small>64</small></td><td valign='top'><ul><li>Score of 2.68 &raquo; flog</li></ul></td><td valign='top'><a name='line64'><pre> <span class="symbol">:name</span> <span class="punct">=&gt;</span> <span class="attribute">@name</span><span class="punct">,</span>
83
- </pre></a></td></tr><tr><td valign='top'><small>65</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line65'><pre> <span class="symbol">:app_filename</span> <span class="punct">=&gt;</span> <span class="attribute">@app_filename</span><span class="punct">,</span>
84
- </pre></a></td></tr><tr><td valign='top'><small>66</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line66'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="attribute">@asset_root</span><span class="punct">,</span>
85
- </pre></a></td></tr><tr><td valign='top'><small>67</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line67'><pre> <span class="symbol">:output</span> <span class="punct">=&gt;</span> <span class="attribute">@output</span><span class="punct">,</span>
86
- </pre></a></td></tr><tr><td valign='top'><small>68</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line68'><pre> <span class="symbol">:dependencies</span> <span class="punct">=&gt;</span> <span class="attribute">@dependencies</span><span class="punct">,</span>
87
- </pre></a></td></tr><tr><td valign='top'><small>69</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line69'><pre> <span class="symbol">:autoload</span> <span class="punct">=&gt;</span> <span class="attribute">@autoload</span><span class="punct">,</span>
88
- </pre></a></td></tr><tr><td valign='top'><small>70</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line70'><pre> <span class="symbol">:base_url</span> <span class="punct">=&gt;</span> <span class="attribute">@base_url</span><span class="punct">,</span>
89
- </pre></a></td></tr><tr><td valign='top'><small>71</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line71'><pre> <span class="symbol">:test_path</span> <span class="punct">=&gt;</span> <span class="attribute">@test_path</span>
90
- </pre></a></td></tr><tr><td valign='top'><small>72</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line72'><pre> <span class="punct">})</span>
91
- </pre></a></td></tr><tr><td valign='top'><small>73</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line73'><pre> <span class="ident">create_conf_file</span> <span class="ident">content</span>
92
- </pre></a></td></tr><tr><td valign='top'><small>74</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line74'><pre> <span class="keyword">end</span>
93
- </pre></a></td></tr><tr><td valign='top'><small>75</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line75'><pre>
94
- </pre></a></td></tr><tr><td valign='top'><small>76</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line76'><pre> <span class="keyword">def </span><span class="method">read</span>
95
- </pre></a></td></tr><tr><td valign='top'><small>77</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line77'><pre> <span class="ident">config</span> <span class="punct">=</span> <span class="constant">YAML</span><span class="punct">.</span><span class="ident">load_file</span><span class="punct">(&quot;</span><span class="string"><span class="expr">#{@project_path}</span>ninjs.conf</span><span class="punct">&quot;)</span>
96
- </pre></a></td></tr><tr><td valign='top'><small>78</small></td><td valign='top'><ul><li>Score of 19.25 &raquo; flog</li><li>Duplication - calls config["name"] twice &raquo; reek</li><li>LongMethod - has approx 9 statements &raquo; reek</li></ul></td><td valign='top'><a name='line78'><pre> <span class="attribute">@asset_root</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">asset_root</span><span class="punct">']</span>
97
- </pre></a></td></tr><tr><td valign='top'><small>79</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line79'><pre> <span class="attribute">@name</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">name</span><span class="punct">']</span>
98
- </pre></a></td></tr><tr><td valign='top'><small>80</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line80'><pre> <span class="attribute">@app_filename</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">name</span><span class="punct">'].</span><span class="ident">downcase</span>
99
- </pre></a></td></tr><tr><td valign='top'><small>81</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line81'><pre> <span class="attribute">@output</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">output</span><span class="punct">']</span>
100
- </pre></a></td></tr><tr><td valign='top'><small>82</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line82'><pre> <span class="attribute">@dependencies</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">dependencies</span><span class="punct">']</span> <span class="punct">||</span> <span class="constant">Array</span><span class="punct">.</span><span class="ident">new</span>
101
- </pre></a></td></tr><tr><td valign='top'><small>83</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line83'><pre> <span class="attribute">@autoload</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">autoload</span><span class="punct">']</span> <span class="punct">||</span> <span class="constant">Array</span><span class="punct">.</span><span class="ident">new</span>
102
- </pre></a></td></tr><tr><td valign='top'><small>84</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line84'><pre> <span class="attribute">@base_url</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">base_url</span><span class="punct">']</span> <span class="punct">||</span> <span class="punct">'</span><span class="string">http://www.example.com/</span><span class="punct">'</span>
103
- </pre></a></td></tr><tr><td valign='top'><small>85</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line85'><pre> <span class="attribute">@test_path</span> <span class="punct">=</span> <span class="ident">config</span><span class="punct">['</span><span class="string">test_path</span><span class="punct">']</span> <span class="punct">||</span> <span class="punct">'</span><span class="string">tests/</span><span class="punct">'</span>
104
- </pre></a></td></tr><tr><td valign='top'><small>86</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line86'><pre> <span class="keyword">end</span>
105
- </pre></a></td></tr><tr><td valign='top'><small>87</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line87'><pre>
106
- </pre></a></td></tr><tr><td valign='top'><small>88</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line88'><pre> <span class="keyword">end</span>
107
- </pre></a></td></tr><tr><td valign='top'><small>89</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line89'><pre><span class="keyword">end</span></pre></a></td></tr><table></body></html>
@@ -1,236 +0,0 @@
1
- <html><head><style>table { background: #fff; color: #000; }
2
- .ruby .normal { color: #000; }
3
- .ruby .comment { color: #005; font-style: italic; }
4
- .ruby .keyword { color: #A44; font-weight: bold; }
5
- .ruby .method { color: #44f; }
6
- .ruby .class { color: #b1713d; }
7
- .ruby .module { color: #050; }
8
- .ruby .punct { color: #668; font-weight: bold; }
9
- .ruby .symbol { color: #00f; }
10
- .ruby .string { color: #4a4; }
11
- .ruby .char { color: #F07; }
12
- .ruby .ident { color: #000; }
13
- .ruby .constant { color: #b1713d; }
14
- .ruby .regex { color: #B66; background: #FEF; }
15
- .ruby .number { color: #F99; }
16
- .ruby .attribute { color: #f84; }
17
- .ruby .global { color: #7FB; }
18
- .ruby .expr { color: #227; }
19
- .ruby .escape { color: #277; }</style></head><body><table cellpadding='0' cellspacing='0' class='ruby'><tr><td valign='top'><small>1</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line1'><pre><span class="keyword">module </span><span class="module">Ninjs</span>
20
- </pre></a></td></tr><tr><td valign='top'><small>2</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line2'><pre> <span class="keyword">class </span><span class="class">Project</span>
21
- </pre></a></td></tr><tr><td valign='top'><small>3</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line3'><pre> <span class="ident">attr_reader</span> <span class="symbol">:app_filename</span><span class="punct">,</span>
22
- </pre></a></td></tr><tr><td valign='top'><small>4</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line4'><pre> <span class="symbol">:project_path</span><span class="punct">,</span>
23
- </pre></a></td></tr><tr><td valign='top'><small>5</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line5'><pre> <span class="symbol">:config</span>
24
- </pre></a></td></tr><tr><td valign='top'><small>6</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line6'><pre> <span class="ident">attr_writer</span> <span class="symbol">:config</span><span class="punct">,</span>
25
- </pre></a></td></tr><tr><td valign='top'><small>7</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line7'><pre> <span class="symbol">:project_path</span><span class="punct">,</span>
26
- </pre></a></td></tr><tr><td valign='top'><small>8</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line8'><pre> <span class="symbol">:app_filename</span>
27
- </pre></a></td></tr><tr><td valign='top'><small>9</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line9'><pre>
28
- </pre></a></td></tr><tr><td valign='top'><small>10</small></td><td valign='top'><ul><li>Score of 9.50 &raquo; flog</li></ul></td><td valign='top'><a name='line10'><pre> <span class="keyword">def </span><span class="method">initialize</span><span class="punct">(</span><span class="ident">sub_dir</span> <span class="punct">=</span> <span class="punct">'</span><span class="string">/</span><span class="punct">',</span> <span class="ident">name</span> <span class="punct">=</span> <span class="punct">'</span><span class="string"></span><span class="punct">')</span>
29
- </pre></a></td></tr><tr><td valign='top'><small>11</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line11'><pre> <span class="ident">path</span> <span class="punct">=</span> <span class="ident">add_slashes</span> <span class="ident">sub_dir</span>
30
- </pre></a></td></tr><tr><td valign='top'><small>12</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line12'><pre> <span class="attribute">@project_path</span> <span class="punct">=</span> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">getwd</span> <span class="punct">+</span> <span class="ident">path</span>
31
- </pre></a></td></tr><tr><td valign='top'><small>13</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line13'><pre> <span class="attribute">@modules</span> <span class="punct">=</span> <span class="constant">Array</span><span class="punct">.</span><span class="ident">new</span>
32
- </pre></a></td></tr><tr><td valign='top'><small>14</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line14'><pre> <span class="attribute">@config</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Configuration</span><span class="punct">.</span><span class="ident">new</span> <span class="attribute">@project_path</span><span class="punct">,</span> <span class="ident">name</span>
33
- </pre></a></td></tr><tr><td valign='top'><small>15</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line15'><pre> <span class="keyword">end</span>
34
- </pre></a></td></tr><tr><td valign='top'><small>16</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line16'><pre>
35
- </pre></a></td></tr><tr><td valign='top'><small>17</small></td><td valign='top'><ul><li>Score of 6.13 &raquo; flog</li><li>LowCohesion - doesn't depend on instance state &raquo; reek</li><li>LowCohesion - refers to dir more than self &raquo; reek</li></ul></td><td valign='top'><a name='line17'><pre> <span class="keyword">def </span><span class="method">add_slashes</span><span class="punct">(</span><span class="ident">dir</span><span class="punct">)</span>
36
- </pre></a></td></tr><tr><td valign='top'><small>18</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line18'><pre> <span class="ident">dir</span> <span class="punct">+=</span> <span class="punct">'</span><span class="string">/</span><span class="punct">'</span> <span class="keyword">unless</span> <span class="ident">dir</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex"><span class="escape">\/</span>$</span><span class="punct">/)</span>
37
- </pre></a></td></tr><tr><td valign='top'><small>19</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line19'><pre> <span class="ident">dir</span> <span class="punct">=</span> <span class="punct">'</span><span class="string">/</span><span class="punct">'</span> <span class="punct">&lt;&lt;</span> <span class="ident">dir</span> <span class="keyword">unless</span> <span class="ident">dir</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^<span class="escape">\/</span></span><span class="punct">/)</span>
38
- </pre></a></td></tr><tr><td valign='top'><small>20</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line20'><pre> <span class="ident">dir</span>
39
- </pre></a></td></tr><tr><td valign='top'><small>21</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line21'><pre> <span class="keyword">end</span>
40
- </pre></a></td></tr><tr><td valign='top'><small>22</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line22'><pre>
41
- </pre></a></td></tr><tr><td valign='top'><small>23</small></td><td valign='top'><ul><li>Score of 11.00 &raquo; flog</li><li>LongMethod - has approx 8 statements &raquo; reek</li></ul></td><td valign='top'><a name='line23'><pre> <span class="keyword">def </span><span class="method">create</span>
42
- </pre></a></td></tr><tr><td valign='top'><small>24</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line24'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[32m&gt;&gt;&gt;<span class="escape">\e</span>[0m Creating the <span class="expr">#{@config.name}</span> project in <span class="expr">#{@project_path}</span></span><span class="punct">&quot;</span>
43
- </pre></a></td></tr><tr><td valign='top'><small>25</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line25'><pre> <span class="ident">create_project_structure</span>
44
- </pre></a></td></tr><tr><td valign='top'><small>26</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line26'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">created the project structure</span><span class="punct">&quot;</span>
45
- </pre></a></td></tr><tr><td valign='top'><small>27</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line27'><pre> <span class="attribute">@config</span><span class="punct">.</span><span class="ident">create</span>
46
- </pre></a></td></tr><tr><td valign='top'><small>28</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line28'><pre> <span class="ident">create_ninjs_lib_file</span>
47
- </pre></a></td></tr><tr><td valign='top'><small>29</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line29'><pre> <span class="ident">create_utility_lib_file</span>
48
- </pre></a></td></tr><tr><td valign='top'><small>30</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line30'><pre> <span class="ident">create_ninjs_application_file</span>
49
- </pre></a></td></tr><tr><td valign='top'><small>31</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line31'><pre> <span class="ident">import_test_files</span>
50
- </pre></a></td></tr><tr><td valign='top'><small>32</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line32'><pre> <span class="keyword">end</span>
51
- </pre></a></td></tr><tr><td valign='top'><small>33</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line33'><pre>
52
- </pre></a></td></tr><tr><td valign='top'><small>34</small></td><td valign='top'><ul><li>Score of 12.15 &raquo; flog</li><li>Duplication - calls File.exists?("#{@project_path}#{folder}") twice &raquo; reek</li></ul></td><td valign='top'><a name='line34'><pre> <span class="keyword">def </span><span class="method">create_project_structure</span>
53
- </pre></a></td></tr><tr><td valign='top'><small>35</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line35'><pre> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">mkdir</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span></span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span></span><span class="punct">&quot;</span>
54
- </pre></a></td></tr><tr><td valign='top'><small>36</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line36'><pre> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Manifest</span><span class="punct">.</span><span class="ident">directories</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">folder</span><span class="punct">|</span>
55
- </pre></a></td></tr><tr><td valign='top'><small>37</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line37'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{folder}</span>/ created</span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}#{folder}</span></span><span class="punct">&quot;</span>
56
- </pre></a></td></tr><tr><td valign='top'><small>38</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line38'><pre> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">mkdir</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}#{folder}</span></span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}#{folder}</span></span><span class="punct">&quot;</span>
57
- </pre></a></td></tr><tr><td valign='top'><small>39</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line39'><pre> <span class="keyword">end</span>
58
- </pre></a></td></tr><tr><td valign='top'><small>40</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line40'><pre> <span class="keyword">end</span>
59
- </pre></a></td></tr><tr><td valign='top'><small>41</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line41'><pre>
60
- </pre></a></td></tr><tr><td valign='top'><small>42</small></td><td valign='top'><ul><li>Score of 7.89 &raquo; flog</li></ul></td><td valign='top'><a name='line42'><pre> <span class="keyword">def </span><span class="method">create_ninjs_lib_file</span>
61
- </pre></a></td></tr><tr><td valign='top'><small>43</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line43'><pre> <span class="ident">ninjs_lib_secretary</span> <span class="punct">=</span> <span class="constant">Sprockets</span><span class="punct">::</span><span class="constant">Secretary</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span>
62
- </pre></a></td></tr><tr><td valign='top'><small>44</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line44'><pre> <span class="symbol">:root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span></span><span class="punct">&quot;,</span>
63
- </pre></a></td></tr><tr><td valign='top'><small>45</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line45'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@config.asset_root}</span></span><span class="punct">&quot;,</span>
64
- </pre></a></td></tr><tr><td valign='top'><small>46</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line46'><pre> <span class="symbol">:load_path</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository</span><span class="punct">&quot;],</span>
65
- </pre></a></td></tr><tr><td valign='top'><small>47</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line47'><pre> <span class="symbol">:source_files</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository/ninjs/core/nin.js</span><span class="punct">&quot;]</span>
66
- </pre></a></td></tr><tr><td valign='top'><small>48</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line48'><pre> <span class="punct">)</span>
67
- </pre></a></td></tr><tr><td valign='top'><small>49</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line49'><pre>
68
- </pre></a></td></tr><tr><td valign='top'><small>50</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line50'><pre> <span class="ident">ninjs_lib_secretary</span><span class="punct">.</span><span class="ident">concatenation</span><span class="punct">.</span><span class="ident">save_to</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>lib/nin.js</span><span class="punct">&quot;</span>
69
- </pre></a></td></tr><tr><td valign='top'><small>51</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line51'><pre>
70
- </pre></a></td></tr><tr><td valign='top'><small>52</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line52'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">lib/nin.js created</span><span class="punct">&quot;</span>
71
- </pre></a></td></tr><tr><td valign='top'><small>53</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line53'><pre> <span class="keyword">end</span>
72
- </pre></a></td></tr><tr><td valign='top'><small>54</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line54'><pre>
73
- </pre></a></td></tr><tr><td valign='top'><small>55</small></td><td valign='top'><ul><li>Score of 7.89 &raquo; flog</li></ul></td><td valign='top'><a name='line55'><pre> <span class="keyword">def </span><span class="method">create_utility_lib_file</span>
74
- </pre></a></td></tr><tr><td valign='top'><small>56</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line56'><pre> <span class="ident">utility_lib_secretary</span> <span class="punct">=</span> <span class="constant">Sprockets</span><span class="punct">::</span><span class="constant">Secretary</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span>
75
- </pre></a></td></tr><tr><td valign='top'><small>57</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line57'><pre> <span class="symbol">:root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span></span><span class="punct">&quot;,</span>
76
- </pre></a></td></tr><tr><td valign='top'><small>58</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line58'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@config.asset_root}</span></span><span class="punct">&quot;,</span>
77
- </pre></a></td></tr><tr><td valign='top'><small>59</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line59'><pre> <span class="symbol">:load_path</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository</span><span class="punct">&quot;],</span>
78
- </pre></a></td></tr><tr><td valign='top'><small>60</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line60'><pre> <span class="symbol">:source_files</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository/ninjs/utilities/all.js</span><span class="punct">&quot;]</span>
79
- </pre></a></td></tr><tr><td valign='top'><small>61</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line61'><pre> <span class="punct">)</span>
80
- </pre></a></td></tr><tr><td valign='top'><small>62</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line62'><pre>
81
- </pre></a></td></tr><tr><td valign='top'><small>63</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line63'><pre> <span class="ident">utility_lib_secretary</span><span class="punct">.</span><span class="ident">concatenation</span><span class="punct">.</span><span class="ident">save_to</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>lib/utilities.js</span><span class="punct">&quot;</span>
82
- </pre></a></td></tr><tr><td valign='top'><small>64</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line64'><pre>
83
- </pre></a></td></tr><tr><td valign='top'><small>65</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line65'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">lib/utilities.js created</span><span class="punct">&quot;</span>
84
- </pre></a></td></tr><tr><td valign='top'><small>66</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line66'><pre> <span class="keyword">end</span>
85
- </pre></a></td></tr><tr><td valign='top'><small>67</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line67'><pre>
86
- </pre></a></td></tr><tr><td valign='top'><small>68</small></td><td valign='top'><ul><li>Score of 20.39 &raquo; flog</li></ul></td><td valign='top'><a name='line68'><pre> <span class="keyword">def </span><span class="method">create_ninjs_application_file</span>
87
- </pre></a></td></tr><tr><td valign='top'><small>69</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line69'><pre> <span class="ident">filename</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>application/<span class="expr">#{@config.app_filename}</span>.js</span><span class="punct">&quot;</span>
88
- </pre></a></td></tr><tr><td valign='top'><small>70</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line70'><pre>
89
- </pre></a></td></tr><tr><td valign='top'><small>71</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line71'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(</span><span class="ident">filename</span><span class="punct">,</span> <span class="punct">&quot;</span><span class="string">w+</span><span class="punct">&quot;)</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
90
- </pre></a></td></tr><tr><td valign='top'><small>72</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line72'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string">//-- Ninjs <span class="expr">#{Time.now.to_s}</span> --//<span class="escape">\n</span></span><span class="punct">&quot;</span>
91
- </pre></a></td></tr><tr><td valign='top'><small>73</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line73'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(&quot;</span><span class="string"><span class="expr">#{@project_path}</span>lib/nin.js</span><span class="punct">&quot;,</span> <span class="punct">'</span><span class="string">r</span><span class="punct">').</span><span class="ident">readlines</span><span class="punct">.</span><span class="ident">join</span><span class="punct">('</span><span class="string"></span><span class="punct">')</span>
92
- </pre></a></td></tr><tr><td valign='top'><small>74</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line74'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>var <span class="expr">#{@config.name}</span> = new NinjsApplication('<span class="expr">#{@config.base_url}</span>', '<span class="expr">#{@config.test_path}</span>');</span><span class="punct">&quot;</span>
93
- </pre></a></td></tr><tr><td valign='top'><small>75</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line75'><pre> <span class="keyword">end</span>
94
- </pre></a></td></tr><tr><td valign='top'><small>76</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line76'><pre> <span class="keyword">end</span>
95
- </pre></a></td></tr><tr><td valign='top'><small>77</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line77'><pre>
96
- </pre></a></td></tr><tr><td valign='top'><small>78</small></td><td valign='top'><ul><li>Score of 13.00 &raquo; flog</li><li>Duplication - calls Ninjs.base_directory 5 times &raquo; reek</li></ul></td><td valign='top'><a name='line78'><pre> <span class="keyword">def </span><span class="method">import_test_files</span>
97
- </pre></a></td></tr><tr><td valign='top'><small>79</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line79'><pre> <span class="constant">FileUtils</span><span class="punct">.</span><span class="ident">cp</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository/ninjs/tests/index.html</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>tests</span><span class="punct">&quot;</span>
98
- </pre></a></td></tr><tr><td valign='top'><small>80</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line80'><pre> <span class="constant">FileUtils</span><span class="punct">.</span><span class="ident">cp</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository/ninjs/tests/ninjs.test.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>tests</span><span class="punct">&quot;</span>
99
- </pre></a></td></tr><tr><td valign='top'><small>81</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line81'><pre> <span class="constant">FileUtils</span><span class="punct">.</span><span class="ident">cp</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository/ninjs/tests/ninjs.utilities.test.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>tests</span><span class="punct">&quot;</span>
100
- </pre></a></td></tr><tr><td valign='top'><small>82</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line82'><pre> <span class="constant">FileUtils</span><span class="punct">.</span><span class="ident">cp</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository/ninjs/tests/qunit/qunit.js</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>tests/qunit</span><span class="punct">&quot;</span>
101
- </pre></a></td></tr><tr><td valign='top'><small>83</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line83'><pre> <span class="constant">FileUtils</span><span class="punct">.</span><span class="ident">cp</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span>/repository/ninjs/tests/qunit/qunit.css</span><span class="punct">&quot;,</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>tests/qunit</span><span class="punct">&quot;</span>
102
- </pre></a></td></tr><tr><td valign='top'><small>84</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line84'><pre> <span class="keyword">end</span>
103
- </pre></a></td></tr><tr><td valign='top'><small>85</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line85'><pre>
104
- </pre></a></td></tr><tr><td valign='top'><small>86</small></td><td valign='top'><ul><li>Score of 9.20 &raquo; flog</li><li>LongMethod - has approx 6 statements &raquo; reek</li></ul></td><td valign='top'><a name='line86'><pre> <span class="keyword">def </span><span class="method">update</span>
105
- </pre></a></td></tr><tr><td valign='top'><small>87</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line87'><pre> <span class="ident">get_updated_modules</span>
106
- </pre></a></td></tr><tr><td valign='top'><small>88</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line88'><pre> <span class="ident">compile_modules</span>
107
- </pre></a></td></tr><tr><td valign='top'><small>89</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line89'><pre> <span class="ident">update_application_file</span>
108
- </pre></a></td></tr><tr><td valign='top'><small>90</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line90'><pre> <span class="ident">compress_application</span> <span class="keyword">if</span> <span class="attribute">@config</span><span class="punct">.</span><span class="ident">output</span> <span class="punct">==</span> <span class="punct">'</span><span class="string">compressed</span><span class="punct">'</span>
109
- </pre></a></td></tr><tr><td valign='top'><small>91</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line91'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[32m&gt;&gt;&gt;<span class="escape">\e</span>[0m application updated</span><span class="punct">&quot;</span> <span class="keyword">unless</span> <span class="attribute">@errors</span>
110
- </pre></a></td></tr><tr><td valign='top'><small>92</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line92'><pre> <span class="attribute">@errors</span> <span class="punct">=</span> <span class="constant">false</span>
111
- </pre></a></td></tr><tr><td valign='top'><small>93</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line93'><pre> <span class="keyword">end</span>
112
- </pre></a></td></tr><tr><td valign='top'><small>94</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line94'><pre>
113
- </pre></a></td></tr><tr><td valign='top'><small>95</small></td><td valign='top'><ul><li>Score of 7.40 &raquo; flog</li></ul></td><td valign='top'><a name='line95'><pre> <span class="keyword">def </span><span class="method">get_directory_script_files</span>
114
- </pre></a></td></tr><tr><td valign='top'><small>96</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line96'><pre> <span class="ident">script_files</span> <span class="punct">=</span> <span class="constant">Array</span><span class="punct">.</span><span class="ident">new</span>
115
- </pre></a></td></tr><tr><td valign='top'><small>97</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line97'><pre> <span class="constant">Dir</span><span class="punct">[&quot;</span><span class="string"><span class="expr">#{@project_path}</span>**/*.js</span><span class="punct">&quot;].</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
116
- </pre></a></td></tr><tr><td valign='top'><small>98</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line98'><pre> <span class="ident">script_files</span> <span class="punct">&lt;&lt;</span> <span class="ident">file</span> <span class="keyword">unless</span> <span class="ident">file</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">application<span class="escape">\/</span>|tests<span class="escape">\/</span></span><span class="punct">/)</span>
117
- </pre></a></td></tr><tr><td valign='top'><small>99</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line99'><pre> <span class="keyword">end</span>
118
- </pre></a></td></tr><tr><td valign='top'><small>100</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line100'><pre> <span class="keyword">end</span>
119
- </pre></a></td></tr><tr><td valign='top'><small>101</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line101'><pre>
120
- </pre></a></td></tr><tr><td valign='top'><small>102</small></td><td valign='top'><ul><li>Score of 7.97 &raquo; flog</li><li>LowCohesion - doesn't depend on instance state &raquo; reek</li><li>LowCohesion - refers to files more than self &raquo; reek</li><li>LowCohesion - refers to timestamped_files more than self &raquo; reek</li></ul></td><td valign='top'><a name='line102'><pre> <span class="keyword">def </span><span class="method">get_files_timestamps</span><span class="punct">(</span><span class="ident">files</span><span class="punct">)</span>
121
- </pre></a></td></tr><tr><td valign='top'><small>103</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line103'><pre> <span class="ident">timestamped_files</span> <span class="punct">=</span> <span class="constant">Hash</span><span class="punct">.</span><span class="ident">new</span>
122
- </pre></a></td></tr><tr><td valign='top'><small>104</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line104'><pre> <span class="ident">files</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
123
- </pre></a></td></tr><tr><td valign='top'><small>105</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line105'><pre> <span class="ident">timestamped_files</span><span class="punct">[&quot;</span><span class="string"><span class="expr">#{file}</span></span><span class="punct">&quot;]</span> <span class="punct">=</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span><span class="ident">file</span><span class="punct">).</span><span class="ident">mtime</span><span class="punct">.</span><span class="ident">to_s</span>
124
- </pre></a></td></tr><tr><td valign='top'><small>106</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line106'><pre> <span class="keyword">end</span>
125
- </pre></a></td></tr><tr><td valign='top'><small>107</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line107'><pre> <span class="ident">timestamped_files</span>
126
- </pre></a></td></tr><tr><td valign='top'><small>108</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line108'><pre> <span class="keyword">end</span>
127
- </pre></a></td></tr><tr><td valign='top'><small>109</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line109'><pre>
128
- </pre></a></td></tr><tr><td valign='top'><small>110</small></td><td valign='top'><ul><li>Score of 10.77 &raquo; flog</li></ul></td><td valign='top'><a name='line110'><pre> <span class="keyword">def </span><span class="method">get_updated_modules</span>
129
- </pre></a></td></tr><tr><td valign='top'><small>111</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line111'><pre> <span class="comment"># TODO actually check the files against a cache</span>
130
- </pre></a></td></tr><tr><td valign='top'><small>112</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line112'><pre> <span class="attribute">@modules</span> <span class="punct">=</span> <span class="constant">Array</span><span class="punct">.</span><span class="ident">new</span>
131
- </pre></a></td></tr><tr><td valign='top'><small>113</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line113'><pre> <span class="constant">Dir</span><span class="punct">[&quot;</span><span class="string"><span class="expr">#{@project_path}</span>modules/*.js</span><span class="punct">&quot;].</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
132
- </pre></a></td></tr><tr><td valign='top'><small>114</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line114'><pre> <span class="ident">module_filename</span> <span class="punct">=</span> <span class="ident">file</span><span class="punct">.</span><span class="ident">gsub</span><span class="punct">(</span><span class="attribute">@project_path</span> <span class="punct">+</span> <span class="punct">'</span><span class="string">modules/</span><span class="punct">',</span> <span class="punct">'</span><span class="string"></span><span class="punct">')</span>
133
- </pre></a></td></tr><tr><td valign='top'><small>115</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line115'><pre> <span class="attribute">@modules</span> <span class="punct">&lt;&lt;</span> <span class="ident">module_filename</span> <span class="keyword">unless</span> <span class="ident">module_filename</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^_</span><span class="punct">/)</span>
134
- </pre></a></td></tr><tr><td valign='top'><small>116</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line116'><pre> <span class="keyword">end</span>
135
- </pre></a></td></tr><tr><td valign='top'><small>117</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line117'><pre> <span class="keyword">end</span>
136
- </pre></a></td></tr><tr><td valign='top'><small>118</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line118'><pre>
137
- </pre></a></td></tr><tr><td valign='top'><small>119</small></td><td valign='top'><ul><li>Score of 4.97 &raquo; flog</li></ul></td><td valign='top'><a name='line119'><pre> <span class="keyword">def </span><span class="method">compile_modules</span>
138
- </pre></a></td></tr><tr><td valign='top'><small>120</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line120'><pre> <span class="attribute">@modules</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">module_file</span><span class="punct">|</span>
139
- </pre></a></td></tr><tr><td valign='top'><small>121</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line121'><pre> <span class="ident">module_filename</span> <span class="punct">=</span> <span class="constant">Ninjs</span><span class="punct">::</span><span class="constant">Helpers</span><span class="punct">.</span><span class="ident">create_module_filename</span> <span class="ident">module_file</span>
140
- </pre></a></td></tr><tr><td valign='top'><small>122</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line122'><pre> <span class="ident">create_module_file</span> <span class="ident">module_file</span><span class="punct">,</span> <span class="ident">module_filename</span>
141
- </pre></a></td></tr><tr><td valign='top'><small>123</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line123'><pre> <span class="keyword">end</span>
142
- </pre></a></td></tr><tr><td valign='top'><small>124</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line124'><pre> <span class="keyword">end</span>
143
- </pre></a></td></tr><tr><td valign='top'><small>125</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line125'><pre>
144
- </pre></a></td></tr><tr><td valign='top'><small>126</small></td><td valign='top'><ul><li>Score of 15.81 &raquo; flog</li><li>LongMethod - has approx 9 statements &raquo; reek</li></ul></td><td valign='top'><a name='line126'><pre> <span class="keyword">def </span><span class="method">create_module_file</span><span class="punct">(</span><span class="ident">module_file</span><span class="punct">,</span> <span class="ident">module_name</span><span class="punct">)</span>
145
- </pre></a></td></tr><tr><td valign='top'><small>127</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line127'><pre> <span class="keyword">begin</span>
146
- </pre></a></td></tr><tr><td valign='top'><small>128</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line128'><pre> <span class="ident">module_src</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>modules/<span class="expr">#{module_file}</span></span><span class="punct">&quot;</span>
147
- </pre></a></td></tr><tr><td valign='top'><small>129</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line129'><pre>
148
- </pre></a></td></tr><tr><td valign='top'><small>130</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line130'><pre> <span class="ident">ninjs_lib_secretary</span> <span class="punct">=</span> <span class="constant">Sprockets</span><span class="punct">::</span><span class="constant">Secretary</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span>
149
- </pre></a></td></tr><tr><td valign='top'><small>131</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line131'><pre> <span class="symbol">:root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span></span><span class="punct">&quot;,</span>
150
- </pre></a></td></tr><tr><td valign='top'><small>132</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line132'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@config.asset_root}</span></span><span class="punct">&quot;,</span>
151
- </pre></a></td></tr><tr><td valign='top'><small>133</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line133'><pre> <span class="symbol">:load_path</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository</span><span class="punct">&quot;],</span>
152
- </pre></a></td></tr><tr><td valign='top'><small>134</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line134'><pre> <span class="symbol">:source_files</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string"><span class="expr">#{module_src}</span></span><span class="punct">&quot;]</span>
153
- </pre></a></td></tr><tr><td valign='top'><small>135</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line135'><pre> <span class="punct">)</span>
154
- </pre></a></td></tr><tr><td valign='top'><small>136</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line136'><pre>
155
- </pre></a></td></tr><tr><td valign='top'><small>137</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line137'><pre> <span class="ident">module_file</span> <span class="punct">=</span> <span class="ident">ninjs_lib_secretary</span><span class="punct">.</span><span class="ident">concatenation</span>
156
- </pre></a></td></tr><tr><td valign='top'><small>138</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line138'><pre> <span class="ident">message</span> <span class="punct">=</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">exists?</span><span class="punct">(&quot;</span><span class="string"><span class="expr">#{@project_path}</span>application/<span class="expr">#{module_name}</span>.js</span><span class="punct">&quot;)</span> <span class="punct">?</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[32m&gt;&gt;&gt;<span class="escape">\e</span>[0m application/<span class="expr">#{module_name}</span>.js updated</span><span class="punct">&quot;</span> <span class="punct">:</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[32m&gt;&gt;&gt;<span class="escape">\e</span>[0m application/<span class="expr">#{module_name}</span>.js created</span><span class="punct">&quot;</span>
157
- </pre></a></td></tr><tr><td valign='top'><small>139</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line139'><pre> <span class="ident">module_file</span><span class="punct">.</span><span class="ident">save_to</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>application/<span class="expr">#{module_name}</span>.js</span><span class="punct">&quot;</span>
158
- </pre></a></td></tr><tr><td valign='top'><small>140</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line140'><pre> <span class="ident">ninjs_lib_secretary</span><span class="punct">.</span><span class="ident">install_assets</span>
159
- </pre></a></td></tr><tr><td valign='top'><small>141</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line141'><pre>
160
- </pre></a></td></tr><tr><td valign='top'><small>142</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line142'><pre> <span class="comment">#puts message</span>
161
- </pre></a></td></tr><tr><td valign='top'><small>143</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line143'><pre> <span class="keyword">rescue</span> <span class="constant">Exception</span> <span class="punct">=&gt;</span> <span class="ident">error</span>
162
- </pre></a></td></tr><tr><td valign='top'><small>144</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line144'><pre> <span class="attribute">@errors</span> <span class="punct">=</span> <span class="constant">true</span>
163
- </pre></a></td></tr><tr><td valign='top'><small>145</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line145'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string">Sprockets error: <span class="expr">#{error.message}</span></span><span class="punct">&quot;</span>
164
- </pre></a></td></tr><tr><td valign='top'><small>146</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line146'><pre> <span class="keyword">end</span>
165
- </pre></a></td></tr><tr><td valign='top'><small>147</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line147'><pre> <span class="keyword">end</span>
166
- </pre></a></td></tr><tr><td valign='top'><small>148</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line148'><pre>
167
- </pre></a></td></tr><tr><td valign='top'><small>149</small></td><td valign='top'><ul><li>Score of 8.28 &raquo; flog</li><li>LongMethod - has approx 6 statements &raquo; reek</li></ul></td><td valign='top'><a name='line149'><pre> <span class="keyword">def </span><span class="method">update_application_file</span>
168
- </pre></a></td></tr><tr><td valign='top'><small>150</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line150'><pre> <span class="ident">application_file</span> <span class="punct">=</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@project_path}</span>application/<span class="expr">#{@config.app_filename}</span>.js</span><span class="punct">&quot;</span>
169
- </pre></a></td></tr><tr><td valign='top'><small>151</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line151'><pre>
170
- </pre></a></td></tr><tr><td valign='top'><small>152</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line152'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(</span><span class="ident">application_file</span><span class="punct">,</span> <span class="punct">&quot;</span><span class="string">w+</span><span class="punct">&quot;)</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span>
171
- </pre></a></td></tr><tr><td valign='top'><small>153</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line153'><pre> <span class="ident">write_dependencies</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
172
- </pre></a></td></tr><tr><td valign='top'><small>154</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line154'><pre> <span class="ident">write_core</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
173
- </pre></a></td></tr><tr><td valign='top'><small>155</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line155'><pre> <span class="ident">write_autoload</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
174
- </pre></a></td></tr><tr><td valign='top'><small>156</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line156'><pre> <span class="keyword">end</span>
175
- </pre></a></td></tr><tr><td valign='top'><small>157</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line157'><pre>
176
- </pre></a></td></tr><tr><td valign='top'><small>158</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line158'><pre> <span class="ident">compile_application_file</span> <span class="ident">application_file</span>
177
- </pre></a></td></tr><tr><td valign='top'><small>159</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line159'><pre> <span class="keyword">end</span>
178
- </pre></a></td></tr><tr><td valign='top'><small>160</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line160'><pre>
179
- </pre></a></td></tr><tr><td valign='top'><small>161</small></td><td valign='top'><ul><li>Score of 10.66 &raquo; flog</li><li>LowCohesion - refers to file more than self &raquo; reek</li></ul></td><td valign='top'><a name='line161'><pre> <span class="keyword">def </span><span class="method">write_dependencies</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
180
- </pre></a></td></tr><tr><td valign='top'><small>162</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line162'><pre> <span class="attribute">@config</span><span class="punct">.</span><span class="ident">dependencies</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">dependency</span><span class="punct">|</span>
181
- </pre></a></td></tr><tr><td valign='top'><small>163</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line163'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string">/*---------- <span class="expr">#{dependency}</span> ----------*/</span><span class="punct">&quot;</span>
182
- </pre></a></td></tr><tr><td valign='top'><small>164</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line164'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>//= require <span class="expr">#{dependency}</span><span class="escape">\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">dependency</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^<span class="escape">\&lt;</span>.+<span class="escape">\&gt;</span>$</span><span class="punct">/)</span>
183
- </pre></a></td></tr><tr><td valign='top'><small>165</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line165'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>//= require <span class="escape">\&quot;</span><span class="expr">#{dependency}</span><span class="escape">\&quot;\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">dependency</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^[^<span class="escape">\&lt;</span>].+|[^<span class="escape">\&gt;</span>]$</span><span class="punct">/)</span>
184
- </pre></a></td></tr><tr><td valign='top'><small>166</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line166'><pre> <span class="keyword">end</span>
185
- </pre></a></td></tr><tr><td valign='top'><small>167</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line167'><pre> <span class="keyword">end</span>
186
- </pre></a></td></tr><tr><td valign='top'><small>168</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line168'><pre>
187
- </pre></a></td></tr><tr><td valign='top'><small>169</small></td><td valign='top'><ul><li>Score of 7.80 &raquo; flog</li></ul></td><td valign='top'><a name='line169'><pre> <span class="keyword">def </span><span class="method">write_core</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
188
- </pre></a></td></tr><tr><td valign='top'><small>170</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line170'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string">/*---------- Ninjs core ../lib/nin.js ----------*/<span class="escape">\n</span></span><span class="punct">&quot;</span>
189
- </pre></a></td></tr><tr><td valign='top'><small>171</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line171'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string">//= require <span class="escape">\&quot;</span>../lib/nin.js<span class="escape">\&quot;\n\n</span></span><span class="punct">&quot;</span>
190
- </pre></a></td></tr><tr><td valign='top'><small>172</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line172'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>var <span class="expr">#{@config.name}</span> = new NinjsApplication('<span class="expr">#{@config.base_url}</span>', '<span class="expr">#{@config.test_path}</span>');<span class="escape">\n\n</span></span><span class="punct">&quot;</span>
191
- </pre></a></td></tr><tr><td valign='top'><small>173</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line173'><pre> <span class="keyword">end</span>
192
- </pre></a></td></tr><tr><td valign='top'><small>174</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line174'><pre>
193
- </pre></a></td></tr><tr><td valign='top'><small>175</small></td><td valign='top'><ul><li>Score of 10.66 &raquo; flog</li><li>LowCohesion - refers to file more than self &raquo; reek</li></ul></td><td valign='top'><a name='line175'><pre> <span class="keyword">def </span><span class="method">write_autoload</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
194
- </pre></a></td></tr><tr><td valign='top'><small>176</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line176'><pre> <span class="attribute">@config</span><span class="punct">.</span><span class="ident">autoload</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">auto_file</span><span class="punct">|</span>
195
- </pre></a></td></tr><tr><td valign='top'><small>177</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line177'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string">/*---------- Ninjs autoload <span class="expr">#{auto_file}</span> ----------*/</span><span class="punct">&quot;</span>
196
- </pre></a></td></tr><tr><td valign='top'><small>178</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line178'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>//= require <span class="expr">#{auto_file}</span><span class="escape">\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">auto_file</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^<span class="escape">\&lt;</span>.+<span class="escape">\&gt;</span>$</span><span class="punct">/)</span>
197
- </pre></a></td></tr><tr><td valign='top'><small>179</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line179'><pre> <span class="ident">file</span> <span class="punct">&lt;&lt;</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\n</span>//= require <span class="escape">\&quot;</span><span class="expr">#{auto_file}</span><span class="escape">\&quot;\n\n</span></span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="ident">auto_file</span><span class="punct">.</span><span class="ident">match</span><span class="punct">(/</span><span class="regex">^[^<span class="escape">\&lt;</span>].+|[^<span class="escape">\&gt;</span>]$</span><span class="punct">/)</span>
198
- </pre></a></td></tr><tr><td valign='top'><small>180</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line180'><pre> <span class="keyword">end</span>
199
- </pre></a></td></tr><tr><td valign='top'><small>181</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line181'><pre> <span class="keyword">end</span>
200
- </pre></a></td></tr><tr><td valign='top'><small>182</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line182'><pre>
201
- </pre></a></td></tr><tr><td valign='top'><small>183</small></td><td valign='top'><ul><li>Score of 13.07 &raquo; flog</li><li>LongMethod - has approx 6 statements &raquo; reek</li></ul></td><td valign='top'><a name='line183'><pre> <span class="keyword">def </span><span class="method">compile_application_file</span><span class="punct">(</span><span class="ident">file</span><span class="punct">)</span>
202
- </pre></a></td></tr><tr><td valign='top'><small>184</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line184'><pre> <span class="keyword">begin</span>
203
- </pre></a></td></tr><tr><td valign='top'><small>185</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line185'><pre> <span class="ident">ninjs_lib_secretary</span> <span class="punct">=</span> <span class="constant">Sprockets</span><span class="punct">::</span><span class="constant">Secretary</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span>
204
- </pre></a></td></tr><tr><td valign='top'><small>186</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line186'><pre> <span class="symbol">:root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{Ninjs.base_directory}</span></span><span class="punct">&quot;,</span>
205
- </pre></a></td></tr><tr><td valign='top'><small>187</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line187'><pre> <span class="symbol">:asset_root</span> <span class="punct">=&gt;</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{@config.asset_root}</span></span><span class="punct">&quot;,</span>
206
- </pre></a></td></tr><tr><td valign='top'><small>188</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line188'><pre> <span class="symbol">:load_path</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string">repository</span><span class="punct">&quot;],</span>
207
- </pre></a></td></tr><tr><td valign='top'><small>189</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line189'><pre> <span class="symbol">:source_files</span> <span class="punct">=&gt;</span> <span class="punct">[&quot;</span><span class="string"><span class="expr">#{file}</span></span><span class="punct">&quot;]</span>
208
- </pre></a></td></tr><tr><td valign='top'><small>190</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line190'><pre> <span class="punct">)</span>
209
- </pre></a></td></tr><tr><td valign='top'><small>191</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line191'><pre>
210
- </pre></a></td></tr><tr><td valign='top'><small>192</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line192'><pre> <span class="ident">application_file</span> <span class="punct">=</span> <span class="ident">ninjs_lib_secretary</span><span class="punct">.</span><span class="ident">concatenation</span>
211
- </pre></a></td></tr><tr><td valign='top'><small>193</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line193'><pre> <span class="ident">ninjs_lib_secretary</span><span class="punct">.</span><span class="ident">install_assets</span>
212
- </pre></a></td></tr><tr><td valign='top'><small>194</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line194'><pre> <span class="ident">application_file</span><span class="punct">.</span><span class="ident">save_to</span> <span class="punct">&quot;</span><span class="string"><span class="expr">#{file}</span></span><span class="punct">&quot;</span>
213
- </pre></a></td></tr><tr><td valign='top'><small>195</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line195'><pre> <span class="keyword">rescue</span> <span class="constant">Exception</span> <span class="punct">=&gt;</span> <span class="ident">error</span>
214
- </pre></a></td></tr><tr><td valign='top'><small>196</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line196'><pre> <span class="attribute">@errors</span> <span class="punct">=</span> <span class="constant">true</span>
215
- </pre></a></td></tr><tr><td valign='top'><small>197</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line197'><pre> <span class="ident">puts</span> <span class="punct">&quot;</span><span class="string"><span class="escape">\e</span>[0;31m!!!<span class="escape">\e</span>[0m Sprockets error: <span class="expr">#{error.message}</span></span><span class="punct">&quot;</span>
216
- </pre></a></td></tr><tr><td valign='top'><small>198</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line198'><pre> <span class="keyword">end</span>
217
- </pre></a></td></tr><tr><td valign='top'><small>199</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line199'><pre> <span class="keyword">end</span>
218
- </pre></a></td></tr><tr><td valign='top'><small>200</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line200'><pre>
219
- </pre></a></td></tr><tr><td valign='top'><small>201</small></td><td valign='top'><ul><li>Score of 18.56 &raquo; flog</li><li>NestedIterators - contains iterators nested 2 deep &raquo; reek</li><li>LongMethod - has approx 7 statements &raquo; reek</li><li>LowCohesion - refers to modules more than self &raquo; reek</li></ul></td><td valign='top'><a name='line201'><pre> <span class="keyword">def </span><span class="method">compress_application</span>
220
- </pre></a></td></tr><tr><td valign='top'><small>202</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line202'><pre> <span class="ident">application</span> <span class="punct">=</span> <span class="attribute">@project_path</span> <span class="punct">+</span> <span class="punct">'</span><span class="string">application</span><span class="punct">'</span>
221
- </pre></a></td></tr><tr><td valign='top'><small>203</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line203'><pre> <span class="ident">modules</span> <span class="punct">=</span> <span class="constant">Dir</span><span class="punct">.</span><span class="ident">entries</span><span class="punct">(</span><span class="ident">application</span><span class="punct">)</span>
222
- </pre></a></td></tr><tr><td valign='top'><small>204</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line204'><pre> <span class="ident">modules</span><span class="punct">.</span><span class="ident">reject!</span> <span class="punct">{</span> <span class="punct">|</span><span class="ident">file</span><span class="punct">|</span> <span class="ident">file</span> <span class="punct">=~</span> <span class="punct">/</span><span class="regex">^<span class="escape">\.</span></span><span class="punct">/</span> <span class="punct">}</span>
223
- </pre></a></td></tr><tr><td valign='top'><small>205</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line205'><pre>
224
- </pre></a></td></tr><tr><td valign='top'><small>206</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line206'><pre> <span class="ident">modules</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">module_file</span><span class="punct">|</span>
225
- </pre></a></td></tr><tr><td valign='top'><small>207</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line207'><pre> <span class="ident">full_path</span> <span class="punct">=</span> <span class="ident">application</span> <span class="punct">+</span> <span class="punct">&quot;</span><span class="string">/<span class="expr">#{module_file}</span></span><span class="punct">&quot;</span>
226
- </pre></a></td></tr><tr><td valign='top'><small>208</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line208'><pre> <span class="ident">uncompressed</span> <span class="punct">=</span> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(</span><span class="ident">full_path</span><span class="punct">,</span> <span class="punct">&quot;</span><span class="string">r</span><span class="punct">&quot;).</span><span class="ident">readlines</span><span class="punct">.</span><span class="ident">join</span><span class="punct">('</span><span class="string"></span><span class="punct">')</span>
227
- </pre></a></td></tr><tr><td valign='top'><small>209</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line209'><pre> <span class="constant">File</span><span class="punct">.</span><span class="ident">open</span><span class="punct">(</span><span class="ident">full_path</span><span class="punct">,</span> <span class="punct">&quot;</span><span class="string">w+</span><span class="punct">&quot;)</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">module_file</span><span class="punct">|</span>
228
- </pre></a></td></tr><tr><td valign='top'><small>210</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line210'><pre> <span class="ident">module_file</span> <span class="punct">&lt;&lt;</span> <span class="constant">JSMin</span><span class="punct">.</span><span class="ident">minify</span><span class="punct">(</span><span class="ident">uncompressed</span><span class="punct">)</span>
229
- </pre></a></td></tr><tr><td valign='top'><small>211</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line211'><pre> <span class="keyword">end</span>
230
- </pre></a></td></tr><tr><td valign='top'><small>212</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line212'><pre> <span class="keyword">end</span>
231
- </pre></a></td></tr><tr><td valign='top'><small>213</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line213'><pre> <span class="keyword">end</span>
232
- </pre></a></td></tr><tr><td valign='top'><small>214</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line214'><pre>
233
- </pre></a></td></tr><tr><td valign='top'><small>215</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line215'><pre> <span class="keyword">end</span>
234
- </pre></a></td></tr><tr><td valign='top'><small>216</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line216'><pre> <span class="comment"># class Project</span>
235
- </pre></a></td></tr><tr><td valign='top'><small>217</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line217'><pre><span class="keyword">end</span>
236
- </pre></a></td></tr><tr><td valign='top'><small>218</small></td><td valign='top'>&nbsp;</td><td valign='top'><a name='line218'><pre><span class="comment">#module Ninjs</span></pre></a></td></tr><table></body></html>