tty 0.0.11 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +1 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +16 -7
  6. data/CHANGELOG.md +6 -0
  7. data/Gemfile +18 -1
  8. data/README.md +55 -28
  9. data/Rakefile +5 -9
  10. data/images/tty.png +0 -0
  11. data/lib/tty.rb +7 -1
  12. data/lib/tty/coercer/boolean.rb +6 -9
  13. data/lib/tty/coercer/float.rb +14 -17
  14. data/lib/tty/coercer/integer.rb +14 -17
  15. data/lib/tty/coercer/range.rb +6 -7
  16. data/lib/tty/logger.rb +23 -9
  17. data/lib/tty/plugins.rb +3 -6
  18. data/lib/tty/plugins/plugin.rb +4 -7
  19. data/lib/tty/shell.rb +20 -12
  20. data/lib/tty/shell/question.rb +41 -48
  21. data/lib/tty/shell/question/modifier.rb +5 -8
  22. data/lib/tty/shell/question/validation.rb +8 -7
  23. data/lib/tty/shell/reader.rb +28 -19
  24. data/lib/tty/shell/response.rb +26 -22
  25. data/lib/tty/shell/statement.rb +13 -9
  26. data/lib/tty/shell/suggestion.rb +17 -13
  27. data/lib/tty/support/coercion.rb +5 -6
  28. data/lib/tty/support/conversion.rb +7 -6
  29. data/lib/tty/support/delegatable.rb +5 -5
  30. data/lib/tty/support/unicode.rb +3 -4
  31. data/lib/tty/support/utils.rb +1 -2
  32. data/lib/tty/system.rb +13 -6
  33. data/lib/tty/system/editor.rb +21 -18
  34. data/lib/tty/system/which.rb +3 -5
  35. data/lib/tty/table.rb +18 -22
  36. data/lib/tty/table/border.rb +2 -4
  37. data/lib/tty/table/border/ascii.rb +3 -2
  38. data/lib/tty/table/border/null.rb +1 -3
  39. data/lib/tty/table/border/row_line.rb +1 -4
  40. data/lib/tty/table/border/unicode.rb +3 -2
  41. data/lib/tty/table/border_dsl.rb +21 -17
  42. data/lib/tty/table/border_options.rb +6 -5
  43. data/lib/tty/table/column_set.rb +11 -7
  44. data/lib/tty/table/columns.rb +19 -16
  45. data/lib/tty/table/error.rb +1 -3
  46. data/lib/tty/table/field.rb +30 -12
  47. data/lib/tty/table/header.rb +18 -9
  48. data/lib/tty/table/indentation.rb +1 -3
  49. data/lib/tty/table/operation/alignment.rb +8 -9
  50. data/lib/tty/table/operation/alignment_set.rb +6 -5
  51. data/lib/tty/table/operation/escape.rb +3 -3
  52. data/lib/tty/table/operation/filter.rb +3 -4
  53. data/lib/tty/table/operation/truncation.rb +3 -3
  54. data/lib/tty/table/operation/wrapped.rb +3 -4
  55. data/lib/tty/table/operations.rb +19 -22
  56. data/lib/tty/table/orientation.rb +5 -5
  57. data/lib/tty/table/orientation/horizontal.rb +9 -6
  58. data/lib/tty/table/orientation/vertical.rb +10 -7
  59. data/lib/tty/table/padder.rb +46 -8
  60. data/lib/tty/table/renderer.rb +21 -14
  61. data/lib/tty/table/renderer/ascii.rb +6 -5
  62. data/lib/tty/table/renderer/basic.rb +18 -19
  63. data/lib/tty/table/renderer/unicode.rb +11 -5
  64. data/lib/tty/table/row.rb +36 -20
  65. data/lib/tty/table/transformation.rb +6 -5
  66. data/lib/tty/table/validatable.rb +32 -17
  67. data/lib/tty/terminal.rb +26 -42
  68. data/lib/tty/terminal/color.rb +10 -12
  69. data/lib/tty/terminal/echo.rb +4 -7
  70. data/lib/tty/terminal/home.rb +3 -10
  71. data/lib/tty/terminal/pager.rb +11 -10
  72. data/lib/tty/terminal/pager/basic.rb +3 -6
  73. data/lib/tty/terminal/pager/system.rb +2 -5
  74. data/lib/tty/text.rb +7 -10
  75. data/lib/tty/text/distance.rb +2 -4
  76. data/lib/tty/text/truncation.rb +1 -3
  77. data/lib/tty/text/wrapping.rb +1 -3
  78. data/lib/tty/vector.rb +3 -5
  79. data/lib/tty/version.rb +2 -2
  80. data/spec/spec_helper.rb +4 -11
  81. data/spec/tty/coercer/boolean/coerce_spec.rb +19 -16
  82. data/spec/tty/coercer/float/coerce_spec.rb +6 -4
  83. data/spec/tty/coercer/integer/coerce_spec.rb +5 -4
  84. data/spec/tty/coercer/range/coerce_spec.rb +12 -11
  85. data/spec/tty/logger/log_spec.rb +23 -0
  86. data/spec/tty/logger/new_spec.rb +14 -14
  87. data/spec/tty/logger/valid_level_spec.rb +6 -6
  88. data/spec/tty/plugins/find_spec.rb +4 -4
  89. data/spec/tty/plugins/load_spec.rb +4 -5
  90. data/spec/tty/plugins/plugin/load_spec.rb +10 -8
  91. data/spec/tty/plugins/plugin/new_spec.rb +7 -7
  92. data/spec/tty/shell/ask_spec.rb +6 -7
  93. data/spec/tty/shell/error_spec.rb +1 -2
  94. data/spec/tty/shell/print_table_spec.rb +1 -2
  95. data/spec/tty/shell/question/argument_spec.rb +1 -1
  96. data/spec/tty/shell/question/character_spec.rb +11 -3
  97. data/spec/tty/shell/question/default_spec.rb +3 -3
  98. data/spec/tty/shell/question/in_spec.rb +1 -1
  99. data/spec/tty/shell/question/initialize_spec.rb +8 -11
  100. data/spec/tty/shell/question/modifier/apply_to_spec.rb +8 -4
  101. data/spec/tty/shell/question/modifier/letter_case_spec.rb +4 -4
  102. data/spec/tty/shell/question/modifier/whitespace_spec.rb +5 -5
  103. data/spec/tty/shell/question/modify_spec.rb +1 -1
  104. data/spec/tty/shell/question/valid_spec.rb +4 -4
  105. data/spec/tty/shell/question/validate_spec.rb +4 -4
  106. data/spec/tty/shell/question/validation/coerce_spec.rb +2 -3
  107. data/spec/tty/shell/question/validation/valid_value_spec.rb +3 -3
  108. data/spec/tty/shell/reader/getc_spec.rb +16 -14
  109. data/spec/tty/shell/response/read_bool_spec.rb +1 -1
  110. data/spec/tty/shell/response/read_char_spec.rb +1 -2
  111. data/spec/tty/shell/response/read_date_spec.rb +1 -1
  112. data/spec/tty/shell/response/read_email_spec.rb +1 -1
  113. data/spec/tty/shell/response/read_multiple_spec.rb +3 -4
  114. data/spec/tty/shell/response/read_number_spec.rb +1 -2
  115. data/spec/tty/shell/response/read_range_spec.rb +2 -2
  116. data/spec/tty/shell/response/read_spec.rb +7 -7
  117. data/spec/tty/shell/response/read_string_spec.rb +2 -2
  118. data/spec/tty/shell/say_spec.rb +1 -1
  119. data/spec/tty/shell/statement/initialize_spec.rb +3 -3
  120. data/spec/tty/shell/suggest_spec.rb +1 -1
  121. data/spec/tty/shell/warn_spec.rb +1 -2
  122. data/spec/tty/support/coercion_spec.rb +10 -10
  123. data/spec/tty/support/conversion_spec.rb +9 -9
  124. data/spec/tty/support/delegatable_spec.rb +7 -5
  125. data/spec/tty/support/equatable_spec.rb +32 -34
  126. data/spec/tty/support/fixtures/classes.rb +4 -2
  127. data/spec/tty/system/editor/available_spec.rb +12 -12
  128. data/spec/tty/system/editor/build_spec.rb +8 -16
  129. data/spec/tty/system/editor/command_spec.rb +3 -2
  130. data/spec/tty/system/editor/executables_spec.rb +3 -3
  131. data/spec/tty/system/editor/invoke_spec.rb +10 -14
  132. data/spec/tty/system/editor/open_spec.rb +9 -7
  133. data/spec/tty/system/platform_spec.rb +32 -13
  134. data/spec/tty/system/which/which_spec.rb +9 -9
  135. data/spec/tty/system/which_spec.rb +4 -4
  136. data/spec/tty/table/access_spec.rb +24 -21
  137. data/spec/tty/table/add_row_spec.rb +2 -2
  138. data/spec/tty/table/border/ascii/rendering_spec.rb +13 -13
  139. data/spec/tty/table/border/new_spec.rb +5 -4
  140. data/spec/tty/table/border/null/rendering_spec.rb +12 -12
  141. data/spec/tty/table/border/options/from_spec.rb +2 -3
  142. data/spec/tty/table/border/options/new_spec.rb +4 -5
  143. data/spec/tty/table/border/unicode/rendering_spec.rb +10 -10
  144. data/spec/tty/table/border_options/new_spec.rb +20 -0
  145. data/spec/tty/table/border_options/update_spec.rb +18 -0
  146. data/spec/tty/table/column_set/extract_widths_spec.rb +1 -1
  147. data/spec/tty/table/column_set/total_width_spec.rb +2 -2
  148. data/spec/tty/table/column_set/widths_from_spec.rb +1 -2
  149. data/spec/tty/table/columns/enforce_spec.rb +2 -2
  150. data/spec/tty/table/columns/widths_spec.rb +2 -0
  151. data/spec/tty/table/data_spec.rb +3 -3
  152. data/spec/tty/table/each_spec.rb +9 -11
  153. data/spec/tty/table/each_with_index_spec.rb +8 -9
  154. data/spec/tty/table/empty_spec.rb +3 -3
  155. data/spec/tty/table/eql_spec.rb +6 -6
  156. data/spec/tty/table/field/equality_spec.rb +11 -11
  157. data/spec/tty/table/field/length_spec.rb +4 -4
  158. data/spec/tty/table/field/lines_spec.rb +3 -3
  159. data/spec/tty/table/field/new_spec.rb +7 -7
  160. data/spec/tty/table/field/width_spec.rb +6 -4
  161. data/spec/tty/table/filter_spec.rb +3 -3
  162. data/spec/tty/table/header/call_spec.rb +3 -3
  163. data/spec/tty/table/header/height_spec.rb +1 -1
  164. data/spec/tty/table/header/new_spec.rb +5 -5
  165. data/spec/tty/table/header/set_spec.rb +9 -4
  166. data/spec/tty/table/header/to_ary_spec.rb +4 -4
  167. data/spec/tty/table/header_spec.rb +3 -4
  168. data/spec/tty/table/indentation/insert_indent_spec.rb +1 -1
  169. data/spec/tty/table/initialize_spec.rb +13 -13
  170. data/spec/tty/table/operation/alignment/format_spec.rb +5 -5
  171. data/spec/tty/table/operation/alignment/new_spec.rb +4 -4
  172. data/spec/tty/table/operation/alignment_set/call_spec.rb +11 -11
  173. data/spec/tty/table/operation/alignment_set/each_spec.rb +3 -3
  174. data/spec/tty/table/operation/alignment_set/new_spec.rb +6 -6
  175. data/spec/tty/table/operation/alignment_set/to_ary_spec.rb +4 -4
  176. data/spec/tty/table/operation/escape/call_spec.rb +1 -1
  177. data/spec/tty/table/operation/filter/call_spec.rb +1 -1
  178. data/spec/tty/table/operation/truncation/call_spec.rb +1 -1
  179. data/spec/tty/table/operation/truncation/truncate_spec.rb +4 -4
  180. data/spec/tty/table/operation/wrapped/call_spec.rb +1 -1
  181. data/spec/tty/table/operation/wrapped/wrap_spec.rb +3 -3
  182. data/spec/tty/table/operations/new_spec.rb +1 -1
  183. data/spec/tty/table/options_spec.rb +8 -8
  184. data/spec/tty/table/orientation_spec.rb +15 -13
  185. data/spec/tty/table/padder/parse_spec.rb +1 -1
  186. data/spec/tty/table/padder/to_s_spec.rb +14 -0
  187. data/spec/tty/table/padding_spec.rb +1 -1
  188. data/spec/tty/table/properties_spec.rb +9 -8
  189. data/spec/tty/table/render_spec.rb +8 -5
  190. data/spec/tty/table/render_with_spec.rb +5 -4
  191. data/spec/tty/table/renderer/ascii/indentation_spec.rb +1 -1
  192. data/spec/tty/table/renderer/ascii/padding_spec.rb +1 -1
  193. data/spec/tty/table/renderer/ascii/render_spec.rb +7 -7
  194. data/spec/tty/table/renderer/ascii/resizing_spec.rb +1 -1
  195. data/spec/tty/table/renderer/ascii/separator_spec.rb +2 -2
  196. data/spec/tty/table/renderer/basic/alignment_spec.rb +5 -5
  197. data/spec/tty/table/renderer/basic/coloring_spec.rb +1 -1
  198. data/spec/tty/table/renderer/basic/extract_column_widths_spec.rb +6 -6
  199. data/spec/tty/table/renderer/basic/filter_spec.rb +4 -4
  200. data/spec/tty/table/renderer/basic/indentation_spec.rb +5 -3
  201. data/spec/tty/table/renderer/basic/multiline_content_spec.rb +10 -10
  202. data/spec/tty/table/renderer/basic/new_spec.rb +2 -2
  203. data/spec/tty/table/renderer/basic/options_spec.rb +9 -9
  204. data/spec/tty/table/renderer/basic/padding_spec.rb +1 -1
  205. data/spec/tty/table/renderer/basic/render_spec.rb +8 -8
  206. data/spec/tty/table/renderer/basic/resizing_spec.rb +1 -1
  207. data/spec/tty/table/renderer/basic/separator_spec.rb +2 -2
  208. data/spec/tty/table/renderer/basic/truncation_spec.rb +4 -4
  209. data/spec/tty/table/renderer/basic/wrapping_spec.rb +4 -4
  210. data/spec/tty/table/renderer/border_spec.rb +21 -21
  211. data/spec/tty/table/renderer/render_spec.rb +7 -7
  212. data/spec/tty/table/renderer/select_spec.rb +4 -4
  213. data/spec/tty/table/renderer/style_spec.rb +19 -19
  214. data/spec/tty/table/renderer/unicode/indentation_spec.rb +1 -1
  215. data/spec/tty/table/renderer/unicode/padding_spec.rb +1 -1
  216. data/spec/tty/table/renderer/unicode/render_spec.rb +6 -6
  217. data/spec/tty/table/renderer/unicode/separator_spec.rb +2 -2
  218. data/spec/tty/table/renderer_spec.rb +1 -1
  219. data/spec/tty/table/rotate_spec.rb +27 -27
  220. data/spec/tty/table/row/access_spec.rb +3 -3
  221. data/spec/tty/table/row/call_spec.rb +4 -4
  222. data/spec/tty/table/row/data_spec.rb +5 -5
  223. data/spec/tty/table/row/each_spec.rb +1 -1
  224. data/spec/tty/table/row/equality_spec.rb +16 -16
  225. data/spec/tty/table/row/height_spec.rb +1 -1
  226. data/spec/tty/table/row/new_spec.rb +11 -11
  227. data/spec/tty/table/row/to_ary_spec.rb +3 -3
  228. data/spec/tty/table/to_s_spec.rb +8 -8
  229. data/spec/tty/table/validatable/validate_options_spec.rb +5 -5
  230. data/spec/tty/table/validatable_spec.rb +14 -1
  231. data/spec/tty/terminal/color/code_spec.rb +3 -3
  232. data/spec/tty/terminal/color/remove_spec.rb +8 -9
  233. data/spec/tty/terminal/color/set_spec.rb +5 -6
  234. data/spec/tty/terminal/color_spec.rb +3 -5
  235. data/spec/tty/terminal/echo_spec.rb +3 -4
  236. data/spec/tty/terminal/home_spec.rb +12 -14
  237. data/spec/tty/terminal/page_spec.rb +5 -4
  238. data/spec/tty/terminal/pager/available_spec.rb +11 -11
  239. data/spec/tty/terminal/pager/basic/page_spec.rb +8 -8
  240. data/spec/tty/terminal/pager/command_spec.rb +2 -2
  241. data/spec/tty/terminal/pager/executables_spec.rb +3 -3
  242. data/spec/tty/terminal/pager/page_spec.rb +8 -10
  243. data/spec/tty/terminal/pager/system/page_spec.rb +8 -8
  244. data/spec/tty/terminal/size_spec.rb +39 -36
  245. data/spec/tty/text/distance/distance_spec.rb +13 -13
  246. data/spec/tty/text/distance/initialize_spec.rb +4 -4
  247. data/spec/tty/text/distance_spec.rb +2 -2
  248. data/spec/tty/text/truncate_spec.rb +2 -3
  249. data/spec/tty/text/truncation/initialize_spec.rb +9 -9
  250. data/spec/tty/text/truncation/truncate_spec.rb +14 -14
  251. data/spec/tty/text/wrap_spec.rb +2 -3
  252. data/spec/tty/text/wrapping/initialize_spec.rb +7 -7
  253. data/spec/tty/text/wrapping/wrap_spec.rb +11 -11
  254. data/spec/tty/tty_spec.rb +22 -0
  255. data/spec/tty/vector/new_spec.rb +7 -7
  256. data/tasks/console.rake +10 -0
  257. data/tasks/coverage.rake +11 -0
  258. data/tasks/metrics/cane.rake +2 -0
  259. data/tasks/metrics/flog.rake +2 -0
  260. data/tasks/metrics/heckle.rake +15 -0
  261. data/tasks/metrics/reek.rake +2 -0
  262. data/tasks/spec.rake +29 -0
  263. data/tty.gemspec +5 -12
  264. metadata +34 -91
  265. data/.rvmrc +0 -34
