tty-progressbar 0.11.0 → 0.12.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +302 -57
  4. data/examples/failure.rb +14 -0
  5. data/examples/iterator.rb +7 -0
  6. data/examples/multi/main_bar.rb +17 -0
  7. data/examples/multi/simple.rb +15 -0
  8. data/examples/threaded.rb +16 -0
  9. data/lib/tty-progressbar.rb +3 -2
  10. data/lib/tty/progressbar.rb +221 -58
  11. data/lib/tty/progressbar/configuration.rb +4 -0
  12. data/lib/tty/progressbar/converter.rb +2 -1
  13. data/lib/tty/progressbar/formatter.rb +2 -1
  14. data/lib/tty/progressbar/formatter/bar.rb +3 -1
  15. data/lib/tty/progressbar/formatter/byte_rate.rb +2 -1
  16. data/lib/tty/progressbar/formatter/current.rb +2 -1
  17. data/lib/tty/progressbar/formatter/current_byte.rb +2 -1
  18. data/lib/tty/progressbar/formatter/elapsed.rb +2 -1
  19. data/lib/tty/progressbar/formatter/estimated.rb +2 -1
  20. data/lib/tty/progressbar/formatter/mean_byte.rb +2 -1
  21. data/lib/tty/progressbar/formatter/mean_rate.rb +2 -1
  22. data/lib/tty/progressbar/formatter/percent.rb +2 -1
  23. data/lib/tty/progressbar/formatter/rate.rb +2 -1
  24. data/lib/tty/progressbar/formatter/total.rb +2 -1
  25. data/lib/tty/progressbar/formatter/total_byte.rb +2 -1
  26. data/lib/tty/progressbar/meter.rb +2 -1
  27. data/lib/tty/progressbar/multi.rb +221 -0
  28. data/lib/tty/progressbar/version.rb +1 -1
  29. data/spec/unit/events_spec.rb +35 -0
  30. data/spec/unit/formatter/elapsed_spec.rb +0 -1
  31. data/spec/unit/head_spec.rb +34 -0
  32. data/spec/unit/inspect_spec.rb +1 -1
  33. data/spec/unit/iterate_spec.rb +48 -0
  34. data/spec/unit/multi/advance_spec.rb +139 -0
  35. data/spec/unit/multi/events_spec.rb +64 -0
  36. data/spec/unit/multi/finish_spec.rb +19 -0
  37. data/spec/unit/multi/line_inset_spec.rb +67 -0
  38. data/spec/unit/multi/register_spec.rb +36 -0
  39. data/spec/unit/multi/stop_spec.rb +17 -0
  40. data/spec/unit/new_spec.rb +6 -0
  41. data/spec/unit/reset_spec.rb +0 -2
  42. data/spec/unit/stop_spec.rb +21 -0
  43. data/spec/unit/update_spec.rb +24 -0
  44. data/tty-progressbar.gemspec +1 -0
  45. metadata +44 -2
@@ -0,0 +1,24 @@
1
+ # encoding: utf-8
2
+
3
+ RSpec.describe TTY::ProgressBar, '#update' do
4
+ let(:output) { StringIO.new('', 'w+') }
5
+
6
+ it "updates bar configuration options" do
7
+ progress = TTY::ProgressBar.new "[:bar]" do |config|
8
+ config.output = output
9
+ config.total = 10
10
+ end
11
+ 10.times { |i|
12
+ progress.update(complete: '-', head: '>') if i == 2
13
+ progress.advance(2)
14
+ }
15
+ output.rewind
16
+ expect(output.read).to eq([
17
+ "\e[1G[== ]",
18
+ "\e[1G[==== ]",
19
+ "\e[1G[-----> ]",
20
+ "\e[1G[-------> ]",
21
+ "\e[1G[--------->]\n"
22
+ ].join)
23
+ end
24
+ end
@@ -18,6 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
+ spec.add_dependency "tty-cursor", '~> 0.5.0'
21
22
  spec.add_dependency "tty-screen", '~> 0.5.0'
22
23
 
23
24
  spec.add_development_dependency 'bundler', '>= 1.5.0', '< 2.0'
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tty-progressbar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Murach
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-04 00:00:00.000000000 Z
11
+ date: 2017-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tty-cursor
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.5.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.5.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: tty-screen
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -76,8 +90,13 @@ files:
76
90
  - Rakefile
77
91
  - appveyor.yml
78
92
  - examples/color.rb
93
+ - examples/failure.rb
94
+ - examples/iterator.rb
95
+ - examples/multi/main_bar.rb
96
+ - examples/multi/simple.rb
79
97
  - examples/simple.rb
