cuporter 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. data/README.textile +123 -44
  2. data/Rakefile +5 -5
  3. data/bin/cuporter +19 -11
  4. data/lib/cuporter.rb +15 -26
  5. data/lib/cuporter/cli/options.rb +95 -22
  6. data/lib/cuporter/document.rb +23 -0
  7. data/lib/cuporter/document/html_document.rb +82 -0
  8. data/lib/cuporter/extensions/nokogiri.rb +46 -0
  9. data/lib/cuporter/feature_parser.rb +38 -19
  10. data/lib/cuporter/filter.rb +1 -0
  11. data/lib/cuporter/formatters/csv.rb +69 -0
  12. data/lib/cuporter/formatters/text.rb +166 -0
  13. data/lib/cuporter/formatters/xml_to_html.xslt +315 -0
  14. data/lib/cuporter/node.rb +7 -83
  15. data/lib/cuporter/node/node_base.rb +114 -0
  16. data/lib/cuporter/node/numbering.rb +32 -0
  17. data/lib/cuporter/node/sorting.rb +27 -0
  18. data/lib/cuporter/node/tagged_node.rb +22 -0
  19. data/lib/cuporter/node/totalling.rb +19 -0
  20. data/lib/cuporter/node/types.rb +158 -0
  21. data/lib/cuporter/node_parser.rb +62 -0
  22. data/lib/cuporter/report/feature_report.rb +23 -0
  23. data/lib/cuporter/report/report_base.rb +69 -0
  24. data/lib/cuporter/report/tag_report.rb +27 -7
  25. data/lib/cuporter/report/tree_report.rb +24 -0
  26. data/lib/cuporter/tag_nodes_parser.rb +94 -0
  27. data/public/images/ajax-loader.gif +0 -0
  28. data/public/images/file.gif +0 -0
  29. data/public/images/folder-closed.gif +0 -0
  30. data/public/images/folder.gif +0 -0
  31. data/public/images/minus.gif +0 -0
  32. data/public/images/plus.gif +0 -0
  33. data/public/images/treeview-black-line.gif +0 -0
  34. data/public/images/treeview-black.gif +0 -0
  35. data/public/images/treeview-default-line.gif +0 -0
  36. data/public/images/treeview-default.gif +0 -0
  37. data/public/images/treeview-famfamfam-line.gif +0 -0
  38. data/public/images/treeview-famfamfam.gif +0 -0
  39. data/public/images/treeview-gray-line.gif +0 -0
  40. data/public/images/treeview-gray.gif +0 -0
  41. data/public/images/treeview-red-line.gif +0 -0
  42. data/public/images/treeview-red.gif +0 -0
  43. data/public/javascripts/expand-collapse.js +47 -0
  44. data/public/javascripts/jquery-min.js +167 -0
  45. data/public/javascripts/jquery.treeview.js +267 -0
  46. data/public/javascripts/treeview-loader.js +11 -0
  47. data/public/stylesheets/cuporter.css +101 -0
  48. data/{lib/cuporter/formatter/name_report/style.css → public/stylesheets/feature_style.css} +17 -18
  49. data/public/stylesheets/jquery.treeview.css +75 -0
  50. data/{lib/cuporter/formatter/tag_report/style.css → public/stylesheets/tag_style.css} +17 -22
  51. data/public/stylesheets/tree_style.css +104 -0
  52. metadata +52 -37
  53. data/lib/cuporter/example_set_node.rb +0 -15
  54. data/lib/cuporter/formatter/csv_text_methods.rb +0 -20
  55. data/lib/cuporter/formatter/cuporter.css +0 -64
  56. data/lib/cuporter/formatter/html_methods.rb +0 -122
  57. data/lib/cuporter/formatter/html_node_writer.rb +0 -104
  58. data/lib/cuporter/formatter/jquery-min.js +0 -154
  59. data/lib/cuporter/formatter/name_report/csv.rb +0 -12
  60. data/lib/cuporter/formatter/name_report/html.rb +0 -48
  61. data/lib/cuporter/formatter/name_report/html_node_writer.rb +0 -18
  62. data/lib/cuporter/formatter/name_report/text.rb +0 -16
  63. data/lib/cuporter/formatter/name_report/text_node_writer.rb +0 -16
  64. data/lib/cuporter/formatter/pretty_text_methods.rb +0 -22
  65. data/lib/cuporter/formatter/tag_report/csv.rb +0 -12
  66. data/lib/cuporter/formatter/tag_report/html.rb +0 -35
  67. data/lib/cuporter/formatter/tag_report/html_node_writer.rb +0 -19
  68. data/lib/cuporter/formatter/tag_report/text.rb +0 -14
  69. data/lib/cuporter/formatter/tag_report/text_node_writer.rb +0 -17
  70. data/lib/cuporter/formatter/text_methods.rb +0 -19
  71. data/lib/cuporter/formatter/writer.rb +0 -33
  72. data/lib/cuporter/name_list_parser.rb +0 -44
  73. data/lib/cuporter/node_numberer.rb +0 -18
  74. data/lib/cuporter/report/name_report.rb +0 -19
  75. data/lib/cuporter/report/report.rb +0 -22
  76. data/lib/cuporter/tag_list_node.rb +0 -54
  77. data/lib/cuporter/tag_list_parser.rb +0 -39