@@ -1,22 +1,21 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- def to_field(value)
6
- end
5
+ describe TTY::Table, '.each_with_index' do
6
+ let(:header) { ['Header1', 'Header2'] }
7
+ let(:rows) { [['a1', 'a2'], ['b1', 'b2']] }
8
+ let(:field) { TTY::Table::Field }
7
9
 
8
- describe TTY::Table, '#each_with_index' do
9
10
  let(:object) { described_class.new header, rows }
10
- let(:header) { ['Header1', 'Header2'] }
11
- let(:rows) { [['a1', 'a2'], ['b1', 'b2']] }
12
- let(:field) { TTY::Table::Field }
13
11
 
14
12
  context 'with no block' do
15
13
  subject { object.each_with_index }
16
- it { should be_instance_of(to_enum.class) }
14
+
15
+ it { is_expected.to be_instance_of(to_enum.class) }
17
16
 
18
17
  it 'yields the expected values' do
19
- subject.to_a.should eql(object.to_a)
18
+ expect(subject.to_a).to eql(object.to_a)
20
19
  end
21
20
  end
22
21
 
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -11,13 +11,13 @@ describe TTY::Table, '#empty?' do
11
11
  context 'with rows containing no entries' do
12
12
  let(:rows) { [] }
13
13
 
