Module: Cuporter::Formatters::Text

Extended by:
NodeFormatters, Text, Util
Included in:
Text
Defined in:
lib/cuporter/formatters/text.rb

Constant Summary collapse

SPACER =
" "

Instance Method Summary collapse

Methods included from Util

depth, terminal_width

Methods included from NodeFormatters

build_line, dir, example, example_header, examples, feature, file, report, scenario, scenario_outline, tag

Instance Method Details

#blank_for_number(node) ⇒ Object



128
129
130
131
132
# File 'lib/cuporter/formatters/text.rb', line 128

def blank_for_number(node)
  l = tab_stop * depth(node)
  l += SPACER if node.document.at("[@number]")
  l
end

#cuke_name(value) ⇒ Object



133
134
135
136
# File 'lib/cuporter/formatters/text.rb', line 133

def cuke_name(value)
  return "" unless value
  value.unescape_apostrophe
end

#example_name(value) ⇒ Object



160
161
162
# File 'lib/cuporter/formatters/text.rb', line 160

def example_name(value)
  cuke_name value
end

#file_path(value, line_size) ⇒ Object



147
148
149
150
# File 'lib/cuporter/formatters/text.rb', line 147

def file_path(value, line_size)
  return "" unless value
  "#{tab_stop}##{value}#{tab_stop * 2}".rjust(terminal_width - line_size)
end

#format_number(node, attr) ⇒ Object



119
120
121
122
123
124
125
126
127
# File 'lib/cuporter/formatters/text.rb', line 119

def format_number(node, attr)
  d = depth(node)
  indent_length = d * tab_stop.size
  if ( value = node[attr])
    yield(indent_length, value)
  else
    tab_stop * d
  end
end

#fs_name(value) ⇒ Object



137
138
139
140
# File 'lib/cuporter/formatters/text.rb', line 137

def fs_name(value)
  return "" unless value
  value.upcase
end

#normal_indent(node) ⇒ Object



156
157
158
# File 'lib/cuporter/formatters/text.rb', line 156

def normal_indent(node)
  tab_stop * depth(node)
end

#number(node) ⇒ Object



113
114
115
116
117
# File 'lib/cuporter/formatters/text.rb', line 113

def number(node)
  format_number(node, 'number') do |indent_length, value|
    "%#{tab_stop}#{indent_length}s " % "#{value}."
  end
end

#tab_stopObject



95
96
97
# File 'lib/cuporter/formatters/text.rb', line 95

def tab_stop
  @@tab_stop ||= SPACER * 2
end

#tags(value) ⇒ Object



142
143
144
145
# File 'lib/cuporter/formatters/text.rb', line 142

def tags(value)
  return "" unless value
  "#{tab_stop * 2}#{value}"
end

#title(value) ⇒ Object



152
153
154
# File 'lib/cuporter/formatters/text.rb', line 152

def title(value)
  value || ""
end

#total(node) ⇒ Object



107
108
109
110
111
# File 'lib/cuporter/formatters/text.rb', line 107

def total(node)
  format_number(node, 'total') do |indent_length, value|
    "[#{value}]".ljust(total_column.size, SPACER)
  end
end

#total_columnObject



103
104
105
# File 'lib/cuporter/formatters/text.rb', line 103

def total_column
  @@total_column ||= Cuporter.options[:total] ? tab_stop * 2: ""
end

#total_column_spacerObject



99
100
101
# File 'lib/cuporter/formatters/text.rb', line 99

def total_column_spacer
  @@total_column_spacer ||= Cuporter.options[:total] ? tab_stop : ""
end