@@ -0,0 +1,11 @@
1
+ $(document).ready( function() {
2
+ $(".report > ul").addClass("filetree");
3
+ $(".report > ul > li, li.feature").addClass("open");
4
+ $(".dir > .properties").addClass("folder");
5
+ // $(".file > .properties").addClass("file");
6
+ $(".report > ul.children").treeview({
7
+ collapsed: true,
8
+ animated: 120,
9
+ control:"#expand-collapse"
10
+ });
11
+ });
@@ -0,0 +1,101 @@
1
+ /*******************
2
+ * Main *
3
+ ********************/
4
+ body {
5
+ margin: 0;
6
+ padding: 0;
7
+ font: normal 11px "Lucida Grande", Helvetica, sans-serif;
8
+ }
9
+ .cuporter_header {
10
+ padding-left: 2em;
11
+ padding-bottom: 0.3em;
12
+ padding-top: 0.05em;
13
+ background-color: #65C400;
14
+ color: white;
15
+ height: 7em;
16
+ }
17
+ .cuporter_header #total {
18
+ font-weight: bold;
19
+ }
20
+
21
+ .cuporter_header #label {
22
+ position: absolute;
23
+ right: 1em;
24
+ text-align: right;
25
+ top: 1.2em;
26
+ }
27
+ #summary {
28
+ padding-top: 1.2em;
29
+ font-size: 1.2em;
30
+ }
31
+
32
+ #summary p {
33
+ margin-right: 0px;
34
+ margin-left: 0px;
35
+ margin-top: 1px;
36
+ margin-bottom: 1px;
37
+ }
38
+
39
+ #filter_summary {
40
+ width: 70em;
41
+ float: right;
42
+ padding-top: 1.2em;
43
+ font-size: 1.2em;
44
+ }
45
+
46
+ #filter_summary p {
47
+ margin-right: 0px;
48
+ margin-left: 0px;
49
+ margin-top: 1px;
50
+ margin-bottom: 1px;
51
+ }
52
+
53
+ #filter_summary > span {
54
+ font-weight: bold;
55
+ }
56
+
57
+ ul {
58
+ list-style: none;
59
+ }
60
+ .report {
61
+ margin: 0;
62
+ }
63
+ .feature {
64
+ margin-bottom: 0.5em;
65
+ margin-right: 1em;
66
+ }
67
+
68
+ .feature > .properties {
69
+ padding-top: 0.3em;
70
+ padding-bottom: 0.3em;
71
+ font-weight: bold;
72
+ }
73
+
74
+ .file_path {
75
+ float: right;
76
+ padding-right: 0.5em;
77
+ font-weight: normal;
78
+ color: black;
79
+ }
80
+
81
+ .example td {
82
+ padding-left: 0.5em;
83
+ }
84
+
85
+ .number {
86
+ position: absolute;
87
+ font-weight: normal;
88
+ }
89
+ .scenario .number {
90
+ padding-left: 0.5em;
91
+ }
92
+
93
+ .total {
94
+ margin-left: 1.5em;
95
+ font-weight: normal;
96
+ }
97
+
98
+ .tags {
99
+ margin-left: 1.5em;
100
+ font-weight: bold;
101
+ }
@@ -1,38 +1,33 @@
1
- /* Name Report */
1
+ /******************
2
+ * Feature Report *
3
+ *******************/
2
4
  .number {
3
5
  left: 3.0em;
4
6
  }
