Class: DontRepeatYourself::HTMLFormatter
Instance Attribute Summary
#simian_results
Instance Method Summary
collapse
#format_sentence_between_lines_x_and_y_in_filepath, #initialize, #report_body
Instance Method Details
74
75
76
77
78
79
80
81
82
83
|
# File 'lib/dont_repeat_yourself/formatter.rb', line 74
def format_duplicate_lines_snippet(block)
starts = block.line_number_of_first_duplicate_line
ends = block.line_number_of_last_duplicate_line
file_path = block.file_path
html_source_code = @snippet_extractor.snippet(starts, ends, file_path)
source_id = "#{File.basename(file_path)}_#{starts}_#{ends}"
source_code_div = " <div> [<a id=\"l_#{source_id}\" href=\"javascript:toggleSource('#{source_id}')\">Show duplicate lines source code</a>]</div>"
source_code_div << " <div id=\"#{source_id}\" class=\"dyn-source\"><pre class=\"ruby\"><code>#{html_source_code}</code></pre></div>"
end
|
#get_asset(asset) ⇒ Object
TODO use erb to generate the report?
86
87
88
|
# File 'lib/dont_repeat_yourself/formatter.rb', line 86
def get_asset(asset)
IO.read(File.dirname(__FILE__) + '/../assets/' + asset)
end
|
#report ⇒ Object
68
69
70
71
72
|
# File 'lib/dont_repeat_yourself/formatter.rb', line 68
def report
report =
report << report_body.gsub(/TWO_SPACE_CHARS/, " ").gsub(/\n/, "</br>\n")
report <<
end
|
118
119
120
121
122
123
124
125
|
# File 'lib/dont_repeat_yourself/formatter.rb', line 118
def
<<-EOF
</div>
</div>
</body>
</html>
EOF
end
|
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# File 'lib/dont_repeat_yourself/formatter.rb', line 90
def
global_scripts = get_asset('dry.js')
global_styles = get_asset('/dry.css')
<<-EOF
<html>
<head>
<script type="text/javascript">
// <![CDATA[
#{global_scripts}
// ]]>
</script>
<style type="text/css">
#{global_styles}
</style>
</head>
<body>
<div class="rspec-report">
<div id="rspec-header">
<h1>Don't Repeat Yourself report Result</h1>
</div>
<div class="results">
EOF
end
|