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,11 +0,0 @@
1
- var g = new Bluff.Line('graph', "1000x600");
2
- g.theme_37signals();
3
- g.tooltips = true;
4
- g.title_font_size = "24px"
5
- g.legend_font_size = "12px"
6
- g.marker_font_size = "10px"
7
-
8
- g.title = 'Rcov: code coverage';
9
- g.data('rcov', [0.0]);
10
- g.labels = {"0":"3/5"};
11
- g.draw();
@@ -1,1294 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
5
- <meta content='en' http-equiv='Content-Language' />
6
- <title>metrics</title>
7
- <style>
8
- /*
9
- Copyright (c) 2008, Yahoo! Inc. All rights reserved.
10
- Code licensed under the BSD License:
11
- http://developer.yahoo.net/yui/license.txt
12
- version: 2.5.2
13
- */
14
- html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym {border:0;font-variant:normal;}sup {vertical-align:text-top;}sub {vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}
15
-
16
- /* --------------------------------------------------------------
17
-
18
- buttons.css
19
- * Gives you some great CSS-only buttons.
20
-
21
- Created by Kevin Hale [particletree.com]
22
- * particletree.com/features/rediscovering-the-button-element
23
-
24
- See Readme.txt in this folder for instructions.
25
-
26
- -------------------------------------------------------------- */
27
-
28
- button {
29
- display:block;
30
- float:left;
31
- margin:0 0.583em 0.667em 0;
32
- padding:5px 10px 5px 7px; /* Links */
33
-
34
- border:1px solid #dedede;
35
- border-top:1px solid #eee;
36
- border-left:1px solid #eee;
37
-
38
- background-color:#f5f5f5;
39
- font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
40
- font-size:100%;
41
- line-height:130%;
42
- text-decoration:none;
43
- font-weight:bold;
44
- color:#565656;
45
- cursor:pointer;
46
- }
47
- button {
48
- width:auto;
49
- overflow:visible;
50
- padding:4px 10px 3px 7px; /* IE6 */
51
- }
52
- button[type] {
53
- padding:4px 10px 4px 7px; /* Firefox */
54
- line-height:17px; /* Safari */
55
- }
56
- *:first-child+html button[type] {
57
- padding:4px 10px 3px 7px; /* IE7 */
58
- }
59
- button img {
60
- margin:0 3px -3px 0 !important;
61
- padding:0;
62
- border:none;
63
- width:16px;
64
- height:16px;
65
- float:none;
66
- }
67
-
68
-
69
- /* Button colors
70
- -------------------------------------------------------------- */
71
-
72
- /* Standard */
73
- button:hover {
74
- background-color:#dff4ff;
75
- border:1px solid #c2e1ef;
76
- color:#336699;
77
- }
78
-
79
- /* Positive */
80
- body .positive {
81
- color:#529214;
82
- }
83
- button.positive:hover {
84
- background-color:#E6EFC2;
85
- border:1px solid #C6D880;
86
- color:#529214;
87
- }
88
-
89
- /* Negative */
90
- body .negative {
91
- color:#d12f19;
92
- }
93
- button.negative:hover {
94
- background:#fbe3e4;
95
- border:1px solid #fbc2c4;
96
- color:#d12f19;
97
- }
98
-
99
- html {
100
- background-color: #e0e0e0; }
101
-
102
- body {
103
- font-size: 100%;
104
- font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
105
- color: #333333; }
106
-
107
- a {
108
- color: #ed1556;
109
- text-decoration: none; }
110
- a:hover {
111
- color: #ffffff;
112
- background-color: #ed1556; }
113
-
114
- #header, #content, #footer {
115
- margin: 0 auto;
116
- background: #eeeeee;
117
- padding: 0 2em;
118
- z-index: 0;
119
- position: relative;
120
- font-size: 1em; }
121
-
122
- #header {
123
- background: #ffffff; }
124
- #header h1 {
125
- font-weight: bold;
126
- font-size: 1.5em; }
127
- #header address.watermark {
128
- position: absolute;
129
- font-weight: bold;
130
- right: 3em;
131
- top: 0;
132
- font-size: .75em;
133
- color: #cccccc; }
134
- #header address.watermark a {
135
- color: #cccccc;
136
- font-weight: bold;
137
- font-size: 2em; }
138
- #header address.watermark a:hover {
139
- background: transparent;
140
- color: #aaaaaa; }
141
-
142
- #content {
143
- padding-top: 1em;
144
- padding-bottom: 2em; }
145
- #content strong {
146
- font-weight: bold; }
147
- #content em {
148
- font-style: italic; }
149
- #content h1, #content h2, #content h3, #content h4, #content h5, #content h6 {
150
- color: #4e4e4e; }
151
- #content h1 {
152
- font-size: 2em;
153
- font-weight: bold;
154
- margin-bottom: .75em;
155
- padding: .25em 0;
156
- line-height: 1.2;
157
- border-bottom: 1px solid #c0c0c0; }
158
- #content h2 {
159
- font-weight: bold;
160
- font-size: 1.5em;
161
- margin: 1em 0 .2em; }
162
- #content h3 {
163
- font-weight: bold;
164
- font-size: 1.25em;
165
- margin: .25em 0; }
166
- #content h4, #content h5, #content h6 {
167
- font-weight: bold;
168
- margin-top: .5em; }
169
- #content code, #content pre, #content textarea, #content input {
170
- font-family: Monaco, Deja Vu Sans Mono, Inconsolata, Consolas, monospace; }
171
- #content form p {
172
- margin-top: 1em;
173
- position: relative; }
174
- #content form p.checkbox label {
175
- margin-top: 0 !important; }
176
- #content form input.text, #content form textarea {
177
- width: 30em;
178
- padding: .2em .4em;
179
- color: #4e4e4e; }
180
- #content form input.text {
181
- height: 1.4em; }
182
- #content form label {
183
- float: left;
184
- display: block;
185
- margin-top: .5em;
186
- width: 8em;
187
- margin-right: .75em; }
188
- #content form .with_errors label {
189
- background: red;
190
- color: white;
191
- position: relative;
192
- top: -.7em; }
193
- #content form .with_errors.required label {
194
- position: static;
195
- margin-right: .25em;
196
- padding: 0 .2em; }
197
- #content form .with_errors input, #content form .with_errors textarea {
198
- border: 2px solid #f22;
199
- background: #fee;
200
- color: #222222; }
201
- #content form .required label {
202
- float: none;
203
- display: block;
204
- width: auto;
205
- position: relative;
206
- font-weight: bold;
207
- margin-top: 1em;
208
- text-indent: -.65em; }
209
- #content form .required label:before {
210
- content: "* ";
211
- color: #ed1556; }
212
- #content form .required input.text {
213
- width: 25.6em;
214
- font-size: 24px;
215
- font-weight: bold; }
216
- #content form .normal {
217
- margin-top: 2em; }
218
- #content form h2.notifier label {
219
- float: none;
220
- width: auto;
221
- margin-right: 0; }
222
- #content form h2.notifier label .warning {
223
- font-size: .5em;
224
- font-weight: normal;
225
- color: #999999; }
226
- #content form fieldset {
227
- padding-bottom: 1em;
228
- margin-left: 1.35em;
229
- border-bottom: 1px solid #c0c0c0;
230
- margin-bottom: 1em; }
231
- #content form fieldset h3 {
232
- margin-top: 1em;
233
- margin-bottom: 0; }
234
- #content form fieldset p.normal {
235
- margin-top: 1em; }
236
- #content form fieldset p label {
237
- width: 6.7em; }
238
- #content form p.submit {
239
- margin-top: 2em; }
240
- #content form p.submit:after {
241
- display: block;
242
- clear: both;
243
- float: none;
244
- content: ".";
245
- text-indent: -9999em;
246
- text-align: left; }
247
- #content form p.submit.destroy button, #content form p.submit.manual-build button {
248
- float: none;
249
- display: inline; }
250
- #content form p.submit.manual-build button {
251
- margin-right: 0; }
252
- #content #build form, #content #last_build form {
253
- font-size: .75em; }
254
- #content #build form p.submit, #content #last_build form p.submit {
255
- margin: 0;
256
- padding: 0;
257
- position: absolute;
258
- right: .5em;
259
- top: 1.25em; }
260
- #content .blank_slate p, #content .error p {
261
- position: relative;
262
- top: .3em; }
263
- #content .blank_slate h1, #content .error h1 {
264
- border-width: 0;
265
- margin: 0;
266
- padding: 0; }
267
- #content .blank_slate h1 button, #content .error h1 button {
268
- float: none;
269
- border: 0 none;
270
- background: transparent;
271
- display: inline;
272
- color: #ed1556;
273
- padding: 0.25em 0;
274
- margin: 0; }
275
- #content .blank_slate h1 button:hover, #content .error h1 button:hover {
276
- background: #ed1556;
277
- color: #ffffff; }
278
- #content .error dt {
279
- margin-top: 1.4em;
280
- margin-bottom: .3em;
281
- font-size: 1.75em;
282
- font-family: Georgia, Times New Roman, serif; }
283
- #content .error dd {
284
- line-height: 1.4; }
285
- #content .error .backtrace {
286
- margin: 1em 0;
287
- overflow: scroll;
288
- height: 30em;
289
- border: 1px solid #c0c0c0;
290
- line-height: 1.6; }
291
- #content #projects {
292
- margin: 1em 0 2em;
293
- border-top: 1px solid #c0c0c0; }
294
- #content #projects li {
295
- position: relative;
296
- border-bottom: 1px solid #c0c0c0; }
297
- #content #projects li.odd {
298
- background: #e6e6e6; }
299
- #content #projects li.building {
300
- background: transparent url(/spinner.gif) no-repeat scroll right; }
301
- #content #projects li a {
302
- font-size: 2em;
303
- padding: .25em;
304
- line-height: 1.2;
305
- font-weight: bold;
306
- display: block; }
307
- #content #projects li a.success {
308
- color: #337022; }
309
- #content #projects li a.failed {
310
- color: #ff1100; }
311
- #content #projects li .meta {
312
- position: absolute;
313
- right: .6em;
314
- top: 1.5em;
315
- font-size: 0.8em;
316
- color: #999999;
317
- text-align: right; }
318
- #content #projects li.building .meta {
319
- right: 1.6em; }
320
- #content #projects li.success .meta {
321
- color: #337022; }
322
- #content #projects li.failed .meta {
323
- color: #ff1100; }
324
- #content #previous_builds li a {
325
- display: block;
326
- padding: .25em;
327
- margin-bottom: .25em;
328
- border-width: 1px;
329
- border-style: solid; }
330
- #content #previous_builds li a strong {
331
- font-size: 1.3em; }
332
- #content #previous_builds li a .attribution {
333
- font-size: .9em; }
334
- #content #projects li.success a, #content #previous_builds li.success a {
335
- background-color: #bbf8aa;
336
- border-color: #99d688;
337
- color: #337022; }
338
- #content #projects li.success a .attribution, #content #previous_builds li.success a .attribution {
339
- color: #77b466; }
340
- #content #projects li.success a:hover, #content #previous_builds li.success a:hover {
341
- background-color: #ddffcc; }
342
- #content #projects li.failed a, #content #previous_builds li.failed a {
343
- background-color: #ffbbaa;
344
- border-color: #dd9988;
345
- color: #ff1100; }
346
- #content #projects li.failed a .attribution, #content #previous_builds li.failed a .attribution {
347
- color: #bb7766; }
348
- #content #projects li.failed a:hover, #content #previous_builds li.failed a:hover {
349
- background-color: #ffddcc; }
350
- #content #build, #content #last_build {
351
- position: relative; }
352
- #content #build h1, #content #build blockquote, #content #last_build h1, #content #last_build blockquote {
353
- border-width: 0 1px;
354
- border-style: solid; }
355
- #content #build h1, #content #last_build h1 {
356
- border-top-width: 1px; }
357
- #content #build blockquote, #content #last_build blockquote {
358
- bottom-bottom-width: 1px;
359
- line-height: 1.4; }
360
- #content #build.success h1, #content #build.success blockquote, #content #last_build.success h1, #content #last_build.success blockquote {
361
- background-color: #bbf8aa;
362
- border-color: #99d688 #ccffbb #ccffbb #99d688; }
363
- #content #build.success h1, #content #last_build.success h1 {
364
- color: #337022; }
365
- #content #build.success .meta, #content #last_build.success .meta {
366
- color: #77b466; }
367
- #content #build.failed h1, #content #build.failed blockquote, #content #last_build.failed h1, #content #last_build.failed blockquote {
368
- background-color: #ffbbaa;
369
- border-color: #dd9988 #ffccbb #ffccbb #dd9988; }
370
- #content #build.failed h1, #content #last_build.failed h1 {
371
- color: #ff1100; }
372
- #content #build.failed .meta, #content #last_build.failed .meta {
373
- color: #bb7766; }
374
- #content #build h1, #content #last_build h1 {
375
- margin-top: .5em;
376
- margin-bottom: 0;
377
- padding: .25em;
378
- color: #337022; }
379
- #content #build blockquote, #content #last_build blockquote {
380
- padding: .75em;
381
- margin-bottom: 2em; }
382
- #content #build blockquote .meta, #content #last_build blockquote .meta {
383
- margin-top: 1em;
384
- display: block;
385
- font-size: .9em; }
386
- #content #build pre.output, #content #last_build pre.output {
387
- background: #111;
388
- color: #fff;
389
- padding: .5em;
390
- overflow: auto;
391
- max-height: 50em;
392
- font-size: .825em; }
393
- #content #build pre.output .color30, #content #last_build pre.output .color30 {
394
- color: #333; }
395
- #content #build pre.output .color31, #content #last_build pre.output .color31 {
396
- color: #e33; }
397
- #content #build pre.output .color32, #content #last_build pre.output .color32 {
398
- color: #3e3; }
399
- #content #build pre.output .color33, #content #last_build pre.output .color33 {
400
- color: #ee3; }
401
- #content #build pre.output .color34, #content #last_build pre.output .color34 {
402
- color: #33e; }
403
- #content #build pre.output .color35, #content #last_build pre.output .color35 {
404
- color: #e3e; }
405
- #content #build pre.output .color36, #content #last_build pre.output .color36 {
406
- color: #3ee; }
407
- #content #build pre.output .color37, #content #last_build pre.output .color37 {
408
- color: #fff; }
409
- #content #push_path {
410
- display: block;
411
- margin-top: 1em;
412
- margin-left: 2em; }
413
-
414
- a.success {
415
- color: #bbf8aa; }
416
- a.success:hover {
417
- background-color: #bbf8aa;
418
- color: white; }
419
- a.failed {
420
- color: #ffbbaa; }
421
- a.failed:hover {
422
- background-color: #ffbbaa;
423
- color: white; }
424
-
425
- #footer {
426
- padding: 1.5em 2.5em;
427
- border-top: 1px solid #ccc;
428
- font-size: .8em;
429
- color: #666;
430
- text-align: right; }
431
- #footer strong {
432
- font-weight: bold; }
433
-
434
- table {
435
- margin-top: 20px;
436
- border-collapse: collapse;
437
- border: 1px solid #666;
438
- background: #fff;
439
- margin-bottom: 20px;
440
- }
441
-
442
- table tr.light {
443
- background: #fff;
444
- }
445
-
446
- table tr.dark {
447
- background: #f9f9f9;
448
- }
449
-
450
- table tr:hover {
451
- background: #FFFFC0;
452
- }
453
-
454
- table td, table th {
455
- padding: 4px;
456
- font-size: 11px;
457
- }
458
- table th {
459
- text-align: center;
460
- color: #337022;
461
- background: #DDFFCC;
462
- font-weight: bold;
463
- border: #99D688 1px solid;
464
- }
465
-
466
- table td {
467
- border: #d0d0d0 1px solid;
468
- }
469
-
470
- table td.score {
471
- text-align: right;
472
- }
473
-
474
- .warning {
475
- background: yellow;
476
- }
477
- .rcov_code td {
478
- border-bottom: 1px solid #ddd ;
479
- padding: 0;
480
- margin: 0;
481
- }
482
- .rcov_code tr {
483
- border: 0px;
484
- padding:0px;
485
- margin: 0px;
486
- }
487
- .rcov_code pre {
488
- border: 0px;
489
- padding: 0px;
490
- margin: 0px;
491
- }
492
- .rcov_run {}
493
- .rcov_not_run {
494
- background-color: #d88;
495
- }
496
- .rcov_run a, .rcov_not_run a {
497
- text-decoration: none;
498
- }
499
- .rcov_run a {
500
- color: #333;
501
- }
502
- .rcov_not_run a {
503
- color: #000;
504
- }
505
- .rcov_overflow {
506
- overflow: auto;
507
- font-size: 50%;
508
- }
509
-
510
- .bluff-tooltip {
511
- background: #fff;
512
- border: 1px solid #d1edf5;
513
- padding: 8px 8px 6px;
514
- }
515
- .bluff-tooltip .color {
516
- display: block;
517
- height: 4px;
518
- width: 30px;
519
- margin: 0 0 4px;
520
- overflow: hidden;
521
- }
522
- .bluff-tooltip .data {
523
- font-weight: bold;
524
- }
525
-
526
- </style>
527
- <link REL="SHORTCUT ICON" HREF="/favicon.ico">
528
- <script language="javascript" src="js-class.js" type="text/javascript"></script>
529
- <script language="javascript" src="bluff-min.js" type="text/javascript"></script>
530
- <script language="javascript" src="excanvas.js" type="text/javascript"></script>
531
- </head>
532
- <body>
533
- <div id='header'>
534
- <h1><a href="/">metrics</a> | <a href="index.html">ninjs</a></h1>
535
- <address class='watermark'>
536
- built with
537
- <a href='http://metric-fu.rubyforge.org/'>metric-fu</a>
538
- </address>
539
- </div>
540
- <div id='content'>
541
- <h3>Reek Results</h3>
542
-
543
- <p><a href="http://reek.rubyforge.org/">Reek</a> detects common code smells in ruby code.</p>
544
-
545
-
546
-
547
- <canvas id="graph"></canvas>
548
- <script language="javascript" src="reek.js?1299355612" type="text/javascript"></script>
549
-
550
-
551
- <table>
552
- <tr>
553
- <th>File Path</th>
554
- <th>Method</th>
555
- <th>Description</th>
556
- <th>Type</th>
557
- </tr>
558
-
559
-
560
-
561
- <tr class='light'>
562
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs.rb'>lib/ninjs.rb</a></td>
563
- <td>
564
- Ninjs#base_directory
565
- </td>
566
- <td>
567
- doesn't depend on instance state
568
- </td>
569
- <td>
570
- LowCohesion
571
- </td>
572
- </tr>
573
-
574
-
575
- <tr class='dark'>
576
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs.rb'>lib/ninjs.rb</a></td>
577
- <td>
578
- Ninjs#lib_directory
579
- </td>
580
- <td>
581
- doesn't depend on instance state
582
- </td>
583
- <td>
584
- LowCohesion
585
- </td>
586
- </tr>
587
-
588
-
589
-
590
-
591
- <tr class='light'>
592
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
593
- <td>
594
- Ninjs::Command#create
595
- </td>
596
- <td>
597
- has boolean parameter 'directory'
598
- </td>
599
- <td>
600
- ControlCouple
601
- </td>
602
- </tr>
603
-
604
-
605
- <tr class='dark'>
606
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
607
- <td>
608
- Ninjs::Command#create
609
- </td>
610
- <td>
611
- is controlled by argument directory
612
- </td>
613
- <td>
614
- ControlCouple
615
- </td>
616
- </tr>
617
-
618
-
619
- <tr class='light'>
620
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
621
- <td>
622
- Ninjs::Command#generate
623
- </td>
624
- <td>
625
- calls ((project.config.name + ".") + name) 4 times
626
- </td>
627
- <td>
628
- Duplication
629
- </td>
630
- </tr>
631
-
632
-
633
- <tr class='dark'>
634
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
635
- <td>
636
- Ninjs::Command#generate
637
- </td>
638
- <td>
639
- calls (project.config.name + ".") 4 times
640
- </td>
641
- <td>
642
- Duplication
643
- </td>
644
- </tr>
645
-
646
-
647
- <tr class='light'>
648
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
649
- <td>
650
- Ninjs::Command#generate
651
- </td>
652
- <td>
653
- calls name.downcase 11 times
654
- </td>
655
- <td>
656
- Duplication
657
- </td>
658
- </tr>
659
-
660
-
661
- <tr class='dark'>
662
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
663
- <td>
664
- Ninjs::Command#generate
665
- </td>
666
- <td>
667
- calls project.config 5 times
668
- </td>
669
- <td>
670
- Duplication
671
- </td>
672
- </tr>
673
-
674
-
675
- <tr class='light'>
676
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
677
- <td>
678
- Ninjs::Command#generate
679
- </td>
680
- <td>
681
- calls project.config.name 5 times
682
- </td>
683
- <td>
684
- Duplication
685
- </td>
686
- </tr>
687
-
688
-
689
- <tr class='dark'>
690
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
691
- <td>
692
- Ninjs::Command#generate
693
- </td>
694
- <td>
695
- has 6 parameters
696
- </td>
697
- <td>
698
- LongParameterList
699
- </td>
700
- </tr>
701
-
702
-
703
- <tr class='light'>
704
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
705
- <td>
706
- Ninjs::Command#generate
707
- </td>
708
- <td>
709
- has approx 16 statements
710
- </td>
711
- <td>
712
- LongMethod
713
- </td>
714
- </tr>
715
-
716
-
717
- <tr class='dark'>
718
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
719
- <td>
720
- Ninjs::Command#generate
721
- </td>
722
- <td>
723
- has boolean parameter 'create_elements'
724
- </td>
725
- <td>
726
- ControlCouple
727
- </td>
728
- </tr>
729
-
730
-
731
- <tr class='light'>
732
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
733
- <td>
734
- Ninjs::Command#generate
735
- </td>
736
- <td>
737
- has boolean parameter 'create_models'
738
- </td>
739
- <td>
740
- ControlCouple
741
- </td>
742
- </tr>
743
-
744
-
745
- <tr class='dark'>
746
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
747
- <td>
748
- Ninjs::Command#generate
749
- </td>
750
- <td>
751
- has boolean parameter 'elements'
752
- </td>
753
- <td>
754
- ControlCouple
755
- </td>
756
- </tr>
757
-
758
-
759
- <tr class='light'>
760
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
761
- <td>
762
- Ninjs::Command#generate
763
- </td>
764
- <td>
765
- has boolean parameter 'models'
766
- </td>
767
- <td>
768
- ControlCouple
769
- </td>
770
- </tr>
771
-
772
-
773
- <tr class='dark'>
774
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
775
- <td>
776
- Ninjs::Command#generate
777
- </td>
778
- <td>
779
- is controlled by argument elements
780
- </td>
781
- <td>
782
- ControlCouple
783
- </td>
784
- </tr>
785
-
786
-
787
- <tr class='light'>
788
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
789
- <td>
790
- Ninjs::Command#generate
791
- </td>
792
- <td>
793
- is controlled by argument models
794
- </td>
795
- <td>
796
- ControlCouple
797
- </td>
798
- </tr>
799
-
800
-
801
- <tr class='dark'>
802
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
803
- <td>
804
- Ninjs::Command#generate
805
- </td>
806
- <td>
807
- refers to name more than self
808
- </td>
809
- <td>
810
- LowCohesion
811
- </td>
812
- </tr>
813
-
814
-
815
- <tr class='light'>
816
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
817
- <td>
818
- Ninjs::Command#watch
819
- </td>
820
- <td>
821
- calls project.update 3 times
822
- </td>
823
- <td>
824
- Duplication
825
- </td>
826
- </tr>
827
-
828
-
829
- <tr class='dark'>
830
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
831
- <td>
832
- Ninjs::Command#watch
833
- </td>
834
- <td>
835
- contains iterators nested 4 deep
836
- </td>
837
- <td>
838
- NestedIterators
839
- </td>
840
- </tr>
841
-
842
-
843
- <tr class='light'>
844
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
845
- <td>
846
- Ninjs::Command#watch
847
- </td>
848
- <td>
849
- has approx 19 statements
850
- </td>
851
- <td>
852
- LongMethod
853
- </td>
854
- </tr>
855
-
856
-
857
- <tr class='dark'>
858
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/command.rb'>lib/ninjs/command.rb</a></td>
859
- <td>
860
- Ninjs::Command#watch
861
- </td>
862
- <td>
863
- has the variable name 'g'
864
- </td>
865
- <td>
866
- UncommunicativeName
867
- </td>
868
- </tr>
869
-
870
-
871
-
872
-
873
- <tr class='light'>
874
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
875
- <td>
876
- Ninjs::Configuration
877
- </td>
878
- <td>
879
- has at least 10 instance variables
880
- </td>
881
- <td>
882
- LargeClass
883
- </td>
884
- </tr>
885
-
886
-
887
- <tr class='dark'>
888
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
889
- <td>
890
- Ninjs::Configuration
891
- </td>
892
- <td>
893
- has no descriptive comment
894
- </td>
895
- <td>
896
- IrresponsibleModule
897
- </td>
898
- </tr>
899
-
900
-
901
- <tr class='light'>
902
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
903
- <td>
904
- Ninjs::Configuration#conf_content
905
- </td>
906
- <td>
907
- doesn't depend on instance state
908
- </td>
909
- <td>
910
- LowCohesion
911
- </td>
912
- </tr>
913
-
914
-
915
- <tr class='dark'>
916
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
917
- <td>
918
- Ninjs::Configuration#conf_content
919
- </td>
920
- <td>
921
- refers to options more than self
922
- </td>
923
- <td>
924
- LowCohesion
925
- </td>
926
- </tr>
927
-
928
-
929
- <tr class='light'>
930
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
931
- <td>
932
- Ninjs::Configuration#read
933
- </td>
934
- <td>
935
- calls config["name"] twice
936
- </td>
937
- <td>
938
- Duplication
939
- </td>
940
- </tr>
941
-
942
-
943
- <tr class='dark'>
944
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/configuration.rb'>lib/ninjs/configuration.rb</a></td>
945
- <td>
946
- Ninjs::Configuration#read
947
- </td>
948
- <td>
949
- has approx 9 statements
950
- </td>
951
- <td>
952
- LongMethod
953
- </td>
954
- </tr>
955
-
956
-
957
-
958
-
959
-
960
-
961
- <tr class='light'>
962
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/helpers.rb'>lib/ninjs/helpers.rb</a></td>
963
- <td>
964
- Ninjs::Helpers#create_module_filename
965
- </td>
966
- <td>
967
- doesn't depend on instance state
968
- </td>
969
- <td>
970
- LowCohesion
971
- </td>
972
- </tr>
973
-
974
-
975
- <tr class='dark'>
976
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/helpers.rb'>lib/ninjs/helpers.rb</a></td>
977
- <td>
978
- Ninjs::Helpers#create_module_filename
979
- </td>
980
- <td>
981
- refers to module_filename more than self
982
- </td>
983
- <td>
984
- LowCohesion
985
- </td>
986
- </tr>
987
-
988
-
989
- <tr class='light'>
990
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/helpers.rb'>lib/ninjs/helpers.rb</a></td>
991
- <td>
992
- Ninjs::Helpers#create_module_filename
993
- </td>
994
- <td>
995
- refers to module_name more than self
996
- </td>
997
- <td>
998
- LowCohesion
999
- </td>
1000
- </tr>
1001
-
1002
-
1003
- <tr class='dark'>
1004
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/helpers.rb'>lib/ninjs/helpers.rb</a></td>
1005
- <td>
1006
- Ninjs::Helpers#create_module_filename
1007
- </td>
1008
- <td>
1009
- refers to piece more than self
1010
- </td>
1011
- <td>
1012
- LowCohesion
1013
- </td>
1014
- </tr>
1015
-
1016
-
1017
- <tr class='light'>
1018
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/helpers.rb'>lib/ninjs/helpers.rb</a></td>
1019
- <td>
1020
- Ninjs::Helpers#create_module_filename
1021
- </td>
1022
- <td>
1023
- refers to split more than self
1024
- </td>
1025
- <td>
1026
- LowCohesion
1027
- </td>
1028
- </tr>
1029
-
1030
-
1031
-
1032
-
1033
-
1034
-
1035
- <tr class='dark'>
1036
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1037
- <td>
1038
- Ninjs::Project
1039
- </td>
1040
- <td>
1041
- has no descriptive comment
1042
- </td>
1043
- <td>
1044
- IrresponsibleModule
1045
- </td>
1046
- </tr>
1047
-
1048
-
1049
- <tr class='light'>
1050
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1051
- <td>
1052
- Ninjs::Project#add_slashes
1053
- </td>
1054
- <td>
1055
- doesn't depend on instance state
1056
- </td>
1057
- <td>
1058
- LowCohesion
1059
- </td>
1060
- </tr>
1061
-
1062
-
1063
- <tr class='dark'>
1064
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1065
- <td>
1066
- Ninjs::Project#add_slashes
1067
- </td>
1068
- <td>
1069
- refers to dir more than self
1070
- </td>
1071
- <td>
1072
- LowCohesion
1073
- </td>
1074
- </tr>
1075
-
1076
-
1077
- <tr class='light'>
1078
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1079
- <td>
1080
- Ninjs::Project#compile_application_file
1081
- </td>
1082
- <td>
1083
- has approx 6 statements
1084
- </td>
1085
- <td>
1086
- LongMethod
1087
- </td>
1088
- </tr>
1089
-
1090
-
1091
- <tr class='dark'>
1092
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1093
- <td>
1094
- Ninjs::Project#compress_application
1095
- </td>
1096
- <td>
1097
- contains iterators nested 2 deep
1098
- </td>
1099
- <td>
1100
- NestedIterators
1101
- </td>
1102
- </tr>
1103
-
1104
-
1105
- <tr class='light'>
1106
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1107
- <td>
1108
- Ninjs::Project#compress_application
1109
- </td>
1110
- <td>
1111
- has approx 7 statements
1112
- </td>
1113
- <td>
1114
- LongMethod
1115
- </td>
1116
- </tr>
1117
-
1118
-
1119
- <tr class='dark'>
1120
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1121
- <td>
1122
- Ninjs::Project#compress_application
1123
- </td>
1124
- <td>
1125
- refers to modules more than self
1126
- </td>
1127
- <td>
1128
- LowCohesion
1129
- </td>
1130
- </tr>
1131
-
1132
-
1133
- <tr class='light'>
1134
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1135
- <td>
1136
- Ninjs::Project#create
1137
- </td>
1138
- <td>
1139
- has approx 8 statements
1140
- </td>
1141
- <td>
1142
- LongMethod
1143
- </td>
1144
- </tr>
1145
-
1146
-
1147
- <tr class='dark'>
1148
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1149
- <td>
1150
- Ninjs::Project#create_module_file
1151
- </td>
1152
- <td>
1153
- has approx 9 statements
1154
- </td>
1155
- <td>
1156
- LongMethod
1157
- </td>
1158
- </tr>
1159
-
1160
-
1161
- <tr class='light'>
1162
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1163
- <td>
1164
- Ninjs::Project#create_project_structure
1165
- </td>
1166
- <td>
1167
- calls File.exists?("#{@project_path}#{folder}") twice
1168
- </td>
1169
- <td>
1170
- Duplication
1171
- </td>
1172
- </tr>
1173
-
1174
-
1175
- <tr class='dark'>
1176
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1177
- <td>
1178
- Ninjs::Project#get_files_timestamps
1179
- </td>
1180
- <td>
1181
- doesn't depend on instance state
1182
- </td>
1183
- <td>
1184
- LowCohesion
1185
- </td>
1186
- </tr>
1187
-
1188
-
1189
- <tr class='light'>
1190
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1191
- <td>
1192
- Ninjs::Project#get_files_timestamps
1193
- </td>
1194
- <td>
1195
- refers to files more than self
1196
- </td>
1197
- <td>
1198
- LowCohesion
1199
- </td>
1200
- </tr>
1201
-
1202
-
1203
- <tr class='dark'>
1204
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1205
- <td>
1206
- Ninjs::Project#get_files_timestamps
1207
- </td>
1208
- <td>
1209
- refers to timestamped_files more than self
1210
- </td>
1211
- <td>
1212
- LowCohesion
1213
- </td>
1214
- </tr>
1215
-
1216
-
1217
- <tr class='light'>
1218
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1219
- <td>
1220
- Ninjs::Project#import_test_files
1221
- </td>
1222
- <td>
1223
- calls Ninjs.base_directory 5 times
1224
- </td>
1225
- <td>
1226
- Duplication
1227
- </td>
1228
- </tr>
1229
-
1230
-
1231
- <tr class='dark'>
1232
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1233
- <td>
1234
- Ninjs::Project#update
1235
- </td>
1236
- <td>
1237
- has approx 6 statements
1238
- </td>
1239
- <td>
1240
- LongMethod
1241
- </td>
1242
- </tr>
1243
-
1244
-
1245
- <tr class='light'>
1246
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1247
- <td>
1248
- Ninjs::Project#update_application_file
1249
- </td>
1250
- <td>
1251
- has approx 6 statements
1252
- </td>
1253
- <td>
1254
- LongMethod
1255
- </td>
1256
- </tr>
1257
-
1258
-
1259
- <tr class='dark'>
1260
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1261
- <td>
1262
- Ninjs::Project#write_autoload
1263
- </td>
1264
- <td>
1265
- refers to file more than self
1266
- </td>
1267
- <td>
1268
- LowCohesion
1269
- </td>
1270
- </tr>
1271
-
1272
-
1273
- <tr class='light'>
1274
- <td><a href='txmt://open/?url=file:///Volumes/Storage/Development/ninjs/lib/ninjs/project.rb'>lib/ninjs/project.rb</a></td>
1275
- <td>
1276
- Ninjs::Project#write_dependencies
1277
- </td>
1278
- <td>
1279
- refers to file more than self
1280
- </td>
1281
- <td>
1282
- LowCohesion
1283
- </td>
1284
- </tr>
1285
-
1286
-
1287
-
1288
-
1289
- </table>
1290
- <p>Generated on 2011-03-05 14:06:52 -0600</p>
1291
-
1292
- </div>
1293
- </body>
1294
- </html>