5
7
 
6
- #filter_summary {
7
- width: 60em;
8
- float: right;
9
- padding-top: 1.2em;
10
- }
11
-
12
- #filter_summary p {
13
- margin: 0px 0px 0px 2px;
14
- }
15
-
16
8
  .cuporter_header {
17
9
  background-color: #65C400;
18
10
  }
19
11
 
20
- .feature_name {
12
+ .cuporter_header #total {
13
+ font-weight: bold;
14
+ }
15
+ .feature > .properties > .cuke_name {
21
16
  margin-left: 0.5em;
22
17
  font-size: 1.5em;
23
18
  }
24
19
 
25
- .file {
26
- font-size: 0.8em;
20
+ .feature > .properties > .total {
21
+ font-size: 1.2em;
27
22
  }
28
23
 
29
- .scenario_name {
24
+ .scenario > .properties {
30
25
  margin-left: -2.4em;
31
26
  padding-left: 4.0em;
32
27
  padding-top: 0.1em;
33
28
  padding-bottom: 0.2em;
34
29
  }
35
- .scenario_outline_name {
30
+ .scenario_outline > .properties {
36
31
  margin-left: -2.4em;
37
32
  padding-left: 4.5em;
38
33
  padding-top: 0.1em;
@@ -44,15 +39,19 @@
44
39
  background-color: #65C400;
45
40
  }
46
41
 
47
- .example_rows {
42
+ .examples {
48
43
  margin-left: -6.0em;
49
44
  padding-left: 7.6em;
50
45
  }
51
46
 
52
- .scenario_name, .example_rows {
47
+ .scenario > .properties, .scenario_outline > .properties, .examples {
53
48
  margin-top: 0.2em;
54
49
  margin-bottom: 0.2em;
55
50
  background-color: #DBFFB4;
56
51
  border-left: 0.5em solid #65c400;
57
52
  border-bottom: 1px solid #65c400;
58
53
  }
54
+
55
+ .tags {
56
+ color: darkblue; //#246AC1;
57
+ }
@@ -0,0 +1,75 @@
1
+ .treeview, .treeview ul {
2
+ padding: 0;
3
+ margin: 0;
4
+ list-style: none;
5
+ }
6
+
7
+ .treeview ul {
8
+ background-color: white;
9
+ margin-top: 4px;
10
+ }
11
+
12
+ .treeview .hitarea {
13
+ background: url(../images/treeview-default.gif) -64px -25px no-repeat;
14
+ height: 16px;
15
+ width: 16px;
16
+ margin-left: -16px;
17
+ float: left;
18
+ cursor: pointer;
19
+ }
20
+ /* fix for IE6 */
21
+ * html .hitarea {
22
+ display: inline;
23
+ float:none;
24
+ }
25
+
26
+ .treeview li {
27
+ margin: 0;
28
+ padding: 3px 0pt 3px 16px;
29
+ }
30
+
31
+ .treeview a.selected {
32
+ background-color: #eee;
33
+ }
34
+
35
+ #treecontrol { margin: 1em 0; display: none; }
36
+
37
+ .treeview .hover { color: red; cursor: pointer; }
38
+
39
+ .treeview li { background: url(../images/treeview-default-line.gif) 0 0 no-repeat; }
40
+ .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
41
+
42
+ .treeview .expandable-hitarea { background-position: -80px -3px; }
43
+
44
+ .treeview li.last { background-position: 0 -1766px }
45
+ .treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(../images/treeview-default.gif); }
46
+ .treeview li.lastCollapsable { background-position: 0 -111px }
47
+ .treeview li.lastExpandable { background-position: -32px -67px }
48
+
49
+ .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
50
+
51
+ .treeview-red li { background-image: url(../images/treeview-red-line.gif); }
52
+ .treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(../images/treeview-red.gif); }
53
+
54
+ .treeview-black li { background-image: url(../images/treeview-black-line.gif); }
55
+ .treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(../images/treeview-black.gif); }
56
+
57
+ .treeview-gray li { background-image: url(../images/treeview-gray-line.gif); }
58
+ .treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(../images/treeview-gray.gif); }
59
+
60
+ .treeview-famfamfam li { background-image: url(../images/treeview-famfamfam-line.gif); }
61
+ .treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(../images/treeview-famfamfam.gif); }
62
+
63
+ .treeview .placeholder {
64
+ background: url(../images/ajax-loader.gif) 0 0 no-repeat;
65
+ height: 16px;
66
+ width: 16px;
67
+ display: block;
68
+ }
69
+
70
+ .filetree li { padding: 3px 0 2px 16px; }
71
+ .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
72
+ .filetree span.folder { background: url(../images/folder.gif) 0 0 no-repeat; }
73
+ .filetree li.expandable span.folder { background: url(../images/folder-closed.gif) 0 0 no-repeat; }
74
+ .filetree span.file { background: url(../images/file.gif) 0 0 no-repeat; }
75
+
@@ -1,27 +1,21 @@
1
- /* Tag Report */
1
+ /********************************
2
+ ** Tag Report **
3
+ *********************************/
2
4
  .number {
3
5
  left: 4.5em;
4
6
  }
