File tree Expand file tree Collapse file tree 1 file changed +7
-0
lines changed
Expand file tree Collapse file tree 1 file changed +7
-0
lines changed Original file line number Diff line number Diff line change 44require 'pry'
55require 'date'
66require 'minitest/autorun'
7+ require 'ruby-progressbar'
78
89class 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' ] = { }
You can’t perform that action at this time.
0 commit comments