80
98
  - examples/speed.rb
99
+ - examples/threaded.rb
81
100
  - examples/tokens.rb
82
101
  - lib/tty-progressbar.rb
83
102
  - lib/tty/progressbar.rb
@@ -97,6 +116,7 @@ files:
97
116
  - lib/tty/progressbar/formatter/total.rb
98
117
  - lib/tty/progressbar/formatter/total_byte.rb
99
118
  - lib/tty/progressbar/meter.rb
119
+ - lib/tty/progressbar/multi.rb
100
120
  - lib/tty/progressbar/pipeline.rb
101
121
  - lib/tty/progressbar/version.rb
102
122
  - spec/spec_helper.rb
@@ -108,6 +128,7 @@ files:
108
128
  - spec/unit/converter/to_time_spec.rb
109
129
  - spec/unit/custom_formatter_spec.rb
110
130
  - spec/unit/custom_token_spec.rb
131
+ - spec/unit/events_spec.rb
111
132
  - spec/unit/finish_spec.rb
112
133
  - spec/unit/formatter/bar_spec.rb
113
134
  - spec/unit/formatter/byte_rate_spec.rb
@@ -122,10 +143,18 @@ files:
122
143
  - spec/unit/formatter/total_byte_spec.rb
123
144
  - spec/unit/formatter/total_spec.rb
124
145
  - spec/unit/frequency_spec.rb
146
+ - spec/unit/head_spec.rb
125
147
  - spec/unit/hide_cursor_spec.rb
126
148
  - spec/unit/inspect_spec.rb
149
+ - spec/unit/iterate_spec.rb
127
150
  - spec/unit/log_spec.rb
128
151
  - spec/unit/meter_spec.rb
152
+ - spec/unit/multi/advance_spec.rb
153
+ - spec/unit/multi/events_spec.rb
154
+ - spec/unit/multi/finish_spec.rb
155
+ - spec/unit/multi/line_inset_spec.rb
156
+ - spec/unit/multi/register_spec.rb
157
+ - spec/unit/multi/stop_spec.rb
129
158
  - spec/unit/new_spec.rb
130
159
  - spec/unit/pipeline_spec.rb
131
160
  - spec/unit/ratio_spec.rb
@@ -133,6 +162,8 @@ files:
133
162
  - spec/unit/resize_spec.rb
134
163
  - spec/unit/set_current_spec.rb
135
164
  - spec/unit/start_spec.rb
165
+ - spec/unit/stop_spec.rb
166
+ - spec/unit/update_spec.rb
136
167
  - spec/unit/width_spec.rb
137
168
  - tasks/console.rake
138
169
  - tasks/coverage.rake
@@ -172,6 +203,7 @@ test_files:
172
203
  - spec/unit/converter/to_time_spec.rb
173
204
  - spec/unit/custom_formatter_spec.rb
174
205
  - spec/unit/custom_token_spec.rb
206
+ - spec/unit/events_spec.rb
175
207
  - spec/unit/finish_spec.rb
176
208
  - spec/unit/formatter/bar_spec.rb
177
209
  - spec/unit/formatter/byte_rate_spec.rb
@@ -186,10 +218,18 @@ test_files:
186
218
  - spec/unit/formatter/total_byte_spec.rb
187
219
  - spec/unit/formatter/total_spec.rb
188
220
  - spec/unit/frequency_spec.rb
221
+ - spec/unit/head_spec.rb
189
222
  - spec/unit/hide_cursor_spec.rb
190
223
  - spec/unit/inspect_spec.rb
224
+ - spec/unit/iterate_spec.rb
191
225
  - spec/unit/log_spec.rb
192
226
  - spec/unit/meter_spec.rb
227
+ - spec/unit/multi/advance_spec.rb
228
+ - spec/unit/multi/events_spec.rb
229
+ - spec/unit/multi/finish_spec.rb
230
+ - spec/unit/multi/line_inset_spec.rb
231
+ - spec/unit/multi/register_spec.rb
232
+ - spec/unit/multi/stop_spec.rb
193
233
  - spec/unit/new_spec.rb
194
234
  - spec/unit/pipeline_spec.rb
195
235
  - spec/unit/ratio_spec.rb
@@ -197,5 +237,7 @@ test_files:
197
237
  - spec/unit/resize_spec.rb
198
238
  - spec/unit/set_current_spec.rb
199
239
  - spec/unit/start_spec.rb
240
+ - spec/unit/stop_spec.rb
241
+ - spec/unit/update_spec.rb
200
242
  - spec/unit/width_spec.rb
201
243
  has_rdoc: