Skip to content

Commit 60344d7

Browse files
committed
added progressbar
1 parent 3f9982d commit 60344d7

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

task-1.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
require 'pry'
55
require 'date'
66
require 'minitest/autorun'
7+
require 'ruby-progressbar'
78

89
class User
910
attr_reader :attributes, :sessions
@@ -49,10 +50,13 @@ def work
4950
users = []
5051
sessions = []
5152

53+
file_progressbar = ProgressBar.create(title: "Reading File", total: file_lines.count, format: '%t: |%B| %p%% %e')
54+
5255
file_lines.each do |line|
5356
cols = line.split(',')
5457
users = users + [parse_user(line)] if cols[0] == 'user'
5558
sessions = sessions + [parse_session(line)] if cols[0] == 'session'
59+
file_progressbar.increment
5660
end
5761

5862
# Отчёт в json
@@ -96,11 +100,14 @@ def work
96100
# Статистика по пользователям
97101
users_objects = []
98102

103+
user_progressbar = ProgressBar.create(title: "Processing Users", total: users.count, format: '%t: |%B| %p%% %e')
104+
99105
users.each do |user|
100106
attributes = user
101107
user_sessions = sessions.select { |session| session['user_id'] == user['id'] }
102108
user_object = User.new(attributes: attributes, sessions: user_sessions)
103109
users_objects = users_objects + [user_object]
110+
user_progressbar.increment
104111
end
105112

106113
report['usersStats'] = {}

0 commit comments

Comments
 (0)