14
- it { should be_true }
14
+ it { is_expected.to eq(true) }
15
15
  end
16
16
 
17
17
  context 'with rows containing an entry' do
18
18
  let(:rows) { [['a1']] }
19
19
 
20
- it { should be_false }
20
+ it { is_expected.to eq(false) }
21
21
  end
22
22
  end
23
23
 
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -9,26 +9,26 @@ describe TTY::Table, '#eql?' do
9
9
  subject { object.eql?(other) }
10
10
 
11
11
  describe '#inspect' do
12
- it { object.inspect.should =~ /#<TTY::Table/ }
12
+ it { expect(object.inspect).to match /#<TTY::Table/ }
13
13
  end
14
14
 
15
15
  context 'with the same object' do
16
16
  let(:other) { object }
17
17
 
18
- it { should be_true }
18
+ it { is_expected.to eql(true) }
19
19
 
20
20
  it 'is symmetric' do
21
- should eql(other.eql?(object))
21
+ is_expected.to eql(other.eql?(object))
22
22
  end
23
23
  end
24
24
 
25
25
  context 'with an equivalent object' do
26
26
  let(:other) { object.dup }
27
27
 
28
- it { should be_true }
28
+ it { is_expected.to eql(true) }
29
29
 
30
30
  it 'is symmetric' do
31
- should eql(other.eql?(object))
31
+ is_expected.to eql(other.eql?(object))
32
32
  end
33
33
  end
34
34
  end
@@ -1,9 +1,9 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
5
  describe TTY::Table::Field, '#==' do
6
- let(:value) { '1' }
6
+ let(:value) { '1' }
7
7
  let(:object) { described_class.new(value) }
8
8
 
9
9
  subject { object == other }
@@ -11,41 +11,41 @@ describe TTY::Table::Field, '#==' do
11
11
  context 'with the same object' do
12
12
  let(:other) { object }
13
13
 
14
- it { should be_true }
14
+ it { is_expected.to eql(true) }
15
15
 
16
16
  it 'is symmetric' do
17
- should eql(other == object)
17
+ is_expected.to eql(other == object)
18
18
  end
19
19
  end
20
20
 
21
21
  context 'with an equivalent object' do
22
22
  let(:other) { object.dup }
23
23
 
24
- it { should be_true }
24
+ it { is_expected.to eql(true) }
25
25
 
26
26
  it 'is symmetric' do
27
- should eql(other == object)
27
+ is_expected.to eql(other == object)
28
28
  end
29
29
  end
30
30
 
31
31
  context 'with an equivalent object of subclass' do
32
32
  let(:other) { Class.new(described_class).new(value) }
33
33
 
34
- it { should be_false }
34
+ it { is_expected.to eql(false) }
35
35
 
36
36
  it 'is symmetric' do
37
- should_not eql(other == object)
37
+ is_expected.not_to eql(other == object)
38
38
  end
39
39
  end
40
40
 
41
41
  context 'with an object having a different value' do
42
42
  let(:other_value) { '2' }
43
- let(:other) { described_class.new(other_value) }
43
+ let(:other) { described_class.new(other_value) }
44
44
 
45
- it { should be_false }
45
+ it { is_expected.to eql(false) }
46
46
 
47
47
  it 'is symmetric' do
48
- should eql(other == object)
48
+ is_expected.to eql(other == object)
49
49
  end
50
50
  end
51
51
  end
@@ -1,8 +1,8 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- describe TTY::Table::Field, '#lines' do
5
+ describe TTY::Table::Field, '#length' do
6
6
  let(:object) { described_class.new value }
7
7
 
8
8
  subject { object.length }
@@ -10,12 +10,12 @@ describe TTY::Table::Field, '#lines' do
10
10
  context 'with escaped value' do
11
11
  let(:value) { "Multi\nLine" }
12
12
 
13
- it { should eql(5) }
13
+ it { is_expected.to eql(5) }
14
14
  end
15
15
 
16
16
  context 'with unescaped value' do
17
17
  let(:value) { "Multi\\nLine" }
18
18
 
19
- it { should eql(11) }
19
+ it { is_expected.to eql(11) }
20
20
  end
21
21
  end
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -10,12 +10,12 @@ describe TTY::Table::Field, '#lines' do
10
10
  context 'with escaped value' do
11
11
  let(:value) { "Multi\nLine" }
12
12
 
13
- it { should eql(["Multi", "Line"]) }
13
+ it { is_expected.to eql(["Multi", "Line"]) }
14
14
  end
15
15
 
16
16
  context 'with unescaped value' do
17
17
  let(:value) { "Multi\\nLine" }
18
18
 
19
- it { should eql(["Multi\\nLine"]) }
19
+ it { is_expected.to eql(["Multi\\nLine"]) }
20
20
  end
21
21
  end
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -10,20 +10,20 @@ describe TTY::Table::Field, '#new' do
10
10
  context 'with only value' do
11
11
  let(:value) { 'foo' }
12
12
 
13
- it { should be_instance_of(object) }
13
+ it { is_expected.to be_instance_of(object) }
14
14
 
15
- its(:value) { should == value }
15
+ it { expect(subject.value).to eql(value) }
16
16
 
17
- its(:height) { should == 1 }
17
+ it { expect(subject.height).to eql(1) }
18
18
  end
19
19
 
20
20
  context 'with hash value' do
21
21
  let(:value) { { :value => 'foo' } }
22
22
 
23
- it { should be_instance_of(object) }
23
+ it { is_expected.to be_instance_of(object) }
24
24
 
25
- its(:value) { should == 'foo' }
25
+ it { expect(subject.value).to eql('foo') }
26
26
 
27
- its(:height) { should == 1 }
27
+ it { expect(subject.height).to eql(1) }
28
28
  end
29
29
  end
@@ -1,21 +1,23 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
5
  describe TTY::Table::Field, '#width' do
6
6
  let(:object) { described_class }
7
7
 
8
- subject { object.new value }
8
+ let(:instance) { object.new(value) }
9
+
10
+ subject { instance.width }
9
11
 
10
12
  context 'with only value' do
11
13
  let(:value) { 'foo' }
12
14
 
13
- its(:width) { should == 3 }
15
+ it { is_expected.to eql(3) }
14
16
  end
15
17
 
16
18
  context 'with hash value' do
17
19
  let(:value) { "foo\nbaar" }
18
20
 
19
- its(:width) { should == 8 }
21
+ it { is_expected.to eql(8) }
20
22
  end
21
23
  end
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -12,9 +12,9 @@ describe TTY::Table, '#filter' do
12
12
  }
13
13
 
14
14
  it 'filters rows' do
15
- table.render do |renderer|
15
+ expect(table.render do |renderer|
16
16
  renderer.filter = filter
17
- end.should == <<-EOS.normalize
17
+ end).to eq <<-EOS.normalize
18
18
  h1 h2 h3
19
19
  a1 A2 a3
20
20
  b1 B2 b3
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -12,13 +12,13 @@ describe TTY::Table::Header, '#call' do
12
12
  context 'when symbol' do
13
13
  let(:attribute) { :age }
14
14
 
15
- it { should == 2 }
15
+ it { is_expected.to eq(2) }
16
16
  end
17
17
 
18
18
  context 'when integer' do
19
19
  let(:attribute) { 1 }
20
20
 
21
- it { should == :name }
21
+ it { is_expected.to eq(:name) }
22
22
  end
23
23
  end
24
24
 
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -8,9 +8,9 @@ describe TTY::Table::Header, '#new' do
8
8
  context 'with no arguments' do
9
9
  subject { object.new }
10
10
 
11
- it { should be_instance_of(object) }
11
+ it { is_expected.to be_instance_of(object) }
12
12
 
13
- it { should be_empty }
13
+ it { is_expected.to be_empty }
14
14
  end
15
15
 
16
16
  context 'with attributes' do
@@ -18,8 +18,8 @@ describe TTY::Table::Header, '#new' do
18
18
 
19
19
  let(:attributes) { ['id', 'name', 'age'] }
20
20
 
21
- it { should be_instance_of(object) }
21
+ it { is_expected.to be_instance_of(object) }
22
22
 
23
- it { should == attributes }
23
+ it { is_expected == attributes }
24
24
  end
25
25
  end
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -6,10 +6,15 @@ describe TTY::Table::Header, '#set' do
6
6
  let(:object) { described_class }
7
7
  let(:attributes) { [:id, :name, :age] }
8
8
 
9
- subject { object.new }
9
+ subject(:header) { object.new }
10
10
 
11
11
  it 'sets the value' do
12
- subject[0] = :id
13
- expect(subject[0]).to eql(:id)
12
+ header[0] = :id
13
+ expect(header[0]).to eql(:id)
14
+ end
15
+
16
+ it 'gets the value' do
17
+ head = object.new [{value: :id}]
18
+ expect(head[0]).to eq(:id)
14
19
  end
15
20
  end
@@ -1,14 +1,14 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
5
  describe TTY::Table::Header, '#to_ary' do
6
- let(:object) { described_class.new(attributes) }
6
+ let(:object) { described_class.new(attributes) }
7
7
  let(:attributes) { [:id, :name, :age] }
8
8
 
9
9
  subject { object.to_ary }
10
10
 
11
- it { should be_instance_of(Array) }
11
+ it { is_expected.to be_instance_of(Array) }
12
12
 
13
- it { should == attributes }
13
+ it { is_expected.to eq(attributes) }
14
14
  end
@@ -1,14 +1,13 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
5
  describe TTY::Table, '#header' do
6
-
7
6
  let(:header) { [:header1, :header2] }
8
7
  let(:rows) { [['a1', 'a2'], ['b1', 'b2']] }
9
8
  let(:object) { described_class }
10
9
 
11
- subject { object.new header, rows }
10
+ subject(:table) { object.new header, rows }
12
11
 
13
- its(:header) { should be_instance_of TTY::Table::Header }
12
+ it { expect(table.header).to be_instance_of(TTY::Table::Header) }
14
13
  end
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # -*- encoding: utf-8 -*-
1
+ # encoding: utf-8
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -6,16 +6,16 @@ describe TTY::Table, '#initialize' do
6
6
  let(:header) { ['Header1', 'Header2'] }
7
7
  let(:rows) { [['a1', 'a2'], ['b1', 'b2']] }
8
8
 
9
- it { should be_kind_of(Enumerable) }
9
+ it { is_expected.to be_kind_of(Enumerable) }
10
10
 
11
- it { should be_kind_of(Comparable) }
11
+ it { is_expected.to be_kind_of(Comparable) }
12
12
 
13
- it { (Enumerable === subject).should be_true }
13
+ it { expect(Enumerable === subject).to eq(true) }
14
14
 
15
15
  context 'with rows only' do
16
16
  it 'initializes with rows as arguments' do
17
17
  table = TTY::Table[*rows]
18
- expect(table.to_a).to eql rows
18
+ expect(table.to_a).to eql(rows)
19
19
  end
20
20
 
21
21
  it 'initializes with rows' do
@@ -24,8 +24,8 @@ describe TTY::Table, '#initialize' do
24
24
  end
25
25
 
26
26
  it 'initializes table rows as an option' do
27
- table = TTY::Table.new :rows => rows
28
- table.to_a.should == rows
27
+ table = TTY::Table.new rows: rows
28
+ expect(table.to_a).to eq(rows)
29
29
  end
30
30
 
31
31
  it 'initializes table rows in a block with param' do
@@ -33,20 +33,20 @@ describe TTY::Table, '#initialize' do
33
33
  t << rows[0]
34
34
  t << rows[1]
35
35
  end
36
- table.to_a.should == rows
36
+ expect(table.to_a).to eq(rows)
37
37
  end
38
38
 
39
39
  it 'initializes table and adds rows' do
40
40
  table = TTY::Table.new
41
41
  table << rows[0]
42
42
  table << rows[1]
43
- table.to_a.should == rows
43
+ expect(table.to_a).to eq(rows)
44
44
  end
45
45
 
46
46
  it 'chains rows' do
47
47
  table = TTY::Table.new
48
48
  table << rows[0] << rows[1]
49
- table.to_a.should == rows
49
+ expect(table.to_a).to eq(rows)
50
50
  end
51
51
 
52
52
  context 'with data as hash' do
@@ -68,8 +68,8 @@ describe TTY::Table, '#initialize' do
68
68
 
69
69
  context 'with header and rows' do
70
70
  it 'initializes header as an option' do
71
- table = TTY::Table.new :header => header
72
- expect(table.header).to eql header
71
+ table = TTY::Table.new header: header
72
+ expect(table.header).to eql(header)
73
73
  end
74
74
 
75
75
  it 'initializes table rows as an argument' do
@@ -81,7 +81,7 @@ describe TTY::Table, '#initialize' do
81
81
 
82
82
  context 'coercion' do
83
83
  it 'converts row arguments from hash to array' do
84
- table = TTY::Table.new :rows => {:a => 1, :b => 2}
84
+ table = TTY::Table.new rows: {a: 1, b: 2}
85
85
  expect(table.to_a).to include [:a, 1 ]
86
86
  end
87
87
  end