5
7
 
6
- #expand-collapse {
7
- position: absolute;
8
- right: 1em;
9
- text-align: right;
10
- top: 0.5em;
11
- }
12
-
13
8
  .cuporter_header {
14
9
  background-color: #24A6C1;
15
10
  }
16
11
 
17
- .tag_name {
12
+ .tag > .properties > .cuke_name {
18
13
  font-weight: bold;
19
14
  font-size: 1.5em;
20
15
  }
21
- .total {
22
- margin-left: 0.5em;
23
- font-weight: normal;
24
- font-size: 0.8em;
16
+
17
+ .tag > .properties > .total {
18
+ font-size: 1.2em;
25
19
  }
26
20
 
27
21
  .tag {
@@ -29,47 +23,48 @@
29
23
  margin-bottom: 0.5em;
30
24
  }
31
25
 
32
- .tag ul {
26
+ .tag > ul {
33
27
  margin-top: 1.0em;
34
28
  margin-bottom: 0.5em;
35
29
  }
36
- .feature_name {
30
+ .feature > .properties {
37
31
  margin-left: -2em;
38
32
  padding-left: 1.5em;
39
33
  background-color: #24A6C1;
40
34
  color: white;
41
35
  }
42
36
 
43
- .file {
37
+ .file_path {
44
38
  font-size: 1.1em;
39
+ color: black;
45
40
  }
46
41
 
47
- .scenario_name {
42
+ .scenario > .properties {
48
43
  margin-left: -4.0em;
49
44
  padding-left: 4.0em;
50
45
  background-color: lightblue;
51
46
  }
52
47
 
53
- .scenario_outline_name {
48
+ .scenario_outline > .properties {
54
49
  margin-left: -4.0em;
55
50
  padding-left: 4.5em;
56
51
  }
57
52
 
58
- .example_rows {
53
+ .examples {
59
54
  margin-left: -7.7em;
60
55
  padding-left: 7.7em;
61
- background-color: lightblue;
62
56
  }
63
57
 
64
58
  .example {
65
59
  background-color: #26A6C0;
60
+ font-weight: normal;
66
61
  }
67
62
 
68
- .example_set_name {
63
+ .examples > .properties {
69
64
  margin-left: -2em;
70
65
  }
71
66
 
72
- .scenario_name, .example_rows {
67
+ .scenario > .properties, .scenario_outline > .properties, .examples {
73
68
  margin-top: 0.2em;
74
69
  margin-bottom: 0.2em;
75
70
  background-color: #lightblue;
@@ -0,0 +1,104 @@
1
+ /***************
2
+ * Tree Report *
3
+ ****************/
4
+ .dir, .tag, .feature, .scenario, .scenario_outline, .examples, .example {
5
+ // margin-left: 2.7em;
6
+ // margin-right: 1.5em;
7
+ // margin-bottom: 0.5em;
8
+ // margin-top: 0.1em;
9
+ // padding-left: 1.0em;
10
+ // padding-right: 1.0em;
11
+ }
12
+ .properties {
13
+ // padding-left: 0.1em;
14
+ // padding-top: 0.1em;
15
+ // padding-bottom: 0.1em;
16
+ }
17
+
18
+ .feature {
19
+ // padding-top: 0.75em;
20
+ // padding-bottom: 0.3em;
21
+ }
22
+ .feature > .properties > .total {
23
+ font-size: 1.3em;
24
+ }
25
+ .feature > .properties, .feature > .children {
26
+ color: black;
27
+ // padding-top: 0.1em;
28
+ // padding-bottom: 0.5em;
29
+ font-weight: bold;
30
+ margin-left: 1.2em;
31
+ margin-right: 0.5em;
32
+ margin-bottom: 0.0em;
33
+ padding-right: 0;
34
+ }
35
+ .feature > .properties > .cuke_name {
36
+ font-size: 1.2em;
37
+ }
38
+
39
+ .file_path {
40
+ padding-right: 0.5em;
41
+ }
42
+
43
+ .file > ul {
44
+ margin-left: 2.2em;
45
+ }
46
+ .dir {
47
+ // margin-top: 0.5em;
48
+ // margin-bottom: 1.0em;
49
+ // padding-bottom: 0.5em;
50
+ }
51
+ .dir > .properties {
52
+ font-weight: bold;
53
+ // margin-left: -2.0em;
54
+ // padding-top: 0.3em;
55
+ // padding-bottom: 0.5em;
56
+ }
57
+ .dir > .properties > .fs_name {
58
+ }
59
+
60
+ .report > ul.children .dir {
61
+ }
62
+ .report > .children > .dir{
63
+ padding-top: 0.5em;
64
+ margin-right: 0.5em;
65
+ margin-left: 2.7em;
66
+ }
67
+ .report > .children > .dir > .properties {
68
+ }
69
+
70
+ .scenario, .scenario_outline {
71
+ color: black;
72
+ border-left: 0.5em solid #65c400;
73
+ border-bottom: 1px solid #65c400;
74
+ border-top: none;
75
+ border-right: none;
76
+ }
77
+ .example {
78
+ }
79
+
80
+ .examples {
81
+ border: none;
82
+ }
83
+
84
+
85
+ .tags {
86
+ color: darkblue;
87
+ }
88
+ .number {
89
+ left: 0.80em;
90
+ }
91
+
92
+ .total {
93
+ margin-left: 0.25em;
94
+ }
95
+
96
+
97
+ /* Background Colors */
98
+ // .filetree .dir {background-color: #E6E6E6}
99
+ // .filetree .file {background-color: #E6E6E6}
100
+ .filetree .feature {background-color: #cacaca}
101
+ .filetree .scenario {background-color: #DBFFB4}
102
+ .filetree .scenario_outline {background-color: #DBFFB4}
103
+ .filetree .examples {background-color: #DBFFBf}
104
+ .filetree .example {background-color: #65C400}